All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] trace: module: Maintain a valid user count
@ 2014-03-03 18:17 Romain Izard
  2014-03-03 18:33 ` Steven Rostedt
  0 siblings, 1 reply; 8+ messages in thread
From: Romain Izard @ 2014-03-03 18:17 UTC (permalink / raw)
  To: Steven Rostedt, Frederic Weisbecker, Ingo Molnar, linux-kernel
  Cc: Romain Izard

The replacement of the 'count' variable by two variables 'incs' and
'decs' to resolve some race conditions during module unloading was done
in parallel with some cleanup in the trace subsystem, and was integrated
as a merge.

Unfortunately, the formula for this replacement was wrong in the tracing
code, and the refcount in the traces was not usable as a result.

Use 'count = incs - decs' to compute the user count.

Signed-off-by: Romain Izard <romain.izard.pro@gmail.com>
---
 include/trace/events/module.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/trace/events/module.h b/include/trace/events/module.h
index 161932737416..1228d963b6d1 100644
--- a/include/trace/events/module.h
+++ b/include/trace/events/module.h
@@ -78,7 +78,8 @@ DECLARE_EVENT_CLASS(module_refcnt,
 
 	TP_fast_assign(
 		__entry->ip	= ip;
-		__entry->refcnt	= __this_cpu_read(mod->refptr->incs) + __this_cpu_read(mod->refptr->decs);
+		__entry->refcnt	= __this_cpu_read(mod->refptr->incs) -
+			__this_cpu_read(mod->refptr->decs);
 		__assign_str(name, mod->name);
 	),
 
-- 
1.8.3.2


^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-05-08  6:14 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-03 18:17 [PATCH] trace: module: Maintain a valid user count Romain Izard
2014-03-03 18:33 ` Steven Rostedt
2014-03-04  9:09   ` [PATCH v2] " Romain Izard
2014-03-06 17:34     ` Steven Rostedt
2014-05-07 10:19       ` Romain Izard
2014-05-07 19:23       ` Ingo Molnar
2014-05-07 19:41         ` Steven Rostedt
2014-05-08  6:14           ` Ingo Molnar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.