Messages in this thread | | | Date | Mon, 27 Jul 2009 10:39:34 +0300 | From | Pekka Enberg <> | Subject | Re: slqb enables interrupts very early |
| |
Sebastian Andrzej Siewior wrote: > I've checkout slab-2.6/linux-next and noticed that the interrupts are > enabled very early by accident. Please look at the following call stack: > > start_kernel() > kmem_cache_init() > kmem_cache_open() > down_write(&slqb_lock); > __down_write() > __down_write_nested() > > Now, __down_write_nested() protects its internal structure the follwing > way: > spin_lock_irq(&sem->wait_lock); > ... > spin_unlock_irq(&sem->wait_lock); > > so once we return, we return with interrupts on.
Indeed. Nick, do we need to take ->slqb_lock in kmem_cache_open()? A quick read on the code suggests that we could just drop it.
Pekka
| |