Messages in this thread |  | | | Date | Wed, 11 Jan 2012 15:15:54 +0900 | | From | Namhyung Kim <> | | Subject | Re: [PATCH RESEND 9/9] block, trace: implement ioblame - IO tracer with origin tracking |
| |
2012-01-11 10:32 AM, Tejun Heo wrote: > Implement ioblame, which can attribute each IO to its origin and > export the information using a tracepoint. > > Operations which may eventually cause IOs and IO operations themselves > are identified and tracked primarily by their stack traces along with > the task and the target file (dev:ino:gen). On each IO completion, > ioblame knows why that specific IO happened and exports the > information via ioblame:ioblame_io tracepoint. > > While ioblame adds fields to a few fs and block layer objects, all > logic is well insulated inside ioblame proper and all hooking goes > through well defined tracepoints and doesn't add any significant > maintenance overhead. > > For details, please read Documentation/trace/ioblame.txt. > > -v2: Namhyung pointed out that all the information available at IO > completion can be exported via tracepoint and letting userland do > whatever it wants to do with that would be better. Stripped out > in-kernel statistics gathering. > > Now that everything is exported through tracepoint, iolog and > counters_pipe[_pipe] are unnecessary. Removed. intents_bin too > is removed. > > As data collection no longer requires polling, ioblame/intents is > updated to generate inotify IN_MODIFY event after a new intent is > created. >
Hi Tejun,
How about adding another tracepoint for intent creation to provide raw data as well, somewhere in iob_get_intent() or iob_intent_create() maybe? It can be useful to get those data for further processing IMHO.
Thanks, Namhyung Kim
|  |