Alan Cox wrote:
> So with pre-empt this happens
> driver magic
> [large periods of time running other code]
> We get back and we've missed 300 packets, the serial port sharing
> the IRQ has dropped our internet connection completely.
But it shouldn't deadlock as Victor is suggesting.
> There are numerous other examples in the kernel tree where the current code
> knows that there is a small bounded time between two actions in kernel space
> that do not have a sleep. They are not spin locked, and putting spin locks
> everywhere will just trash performance. They are pure hardware interactions
> so you can't automatically detect them.
Why should spin locks trash perfomance, while an expensive disable_irq()
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/