Messages in this thread |  | | From | Armin Schindler <> | Subject | lock_kernel() in kernel thread | Date | Fri, 13 Oct 2000 09:43:58 +0200 |
| |
Hi,
I was wondering why it is necessary for the usb_hub_thread() in drivers/usb/hub.c to have the big kernel lock with lock_kernel() ?
What is it with lock_kernel() anyway ?
extern __inline__ void lock_kernel(void) { #if 1 if (!++current->lock_depth) spin_lock(&kernel_flag); #else __asm__ __volatile__( "incl %1\n\t" "jne 9f" spin_lock_string "\n9:" :"=m" (__dummy_lock(&kernel_flag)), "=m" (current->lock_depth)); #endif }
Can someone explain what is behind lock_kernel() and these changes (#if 1) in 2.4 ?
Is there any documentation for this out there ?
Thanks,
Armin - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |