From: Mathieu Desnoyers on
* Steven Rostedt (rostedt(a)goodmis.org) wrote:
> From: Steven Rostedt <srostedt(a)redhat.com>
>
> The filter_active and enable both use an int (4 bytes each) to
> set a single flag. We can save 4 bytes per event by combining the
> two into a single integer.
>
> text data bss dec hex filename
> 5788186 1337252 9351592 16477030 fb6b66 vmlinux.orig
> 5761074 1262596 9351592 16375262 f9ddde vmlinux.id
> 5761007 1256916 9351592 16369515 f9c76b vmlinux.flags
>
> This gives us another 5K in savings.
>
> The modification of both the enable and filter fields are done
> under the event_mutex, so it is still safe to combine the two.
>
> Signed-off-by: Steven Rostedt <rostedt(a)goodmis.org>
> ---
[...]
> struct ftrace_event_call {
> struct list_head list;
> struct ftrace_event_class *class;
> @@ -154,8 +164,15 @@ struct ftrace_event_call {
> void *mod;
> void *data;
>
> - int enabled;
> - int filter_active;
> + /*
> + * 32 bit flags:
> + * bit 1: enabled
> + * bit 2: filter_active
> + *
> + * Must hold event_mutex to change.
> + */
> + unsigned int flags;
> +

I would also comment about flags read-side:

* Flags are read concurrently without locking.

Besides that minor nit, the whole patchset has my

Acked-by: Mathieu Desnoyers <mathieu.desnoyers(a)efficios.com>

Thanks!

Mathieu

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Mathieu Desnoyers on
* Steven Rostedt (rostedt(a)goodmis.org) wrote:
> On Mon, 2010-05-10 at 23:30 -0400, Mathieu Desnoyers wrote:
> > * Steven Rostedt (rostedt(a)goodmis.org) wrote:
> > > From: Steven Rostedt <srostedt(a)redhat.com>
> > >
> > > The filter_active and enable both use an int (4 bytes each) to
> > > set a single flag. We can save 4 bytes per event by combining the
> > > two into a single integer.
> > >
>
> > I would also comment about flags read-side:
> >
> > * Flags are read concurrently without locking.
>
> That can go in outside this patch set. As we discussed before, the
> filter_active which does the same today as flags does here also has the
> issue you are concerned with. IOW, this issue has nothing to do with
> this patch set, because the issue existed before the patch set and has
> not changed after the patch set.

That's fine with me.

>
> The comment should also be in Documentation, not here, since it would
> affect users more than the developers.

Typically, locking-related information belongs to comments close to the
definition. I'm not sure why you say it affects users at all.

Thanks,

Mathieu

>
> >
> > Besides that minor nit, the whole patchset has my
> >
> > Acked-by: Mathieu Desnoyers <mathieu.desnoyers(a)efficios.com>
>
> Thanks! I'll get an official release ready.
>
> -- Steve
>
>

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/