lkml.org 
[lkml]   [2009]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [tip:perfcounters/core] x86: Add NMI types for kmap_atomic
From
Date
On Tue, 2009-06-16 at 10:13 +0200, Ingo Molnar wrote:

> > By removing the types it becomes very difficult to verify the max
> > depth. I really don't like removing them.
>
> The fact that it implies an atomic section pretty much limits its
> depth in practice, doesnt it?
>
> All we need to track in the debug code is
> max-{syscall,softirq,hardirq,nmi}. The sum of these 4 counts must be
> smaller than the max - even if (as you are right to point out) we
> dont hit that magic combo that truly maximizes the depth.

Right, so the thing I'd worry about is someone adding kmap_atomic() to
an interrupt context that didn't have interrupts disabled and then
managing to nest that a few times.

Suppose you put it in some IO completion handler, and someone has 4 IO
controllers installed and all 4 IO interrupts come in at the 'same'
time.

With types you could warn on similarly to what we do today, but with the
simple push/pop that might be a lot harder.

Anyway, with the whole cr2 fiddling bit being discussed this seems to
become redundant.

> And note that in practice many of the current types are exclusive to
> each other - so using the stack would _reduce_ the amount of
> kmap-atomic space we need.

Yeah, I did realize that.


\
 
 \ /
  Last update: 2009-06-17 09:47    [from the cache]
©2003-2011 Jasper Spaans