Fix: enable event loglevel match function
authorDavid Goulet <dgoulet@efficios.com>
Fri, 22 Jun 2012 15:02:51 +0000 (11:02 -0400)
committerDavid Goulet <dgoulet@efficios.com>
Fri, 22 Jun 2012 15:08:40 +0000 (11:08 -0400)
For the loglevel type ALL, the value set in an event inside the session
daemon is -1 where the value received from the client is 0. For this
loglevel type, the loglevel does not matter.

This fixes the commit c0657016bbb98e1769edbaba8c00221f964c7402 done
before version 2.0.2.

(Closes #283 #287)

Signed-off-by: David Goulet <dgoulet@efficios.com>
src/bin/lttng-sessiond/event.c

index 4bc8fb90df81f6b722d5ef50d282a6c4cf15d597..24dd292a4e3fdd5f86e48cf0ae11762938766694 100644 (file)
@@ -51,6 +51,15 @@ static void init_syscalls_kernel_event(struct lttng_event *event)
 static int loglevel_match(struct ltt_ust_event *uevent,
                enum lttng_ust_loglevel_type log_type, int loglevel)
 {
+       /*
+        * For the loglevel type ALL, the loglevel is set to -1 but the event
+        * received by the session daemon is 0 which does not match the negative
+        * value in the existing event.
+        */
+       if (log_type == LTTNG_UST_LOGLEVEL_ALL) {
+               loglevel = -1;
+       }
+
        if (uevent == NULL || uevent->attr.loglevel_type != log_type ||
                        uevent->attr.loglevel != loglevel) {
                goto no_match;
This page took 0.034556 seconds and 4 git commands to generate.