* Linus Torvalds <torvalds@linux-foundation.org> wrote:yeah. And Alan has a good point: there _is_ lots of magic stuff happening below the BKL. One of them are the BKL <-> other lock dependencies. My stuff helps with mapping that part of the magic: it turns the BKL into an ordinary mutex and thus integrates it into lockdep's existing dependency validation machinery. In other words: this stuff makes BKL validation _stronger_, not weaker, and hence it ultimately helps its mapping and elimination. It turns the "magic" into something more concrete. It might not help with other magic directly - but it helps indirectly, because now the "magic" has shrunk, so there's more attention and more resources available to fix it in the places where the magic hurts. (And suggestions are welcome for more debug helpers to make more magic more visible.) Whenever someone narrows the BKL's scope, that will always have to be done carefully - and that's true of any other lock. This patchset (except perhaps the boot bits) does not narrow the BKL's scope. It will still be no doubt a tough job (reducing/changing locking of _any_ locked path is a tough job), but it will now fit into our existing practices much better and we'll get various reminders from lockdep and the other debug helpers when we forgot about some detail. Before this there was almost zero feedback from the kernel when something around the BKL broke: pretty much the only remainder we had from incorrect BKL elimination were subtle breakages. And my personal experience might matter as well: before this i never dared to touch BKL code. I once removed _all_ BKL locking from all the kernel _by accident_ [i typoed a single line in lib/smp_lock.c] and ran it on my main desktop for about a day and never noticed a thing - until a few weird TTY messages popped up in the syslog... But with this scheme, i felt _much_ more secure about touching BKL code, and kicking the BKL from the scheduler was pure joy i have to say. (even though it will of course remain in the upstream scheduler until we are reasonably sure about the stability of this whole kill-the-BKL approach) I'm sure other subsystem maintainers will have a similar experience. Ingo --
| Andi Kleen | [PATCH] [16/22] x86: Move swsusp __pa() dependent code to arch portion |
| Nick Piggin | [patch 5/6] mm: merge nopfn into fault |
| Chuck Ebbert | Wanted: simple, safe x86 stack overflow detection |
| Balbir Singh | Re: 2.6.23-rc7-mm1 - 'touch' command causes Oops. |
git: | |
| Junio C Hamano | Re: [PATCH resend] make "git push" update origin and mirrors, "git push --mirror" ... |
| David Kastrup | Re: [OT] Re: C++ *for Git* |
| Bryan Donlan | [PATCH 0/8] Fix git's test suite to pass when the path contains spaces |
| Davide Libenzi | Re: First cut at git port to Cygwin |
| Khalid Schofield | Configuring sendmail openbsd 4.2 |
| Richard Stallman | Real men don't attack straw men |
| Jake Conk | Setting up ccd RAID 1 Howto OpenBSD 4.1 |
| Thilo Pfennig | OpenBSD project goals |
| Jim Winstead Jr. | Re: Root Disk/Book Disk Compatibility |
| Howard Wei-Hao Pan | [Q] Does Linux work with PCMCIA devices? |
| Curtis Yarvin | Re: Problem with UNCOMPRESS |
| Linus Benedict Torvalds | Re: trouble booting 0.11 (continued) |
