Re: [PATCH] tracing: Add NOT to filtering logic

From: Steven Rostedt
Date: Tue Dec 02 2014 - 14:54:51 EST


On Tue, 2 Dec 2014 11:49:58 -0800
Alexei Starovoitov <ast@xxxxxxxxxxxx> wrote:

> On Tue, Dec 2, 2014 at 9:04 AM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> > \
> > - return match; \
> > + return match == !pred->not; \
>
> are you sure this one works for !(var & 2) ?
> 'not' is either 0 or 1, so it works for other macro:
> (val == *addr) ^ pred->not
>
> whereas here 'match' is 'int' and
> match = (*addr & val)
> will not be 0 or 1...
>
> the patch is small, but delicate...

Yeah, there's some more I'm fixing up on it. I only did some basic
tests. I should have tested '& 2' instead of '& 1' ;-)

I'll make that check: return !!match == !pred->not.


> In such cases I trust tests more than code review ;)
> Could you add few tests for this to
> CONFIG_FTRACE_STARTUP_TEST
> part of the file ?

No, but I will be adding tests to the ftracetests in
tools/testing/selftests to test the filters.

Thanks,

-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/