Static instrumentation, was Re: RFC: klogger: kernel tracing and logging tool

From: Frank Ch. Eigler
Date: Wed Feb 22 2006 - 12:33:43 EST



Yoav Etsion <etsman@xxxxxxxxx> writes:

> [...] I've developed a kernel logging tool called
> Klogger: http://www.cs.huji.ac.il/~etsman/klogger
> In some senses, it is similar to the LTT [...]

It seems like several projects would benefit from markers being
inserted into key kernel code paths for purposes of tracing / probing.

Both LTTng and klogger have macros that expand to largish inline
function calls that appear to cause a noticeable amount of work even
for tracing requests are not actually active. (klogger munges
interrupts, gets timestamps, before ever testing whether logging was
requested; lttng similar; icache bloat in both cases.)

In other words, even in the inactive state, tracing markers like those
of klogger and ltt impose some performance disruption. Assuming that
detailed tracing / probing would be a useful facility to have
available, are there any other factors that block adoption of such
markers in official kernels? In other words, if they could go "fast
enough", especially in the inactive case, would you start placing them
into your code?


- FChE
-
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/