login
Header Space

 
 

Re: [announce] "kill the Big Kernel Lock (BKL)" tree

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Ingo Molnar <mingo@...>
Cc: <linux-kernel@...>, Andrew Morton <akpm@...>, Peter Zijlstra <a.p.zijlstra@...>, Thomas Gleixner <tglx@...>, Alan Cox <alan@...>, Alexander Viro <viro@...>
Date: Thursday, May 15, 2008 - 1:41 pm

So looking a bit more at your trivial fixups, I'd suggest strongly that 
they be re-organized a bit.

I cherry-picked your tty layer thing, because it was a real fix.

On Wed, 14 May 2008, Ingo Molnar wrote:

The above doesn't even work in general. It depends on having just a single 
level of locking, and is ugly to boot. So wow about we just expose some 
version of

	depth = release_kernel_lock()
	..
	reacquire_kernel_lock(depth);

to existing BKL users as a way to safely release and re-aquire it 
regardless of depth. That makes the code more generic, but it *also* makes 
it more readable than that "if (bkl) [un]lock_kernel()" sequence.


I think this one should be changed - that comment says "do not take", but 
in fact you still do take it, you just release it earlier. So we should 
just not start out with the kernel locked in the first place. The BKL 
doesn't do anything for the init sequence anyway, since all of this is for 
code that runs before there even are any other threads (not counting the 
idle thread).

I don't see anything in there that could *possibly* depend on the kernel 
lock, and if there is anything, it would need to be fixed anyway.


ACK. Code that relies on this is broken anyway. 

We used to have lots of "proc_create()" followed by setup code that could 
race with "proc_lookup()", but they were fundamentally racy anyway, so 
this should happen regardless of any other BKL removal.


See the above comment about "release/reaquire_kernel_lock()".


Same thing.


Same thing.


Same thing.


And obviously this one I'd never take. It would need to work with a 
working BKL implementation.

			Linus
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[announce] "kill the Big Kernel Lock (BKL)" tree, Ingo Molnar, (Wed May 14, 1:49 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Linus Torvalds, (Thu May 15, 1:41 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Arjan van de Ven, (Thu May 15, 4:27 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Peter Zijlstra, (Thu May 15, 4:45 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Arjan van de Ven, (Thu May 15, 5:22 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Linus Torvalds, (Wed May 14, 2:41 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Ingo Molnar, (Wed May 14, 3:41 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Frederik Deweerdt, (Wed May 14, 4:05 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 2:30 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 5:13 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, H. Peter Anvin, (Wed May 14, 5:16 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Linus Torvalds, (Wed May 14, 5:45 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 6:03 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Thu May 15, 10:27 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Fri May 16, 6:21 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Ingo Molnar, (Thu May 15, 4:02 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree , Jonathan Corbet, (Wed May 14, 5:45 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree , Jan Engelhardt, (Thu May 15, 4:44 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Diego Calleja, (Thu May 15, 10:54 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree , Linus Torvalds, (Wed May 14, 5:56 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree , Jonathan Corbet, (Wed May 14, 6:07 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree , Linus Torvalds, (Wed May 14, 6:14 pm)
[PATCH, RFC] char dev BKL pushdown , Jonathan Corbet, (Fri May 16, 11:44 am)
Re: [PATCH, RFC] char dev BKL pushdown , Linus Torvalds, (Sat May 17, 5:58 pm)
Re: [PATCH, RFC] char dev BKL pushdown , Jonathan Corbet, (Sun May 18, 4:07 pm)
Re: [PATCH, RFC] char dev BKL pushdown , Linus Torvalds, (Fri May 16, 12:30 pm)
Re: [PATCH, RFC] char dev BKL pushdown , Jonathan Corbet, (Fri May 16, 12:43 pm)
Re: [PATCH, RFC] char dev BKL pushdown, Arnd Bergmann, (Sat May 17, 5:15 pm)
Re: [PATCH, RFC] char dev BKL pushdown , Jonathan Corbet, (Sun May 18, 4:26 pm)
Re: [PATCH, RFC] char dev BKL pushdown, Arnd Bergmann, (Mon May 19, 7:07 pm)
Re: [PATCH, RFC] char dev BKL pushdown , Jonathan Corbet, (Tue May 20, 11:13 am)
Re: [PATCH, RFC] char dev BKL pushdown, Arnd Bergmann, (Tue May 20, 1:21 pm)
Re: [PATCH, RFC] char dev BKL pushdown, Alan Cox, (Tue May 20, 2:51 pm)
[PATCH 1/3, RFC] misc char dev BKL pushdown, Arnd Bergmann, (Mon May 19, 7:26 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown, Mike Frysinger, (Tue May 20, 7:01 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown , Jonathan Corbet, (Tue May 20, 7:25 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown, Mike Frysinger, (Wed May 21, 12:22 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown, Alan Cox, (Tue May 20, 4:46 am)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown, Mike Frysinger, (Mon May 19, 8:07 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown , Jonathan Corbet, (Mon May 19, 8:21 pm)
Re: [PATCH 1/3, RFC] misc char dev BKL pushdown, Mike Frysinger, (Mon May 19, 8:46 pm)
[PATCH 3/3, RFC] remove BKL from misc_open(), Arnd Bergmann, (Mon May 19, 7:34 pm)
Re: [PATCH, RFC] char dev BKL pushdown, Alan Cox, (Fri May 16, 12:22 pm)
Re: [PATCH, RFC] char dev BKL pushdown, Christoph Hellwig, (Fri May 16, 11:49 am)
[PATCH] kill empty chardev open/release methods, Christoph Hellwig, (Fri May 16, 12:03 pm)
Re: [PATCH] kill empty chardev open/release methods , Jonathan Corbet, (Sun May 18, 3:46 pm)
Re: [PATCH] kill empty chardev open/release methods, Alan Cox, (Fri May 16, 12:24 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 6:11 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Linus Torvalds, (Wed May 14, 6:16 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 6:21 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, John Stoffel, (Thu May 15, 11:05 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Thu May 15, 11:10 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, John Stoffel, (Thu May 15, 11:18 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Thu May 15, 11:45 am)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Kevin Winchester, (Fri May 16, 8:14 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Kevin Winchester, (Fri May 16, 8:37 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Linus Torvalds, (Wed May 14, 6:11 pm)
Re: [announce] "kill the Big Kernel Lock (BKL)" tree, Andi Kleen, (Wed May 14, 6:15 pm)
speck-geostationary