Messages in this thread | ![/](/images/icornerl.gif) | | Subject | Re: [PATCH 2/2] perf,hw_breakpoint: Initialize hardware api earlier | From | Peter Zijlstra <> | Date | Sat, 13 Nov 2010 22:46:06 +0100 |
| |
On Sat, 2010-11-13 at 22:37 +0100, Frederic Weisbecker wrote: > From: Jason Wessel <jason.wessel@windriver.com> > > When using early debugging, the kernel does not initialize the > hw_breakpoint API early enough and causes the late initialization of > the kernel debugger to fail. The boot arguments are: > > earlyprintk=vga ekgdboc=kbd kgdbwait > > Then simply type "go" at the kdb prompt and boot. The kernel will > later emit the message: > > kgdb: Could not allocate hwbreakpoints > > And at that point the kernel debugger will cease to work correctly. > > The solution is to initialize the hw_breakpoint at the same time that > all the other perf call backs are initialized instead of using a > core_initcall() initialization which happens well after the kernel > debugger can make use of hardware breakpoints.
How early is it needed? I've got a patch converting the x86 (still need to do the other hardware pmus) to early_initcall() instead of random places in the arch bringup (notably before the perf core init).
| ![\](/images/icornerr.gif) |