Am Mittwoch, 14. März 2007 22:21 schrieb Pete Zaitcev:
> On Wed, 14 Mar 2007 20:59:29 +0000, David Howells <[EMAIL PROTECTED]> wrote:
>
> > Oliver Neukum <[EMAIL PROTECTED]> wrote:
> >
> > > It is called in interrupt and uses no locking. What happens if the next
> > > irq is processed on another cpu? Is that cpu guaranteed to see the updates
> > > to the incremented variables?
> >
> > I thought that possibility was prevented by IRQ_INPROGRESS.
>
> As far as I can tell, Oliver is not talking about two CPUs executing
> the same IRQ handler simultaneously (even the same chain, actually).
> We know that it's impossible. I think he is concerned about CPU A
> executing an interrupt handler, its stores getting stuck in its store
> buffer or its write-back cache, the IRQ finished, IRQ get migrated
> to CPU B, CPU B taking next interrupt and seeing old RAM state.
Yes, exactly.
> I don't see this possible, because we take too many spinlocks
> when IRQ is processed and they definitely drain store buffers
> and caches. Not to mention the IRQ migration from A to B...
I am paranoid. But am I paranoid enough?
Regards
Oliver
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel