Re: [Patch -tip 0/4] Creation of the initcall tracer

Previous thread: [patch] mm: pageable memory allocator (for DRM-GEM?) by Nick Piggin on Tuesday, September 23, 2008 - 2:10 am. (22 messages)

Next thread: [Patch -tip 1/4] Tracing/ftrace: Add the initcall tracer by Frédéric Weisbecker on Tuesday, September 23, 2008 - 3:32 am. (1 message)
From: Frédéric Weisbecker
Date: Tuesday, September 23, 2008 - 3:29 am

This patchset is about the initcall tracer requested by Ingo Molnar.
It is supposed to replace the printk involved during fastboot if the initcall_debug parameter has been selected.

Currently this tracer is a test. Its output is not yet adapted for scripts/bootgraph.pl which uses the old initcalls printk to produce a graph. But since this tracer will output sched_switch and stack_trace, we should first talk about the future output format of this tracer in sync with bootgraph.pl

It currently not uses the sched_switch and stack_trace tracers since related functions of insertion into the ring buffer perhaps need first to be moved on their own tracer file. But it have to be discussed.

Note that you need the initcall_debug to enable this tracer. When printk from initcall_debug will disappear, we could surely enable this tracer by default without this parameter.

Old printk have been kept for backward compatibility.

Please don't hesitate to give any comment.

Thanks.

Frédéric Weisbecker.
--

From: Ingo Molnar
Date: Tuesday, September 23, 2008 - 3:00 am

that was fast! :)

i've created a new -tip topic for your new tracer: tip/tracing/fastboot. 
That topic is based on the tip/tracing/ftrace + tip/fastboot trees.

Note that i've done a couple of small changes to your patches:

 - i've done the following renames:

      :1,$s/INITCALL_TRACER/BOOT_TRACER/g
      :1,$s/trace_initcall/trace_boot/g
      :1,$s/initcall_trace/boot_trace/g

   the reasoning: we eventually want to extend this new tracer to all 
   things "bootup delay", not just initcalls - hence calling it an
   'initcall tracer' would be too limiting.

   The goal is to help the Arjan's fastboot project to achieve 5 seconds 
   to-GUI bootup times like this:

      http://www.youtube.com/watch?v=s7NxCM8ryF8

   [ Even if you know what a 5 seconds bootup is, you've got to check 
     this "From Naught to Sixty in 5 seconds" video ;-) ]

 - there were a few overlong lines in the commit logs and in the Kconfig 
   desciption - i fixed them up. You should check your email client and 
   your editor for line length settings - currently you seem to have no
   line breaks at all.

 - I also corrected a few capitalization things in commit subject lines 
   and corrected a few minor coding style errors - you can avoid these 
   by running scripts/checkpatch.pl over your patches. Nothing overly
   serious - but you should diff against tip/master to see what the 

yes, it's necessary to keep that backwards compatibility.

i've integrated tip/tracing/fastboot into tip/master and have started 
testing it. It passed the basic tests already so i've just pushed out 
the new tip/master. Please double-check that i have not messed up the 
rename or the integration somewhere.

all in one, nice stuff!

	Ingo
--

From: Frédéric Weisbecker
Date: Tuesday, September 23, 2008 - 4:42 am

That will be a great day when I will be able to send a not line/space

Hmm I ran this script and it warned about a non conventional format
(%Lu instead of %llu). Since I picked it from the printk in main.c
I thought that was a false warning. Ok I will remember about correct

I can't test the master branch yet. But as far as I read the diff, it

Thanks Ingo :)
I will improve it as I can...
--

From: Ingo Molnar
Date: Tuesday, September 23, 2008 - 12:31 pm

FYI, -tip testing found a boot hang with CONFIG_BOOT_TRACER=y, on a 
32-bit T60 laptop. I've attached the config that provokes the hang. (you 
need initcall_debug on the boot commandline)

The hang always happens after a specific initcall, shortly after tracing 
is enabled. It just hangs indefinitely there, the last line displayed 
was:

 [   0.004017] initcall ehci_hcd_init+0x0/0x80 returned 0 after 228 msecs

it should have printed this next:

[    0.808024] calling  ohci_hcd_mod_init+0x0/0x80 @ 10

but that line is never printed.

i've bisected the hang down to this specific commit:

 | 35df98dfe2b2503436a8cfda301657810df50a3a is first bad commit
 | commit 35df98dfe2b2503436a8cfda301657810df50a3a
 | Author: Fr
From: Frédéric Weisbecker
Date: Wednesday, September 24, 2008 - 2:36 am

Ingo Molnar a 
From: Ingo Molnar
Date: Wednesday, September 24, 2008 - 1:58 am

applied to tip/tracing/fastboot, thanks Frédéric!

	Ingo
--

Previous thread: [patch] mm: pageable memory allocator (for DRM-GEM?) by Nick Piggin on Tuesday, September 23, 2008 - 2:10 am. (22 messages)

Next thread: [Patch -tip 1/4] Tracing/ftrace: Add the initcall tracer by Frédéric Weisbecker on Tuesday, September 23, 2008 - 3:32 am. (1 message)