Thank you Mathieu!
I will make these changes and resubmit this one patch.

Cheers,
JP

-----Original Message-----
From: Mathieu Desnoyers [mailto:[email protected]] 
Sent: 13. marraskuuta 2013 16:05
To: Ikaheimonen, JP
Cc: [email protected]
Subject: Re: [lttng-dev] [PATCH lttng-ust 7/7] Add a check against excluders

----- Original Message -----
> From: "JP Ikaheimonen" <[email protected]>
> To: [email protected]
> Sent: Thursday, November 7, 2013 5:22:35 AM
> Subject: [lttng-dev] [PATCH lttng-ust 7/7] Add a check against 
> excluders
> 
> When matching enablers with events, first check against all excluders 
> of the enabler. If the event matches with any of the excluders, then 
> the event does not match with the enabler.
> 
> Signed-off-by: JP Ikaheimonen <[email protected]>
> ---
>  liblttng-ust/lttng-events.c | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
> 
> diff --git a/liblttng-ust/lttng-events.c b/liblttng-ust/lttng-events.c 
> index 915cffb..fa5596c 100644
> --- a/liblttng-ust/lttng-events.c
> +++ b/liblttng-ust/lttng-events.c
> @@ -491,6 +491,29 @@ static
>  int lttng_desc_match_enabler(const struct lttng_event_desc *desc,
>               struct lttng_enabler *enabler)
>  {
> +     struct lttng_ust_excluder_node *excluder;
> +
> +     /* If event matches with an excluder, return 'does not match' */
> +     cds_list_for_each_entry(excluder, &enabler->excluder_head, node) {
> +             int found = 0;

Why is "found" declared here ? Why is it initialized to 0 ?


> +             int count, len;
> +             char *excluder_name;
> +
> +             for (count = 0; count < excluder->excluder.count; count++) {

Rather than declared here ?


> +                     excluder_name = (char *)(excluder->excluder.names)
> +                                     + count * LTTNG_UST_SYM_NAME_LEN;
> +                     len = strnlen(excluder_name, LTTNG_UST_SYM_NAME_LEN);
> +                     if (len > 0 && excluder_name[len - 1] == '*') {
> +                             found = strncmp(desc->name, excluder_name, len 
> - 1);

strncmp and "found" have reversed logic. I'd assign found = !strncmp(....).

> +                     } else {
> +                             found = strncmp(desc->name, excluder_name,
> +                                             LTTNG_UST_SYM_NAME_LEN - 1);
> +                     }
> +                     if (!found) {

and reverse this condition.

The other patches in this patchset look good !! Good job !!

Thanks,

Mathieu

> +                             return 0;
> +                     }
> +             }
> +     }
>       switch (enabler->type) {
>       case LTTNG_ENABLER_WILDCARD:
>               return lttng_desc_match_wildcard_enabler(desc, enabler);
> --
> 1.8.1.2
> 
> 
> _______________________________________________
> lttng-dev mailing list
> [email protected]
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
> 

--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
_______________________________________________
lttng-dev mailing list
[email protected]
http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

Reply via email to