42.hyeyoo at gmail.com
Thu Apr 22 11:50:16 EDT 2021
I'm learning how spinlock works.
I think the main idea spinlock disables preemption is,
the other process that's spinning on the lock can acquire lock.
but in some implementations of spinlock, like qspinlock in x86 (or mcs lock),
I think there's no need to disable preemption. because processes
waiting for lock cannot acquire the lock before the lock holder hand
over to other process.
is enabling preemption in such spinlock a bad idea?
More information about the Kernelnewbies