<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/trace/events/module.h, branch v2.6.34</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.34</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.34'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2009-11-26T08:14:02Z</updated>
<entry>
<title>tracing: Convert module refcnt events to DEFINE_EVENT</title>
<updated>2009-11-26T08:14:02Z</updated>
<author>
<name>Li Zefan</name>
<email>lizf@cn.fujitsu.com</email>
</author>
<published>2009-11-26T07:03:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=925684d6d589e40e41007edf47c69e729d911263'/>
<id>urn:sha1:925684d6d589e40e41007edf47c69e729d911263</id>
<content type='text'>
Use DECLARE_EVENT_CLASS to remove duplicate code:

   text    data     bss     dec     hex filename
  29854    1980     128   31962    7cda kernel/module.o.old
  28750    1980     128   30858    788a kernel/module.o

Two events are converted:

  module_refcnt: module_get, module_put

No change in functionality.

Signed-off-by: Li Zefan &lt;lizf@cn.fujitsu.com&gt;
Cc: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
LKML-Reference: &lt;4B0E283B.3010508@cn.fujitsu.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>tracing/events: Add module tracepoints</title>
<updated>2009-08-17T09:25:08Z</updated>
<author>
<name>Li Zefan</name>
<email>lizf@cn.fujitsu.com</email>
</author>
<published>2009-08-17T08:56:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7ead8b8313d92b3a69a1a61b0dcbc4cd66c960dc'/>
<id>urn:sha1:7ead8b8313d92b3a69a1a61b0dcbc4cd66c960dc</id>
<content type='text'>
Add trace points to trace module_load, module_free, module_get,
module_put and module_request, and use trace_event facility to
get the trace output.

Here's the sample output:

     TASK-PID    CPU#    TIMESTAMP  FUNCTION
        | |       |          |         |
    &lt;...&gt;-42    [000]     1.758380: module_request: fb0 wait=1 call_site=fb_open
    ...
    &lt;...&gt;-60    [000]     3.269403: module_load: scsi_wait_scan
    &lt;...&gt;-60    [000]     3.269432: module_put: scsi_wait_scan call_site=sys_init_module refcnt=0
    &lt;...&gt;-61    [001]     3.273168: module_free: scsi_wait_scan
    ...
    &lt;...&gt;-1021  [000]    13.836081: module_load: sunrpc
    &lt;...&gt;-1021  [000]    13.840589: module_put: sunrpc call_site=sys_init_module refcnt=-1
    &lt;...&gt;-1027  [000]    13.848098: module_get: sunrpc call_site=try_module_get refcnt=0
    &lt;...&gt;-1027  [000]    13.848308: module_get: sunrpc call_site=get_filesystem refcnt=1
    &lt;...&gt;-1027  [000]    13.848692: module_put: sunrpc call_site=put_filesystem refcnt=0
    ...
 modprobe-2587  [001]  1088.437213: module_load: trace_events_sample F
 modprobe-2587  [001]  1088.437786: module_put: trace_events_sample call_site=sys_init_module refcnt=0

Note:

- the taints flag can be 'F', 'C' and/or 'P' if mod-&gt;taints != 0

- the module refcnt is percpu, so it can be negative in a
  specific cpu

Signed-off-by: Li Zefan &lt;lizf@cn.fujitsu.com&gt;
Acked-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
LKML-Reference: &lt;4A891B3C.5030608@cn.fujitsu.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
</feed>
