Messages in this thread | | | Date | Thu, 26 Oct 2006 08:13:48 -0400 | From | "Frank Ch. Eigler" <> | Subject | Re: [Patch 0/5] I/O statistics through request queues |
| |
Hi -
On Thu, Oct 26, 2006 at 01:07:53PM +0200, Martin Peschke wrote: > [...] > I suppose the marker approach will be adopted if jumping from a > marker to code hooked up there can be made fast and secure enough > for prominent architectures.
Agree, and I think we're not far. By "secure" you mean "robust" right?
> [...] > Dynamic instrumentation based on markers allows to grow code, > but it doesn't allow to grow data structure, AFAICS. > > Statistics might require temporary results to be stored per > entity.
The data can be kept in data structures private to the instrumentation module. Instead of growing the base structure, you have a lookup table indexed by a key of the base structure. In the lookup table, you store whatever you would need: timestamps, whatnot.
> The workaround would be to pass any intermediate result in the form > of a trace event up to user space and try to sort it out later - > which takes us back to the blktrace approach.
In systemtap, it is routine to store such intermediate data in kernel space, and process it into aggregate statistics on demand, still in kernel space. User space need only see finished results. This part is not complicated.
- FChE - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |