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
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to