Messages in this thread | | | Subject | Re: start_kernel(): bug: interrupts were enabled early | From | Benjamin Herrenschmidt <> | Date | Fri, 02 Apr 2010 10:00:21 +1100 |
| |
On Thu, 2010-04-01 at 12:06 +0100, David Howells wrote: > Can we provide a kmem_cache_create_early()? One that takes no locks and gets > cleaned up with the other __init stuff?
Yuck. I hate having to expose more APIs. Also the problem with that is means callers have to know. So we need to propagate up all call chains etc... (ie, radix_tree_init_early(), etc...)
This is pretty much exactly the discussion we had when moving sl*b early, and back then, the final word from Linus (heh, for once he agreed with me :-) was that this made no sense.
We can bury logic inside kmem_cache_create() though, it's not -that- a hot path.
Cheers, Ben.
| |