Re: Q serial.c

Jonathan Lundell (jlundell@pobox.com)
Fri, 22 Jun 2001 08:23:08 -0700


At 9:51 AM -0400 2001-06-22, Stuart MacDonald wrote:
>From: "kees" <kees@schoen.nl>
>> What may happen on a SMP machine if a serial port has been closed and the
>> closing stage is at shutdown() in serial.c in the call to free_IRQ and
>> BEFORE the IRQ is really shutdown, a new character arrives which causes an
>> IRQ? Is it possible that the OTHER cpu takes this interrupt and causes a
>> crash?
>
>I'm looking at serial-5.05/serial.c. You'll notice at the
>beginning of shutdown the saveflags(); cli(); calls.
>This disables interrupts. The uart will not be able to
>generate IRQs even if new characters arrive.

The other CPU servicing the interrupt, was the question. cli()
doesn't affect that. This could presumably happen if shutdown() gets
run on a non-interrupt-servicing CPU, or if interrupts are
dynamically routed (eg round-robin).

Where can I find the 5.05 driver?

-- 
/Jonathan Lundell.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/