Re: new IRQ scalability changes in 2.3.48

From: Manfred Spraul (manfreds@colorfullife.com)
Date: Tue Mar 21 2000 - 19:29:17 EST


From: "Linus Torvalds" <torvalds@transmeta.com>
>
> spin_lock_irq(&io_request_lock);
> ...
> spin_unlock(&io_request_lock);
> ...
> __sti();
>
some callers of sleep_on() do that to reduce the race:

        spin_unlock(&io_request_lock);
<<<<<< wake-up could arrive.
        sleep_on(&wait_queue);
        spin_lock_irq(&io_request_lock);

Actually I would prefer if we could add a big assert to sleep_on() in
2.5.early:
sleep_on is a very simple function with a nice name, and thus many drivers
use it without proper locking [global_cli or lock_kernel].

--
    Manfred

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



This archive was generated by hypermail 2b29 : Thu Mar 23 2000 - 21:00:35 EST