Messages in this thread | | | From | "Manfred" <> | Subject | possible spinlock optimizations | Date | Tue, 28 Sep 1999 14:54:13 +0200 |
| |
I think there are 2 possible optimizations for spinlocks: 1) spin_lock_irq(): What about enabling interrupts while spinning? CPU1 owns the spinlock, ie it runs with disabled interrupts. Now CPU2 tries to acquire the spinlock, it fails and it starts to spin. - while spinning, there are no atomicity requirements. - it would improve the interrupt responsiveness. Currently, both CPU's are waiting/running with disabled interrupts. - the change only affects the "slow path", it doesn't slow down the normal case.
I'm only talking about spin_lock_irq(), obviously this is impossible for spin_lock_irqsave().
2) Have you read this note about W2K spinlock? http://www.numega.com/drivercentral/resources/spinlocks.shtml They claim their implementation has better SMP memory bus characteristics. Has anyone tried to implement something like this?
-- 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/
| |