[parisc-linux] Some progress with WAX_EISA (Who knows about int errupts?)

Matthew Wilcox matthew@wil.cx
Tue, 20 Feb 2001 10:32:19 -0700


On Tue, Feb 20, 2001 at 09:24:58AM -0800, Grant Grundler wrote:
> Well, I still don't see what nosync does on a single CPU system.

Nothing.  Look at the x86 code:

void disable_irq(unsigned int irq)
{
        disable_irq_nosync(irq);

        if (!local_irq_count(smp_processor_id())) {
                do {
                        barrier();
                } while (irq_desc[irq].status & IRQ_INPROGRESS);
        }
}

if you're in an irq on a UP machine, then local_irq_count will be >0,
so it'll do nothing.  if you're not in an irq, then IRQ_INPROGRESS
can't possibly be set.

-- 
Revolutions do not require corporate support.