2007-06-18 04:57:39

by David Wilder

[permalink] [raw]
Subject: [RFC] Generic Trace Setup and Control (GTSC) kernel API (1/3)

Generic Trace Setup and Control (GTSC) kernel API.

This patch and the patches to follow create a kernel API that simplifies
the use of the relay subsystem. Any "relay" based tracing application has
a common set of operations that they must performed to setup and control its
relay channel(s). Block trace is an example of such an application.

The goal of GTSC is to simply abstract out this generic code from block
trace and make it available for other services to use. Doing so we can
reduce
the code in block trace as well as build a common trace control interface.

I am submitting 3 patches for review. The first is included in this email,
2 and 3 will follow in separate emails.

1/3 GTSC documentation patch. (gtsc-documentation.patch)
2/3 The GTSC code itself. (gtsc.patch)
3/3 Patches to convert blktrace to the new GTSC API.
(convert-blktrace-to-gtsc.patch, blktrace-gtsc-user.patch)

The documentation patch describes the API and includes a simple kernel
module
that demonstrates the GTSC.

I will be sending one additional patch not directly related to the
GTSC. This
patch fixes a bug in the relay read interface. I mention it here only
because
to make the GTSC example work properly you will need to apply this
patch. This
patch is named relay-file-read-start-pos-fix.patch.


--
David Wilder
IBM Linux Technology Center
Beaverton, Oregon, USA
[email protected]
(503)578-3789


Attachments:
gtsc-documentation.patch (8.80 kB)