On Tuesday 20 May 2008, Jonathan Corbet wrote:Right, unless Alan or Wim are confident enough that removing the BKL won't break the drivers (more than they are today). Almost all of the open functions go along the lines of int open(struct file *f, struct inode *i) { if (wd_is_open) return -EBUSY; wd_is_open = 1; start_wd(); return nonseekable_open(f, i); } nonseekable_open doesn't need the BKL by itself, and the wd_is_open variable is protected by the misc_mtx mutex. I can't see any scenario in which start_wd() would need the BKL, or where a watchdog driver needs cycle_kernel_lock(), but I was't confident enough about that assessment, because I'm not really familiar with the drivers. I've done a semi-automated split and applied the patches on top of your tree. You can pull these from git://git.kernel.org/pub/scm/linux/kernel/git/arnd/cell-2.6 bkl-removal (I guess I should do a separate tree for it, will do that if more stuff comes up.) Arnd <>< --
| Andrew Morton | -mm merge plans for 2.6.23 |
| Rafael J. Wysocki | [Bug #11207] VolanoMark regression with 2.6.27-rc1 |
| Zhang, Yanmin | AIM7 40% regression with 2.6.26-rc1 |
| Con Kolivas | [PATCH][RSDL-mm 0/7] RSDL cpu scheduler for 2.6.21-rc3-mm2 |
git: | |
| Gregory Haskins | [RFC PATCH 03/17] vbus: add connection-client helper infrastructure |
| David Woodhouse | [PATCH 03/30] solos: FPGA and firmware update support. |
| Natalie Protasevich | [BUG] New Kernel Bugs |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
