Messages in this thread | | | Date | Tue, 17 Mar 2009 16:15:36 +0100 | From | Ingo Molnar <> | Subject | Re: [patch 1/5] x86, bts: detect size of DS fields |
| |
* Metzger, Markus T <markus.t.metzger@intel.com> wrote:
> >-----Original Message----- > >From: Metzger, Markus T > >Sent: Tuesday, March 17, 2009 1:58 PM > >To: Ingo Molnar > > > >>> I think I found the problem: > >>> ds_request_bts() needs to allocate a small amount of memory. > >>> It uses GFP_KERNEL. > >>> > >>> Hw-branch-tracer essentially does on_each_cpu(ds_request_bts()). > >>> > >>> Since ds_request_bts() is meant to be called on the cpu that > >>> should be traced, it should use GFP_ATOMIC to allow calls from > >>> smp_call_function() and friends. > >>> > >>> Would that be acceptable? > >> > >>That's not really a good solution - GFP_ATOMIC is not a reliable > >>form of allocation. > > That problem also is in the .29-rc version. > It affects the hw-branch-tracer. > The ptrace interface should not be affected. > > The changes I sketched below will be too intrusive. > Do you want a small patch that turns GFP_KERNEL into GFP_ATOMIC > for .29?
Yeah - but it will be for .29.1 - the hw-branch-tracer is off by default.
Ingo
| |