Re: [PATCH] markers-linker-generic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jim Keniston wrote:

On Wed, 2007-04-11 at 15:21 -0400, Mathieu Desnoyers wrote:
* Andrew Morton ([email protected]) wrote:
On Wed, 11 Apr 2007 13:51:11 -0400
Mathieu Desnoyers <[email protected]> wrote:

What's this marker stuff about?

Hi Russel,

Here is an overview :
I am told that the systemtap developers plan to (or are) using this
infrastructure.

Quoting Frank Ch. Eigler, from the SystemTAP team :

"The LTTng user-space programs use it today.  Systemtap used to support
the earlier marker prototype and will be rapidly ported over to this
new API upon acceptance."


If correct: what is their reason for preferring it over kprobes?
Markers are not a substitute or preference over kprobes, they augment kprobes by enabling additional functionality.

I will let them answer on this one..


I'll take a shot at this one.

First of all, kprobes remains a vital foundation for SystemTap.  But
markers are attactive as an alternate source of trace/debug info.
Here's why:

1. Markers will live in the kernel and presumably be kept up to date by
the maintainers of the enclosing code.  We have a growing set of tapsets
(probe libraries), each of which "knows" the source code for a certain
area of the kernel.  Whenever the underlying kernel code changes (e.g.,
a function or one of its args disappears or is renamed), there's a
chance that the tapset will become invalid until we bring it back in
sync with the kernel.  As you can imagine, maintaining tapsets separate
from the kernel source is a maintenance headache.  Markers could
mitigate this.
Jim's above stated reason is not a consideration for markers. We don't plan to convert the current tapsets to use markers. We do need to augment tapsets with a few markers in the kernel code where it is not easy to put a kprobe in a maintainable fashion -- e.g in the middle of a function.

2. Because the kernel code is highly optimized, the kernel's dwarf info
doesn't always accurately reflect which variables have which values on
which lines (sometimes even upon entry to a function).  A marker is a
way to ensure that values of interest are available to SystemTap at
marked points.
Agreed

3. Sometimes the overhead of a kprobe probepoint is too much (either in
terms of time or locking) for the particular hotspot we want to probe.

Agreed

Jim

bye,
Vara Prasad

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux