25 Mar, 2008
2 commits
-
As Paul pointed out, the ACCESS_ONCE are not needed because we already have
the explicit surrounding memory barriers.Signed-off-by: Mathieu Desnoyers
Cc: Christoph Hellwig
Cc: Mike Mason
Cc: Dipankar Sarma
Cc: David Smith
Cc: "Paul E. McKenney"
Cc: Steven Rostedt
Cc: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add comments requested by Andrew.
Updated comments about synchronize_sched(). Since we use call_rcu and
rcu_barrier now, these comments were out of sync with the code.Signed-off-by: Mathieu Desnoyers
Cc: Christoph Hellwig
Cc: Mike Mason
Cc: Dipankar Sarma
Cc: David Smith
Cc: "Paul E. McKenney"
Cc: Steven Rostedt
Cc: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
05 Mar, 2008
1 commit
-
get_marker() may return NULL, so test for it.
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Jesper Juhl
Acked-by: Mathieu Desnoyers
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
24 Feb, 2008
1 commit
-
char can be unsigned
kernel/marker.c:64:20: error: dubious one-bit signed bitfield
kernel/marker.c:65:14: error: dubious one-bit signed bitfieldSigned-off-by: Harvey Harrison
Acked-by: Mathieu Desnoyers
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
14 Feb, 2008
1 commit
-
RCU style multiple probes support for the Linux Kernel Markers. Common case
(one probe) is still fast and does not require dynamic allocation or a
supplementary pointer dereference on the fast path.- Move preempt disable from the marker site to the callback.
Since we now have an internal callback, move the preempt disable/enable to the
callback instead of the marker site.Since the callback change is done asynchronously (passing from a handler that
supports arguments to a handler that does not setup the arguments is no
arguments are passed), we can safely update it even if it is outside the
preempt disable section.- Move probe arm to probe connection. Now, a connected probe is automatically
armed.Remove MARK_MAX_FORMAT_LEN, unused.
This patch modifies the Linux Kernel Markers API : it removes the probe
"arm/disarm" and changes the probe function prototype : it now expects a
va_list * instead of a "...".If we want to have more than one probe connected to a marker at a given
time (LTTng, or blktrace, ssytemtap) then we need this patch. Without it,
connecting a second probe handler to a marker will fail.It allow us, for instance, to do interesting combinations :
Do standard tracing with LTTng and, eventually, to compute statistics
with SystemTAP, or to have a special trigger on an event that would call
a systemtap script which would stop flight recorder tracing.Signed-off-by: Mathieu Desnoyers
Cc: Christoph Hellwig
Cc: Mike Mason
Cc: Dipankar Sarma
Cc: David Smith
Cc: "Paul E. McKenney"
Cc: "Frank Ch. Eigler"
Cc: Steven Rostedt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
15 Nov, 2007
1 commit
-
Upon module load, we must take the markers mutex. It implies that the marker
mutex must be nested inside the module mutex.It implies changing the nesting order : now the marker mutex nests inside the
module mutex. Make the necessary changes to reverse the order in which the
mutexes are taken.Includes some cleanup from Dave Hansen .
Signed-off-by: Mathieu Desnoyers
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
20 Oct, 2007
1 commit
-
The marker activation functions sits in kernel/marker.c. A hash table is used
to keep track of the registered probes and armed markers, so the markers
within a newly loaded module that should be active can be activated at module
load time.marker_query has been removed. marker_get_first, marker_get_next and
marker_release should be used as iterators on the markers.[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Mathieu Desnoyers
Acked-by: "Frank Ch. Eigler"
Cc: Christoph Hellwig
Cc: Rusty Russell
Cc: Mike Mason
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds