From: Mathieu Desnoyers Date: Tue, 17 Nov 2015 19:29:08 +0000 (-0500) Subject: Fix: interruptible context: reversed logic X-Git-Tag: v2.8.0-rc1~57 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=ccecf3fb2d43968e97e4c57f13ac89d87db6dd8d;p=lttng-modules.git Fix: interruptible context: reversed logic Signed-off-by: Mathieu Desnoyers --- diff --git a/probes/lttng-events.h b/probes/lttng-events.h index 6d8c7113..ac56dd1f 100644 --- a/probes/lttng-events.h +++ b/probes/lttng-events.h @@ -905,7 +905,7 @@ static void __event_probe__##_name(void *__data, _proto) \ struct lttng_event *__event = __data; \ struct lttng_probe_ctx __lttng_probe_ctx = { \ .event = __event, \ - .interruptible = irqs_disabled(), \ + .interruptible = !irqs_disabled(), \ }; \ struct lttng_channel *__chan = __event->chan; \ struct lttng_session *__session = __chan->session; \ @@ -971,7 +971,7 @@ static void __event_probe__##_name(void *__data) \ struct lttng_event *__event = __data; \ struct lttng_probe_ctx __lttng_probe_ctx = { \ .event = __event, \ - .interruptible = irqs_disabled(), \ + .interruptible = !irqs_disabled(), \ }; \ struct lttng_channel *__chan = __event->chan; \ struct lttng_session *__session = __chan->session; \ diff --git a/probes/lttng-ftrace.c b/probes/lttng-ftrace.c index 090843c9..56cfa56a 100644 --- a/probes/lttng-ftrace.c +++ b/probes/lttng-ftrace.c @@ -45,7 +45,7 @@ void lttng_ftrace_handler(unsigned long ip, unsigned long parent_ip, void **data struct lttng_event *event = *data; struct lttng_probe_ctx lttng_probe_ctx = { .event = event, - .interruptible = irqs_disabled(), + .interruptible = !irqs_disabled(), }; struct lttng_channel *chan = event->chan; struct lib_ring_buffer_ctx ctx; diff --git a/probes/lttng-kprobes.c b/probes/lttng-kprobes.c index f4e4f2ea..c2547f0a 100644 --- a/probes/lttng-kprobes.c +++ b/probes/lttng-kprobes.c @@ -36,7 +36,7 @@ int lttng_kprobes_handler_pre(struct kprobe *p, struct pt_regs *regs) container_of(p, struct lttng_event, u.kprobe.kp); struct lttng_probe_ctx lttng_probe_ctx = { .event = event, - .interruptible = lttng_regs_irqs_disabled(regs), + .interruptible = !lttng_regs_irqs_disabled(regs), }; struct lttng_channel *chan = event->chan; struct lib_ring_buffer_ctx ctx; diff --git a/probes/lttng-kretprobes.c b/probes/lttng-kretprobes.c index eb3f6857..73f26565 100644 --- a/probes/lttng-kretprobes.c +++ b/probes/lttng-kretprobes.c @@ -1,5 +1,5 @@ /* - * probes/lttng-kretprobes.c +* probes/lttng-kretprobes.c * * LTTng kretprobes integration module. * @@ -53,7 +53,7 @@ int _lttng_kretprobes_handler(struct kretprobe_instance *krpi, lttng_krp->event[type]; struct lttng_probe_ctx lttng_probe_ctx = { .event = event, - .interruptible = lttng_regs_irqs_disabled(regs), + .interruptible = !lttng_regs_irqs_disabled(regs), }; struct lttng_channel *chan = event->chan; struct lib_ring_buffer_ctx ctx;