Re: [RFC PATCH 1/2] Marker probes in futex.c

From: Ingo Molnar
Date: Tue Apr 15 2008 - 12:49:23 EST



* Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxx> wrote:

> Now for some performance impact :

absent from your figures is dyn-ftrace :-)

dyn-ftrace is a young but rather nifty tool that extends on old-style
static tracepoints rather forcefully, by adding 75,000+ tracepoints to
the kernel here and now, with no in-source maintainence overhead at all.
(It's a nice add-on to SystemTap because it adds space for a jprobe, but
i digress ;-)

anyway, my objections against markers would be reduced quite
significantly, if we were able to improve the immediate values
optimization to not actually patch the MOV's constant portion, but to
just patch both the MOV and the branch instruction, into two NOPs.

in fact, we can do even better: we should turn the immediate values
optimization into a simple "patch out a jump to the slowpath"
optimization. I.e. just a single instruction to patch in and out. (and
that makes the NMI impact all that easier to handle as well)

That would pretty much meet my "the typical trace point should have the
cost of a single NOP" threshold for fastpath tracing overhead, which
i've been repeating for 2 years now, and which would make the scheduler
markers a lot more palatable ;-)

hm?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/