On Wednesday 14 October 2009, Thomas Gleixner wrote: > on Wed, 14 Oct 2009, Alan Cox wrote: > > You can't simply assume the mutex is enough - you have to either push it > > down or review *every* possible called point below the lock_kernel take. > > > > In this case the open method of the misc devices below sometimes uses the > > BKL. > > The BKL got pushed down into the open methods of misc dev users and we > do not need to take it twice in a row, right ? > I worked on the original pushdown back then and believed it to be complete. New drivers have come in and some obviously unneeded instances got cleared of the BKL usage. The ones with an open method that does not take the BKL are: arch/mips/basler/excite/excite_iodev.c arch/x86/kernel/apm_32.c drivers/buetooth/hci_vhci.c drivers/char/nvram.c drivers/char/rtc.c drivers/gpu/vga/vgaarb.c drivers/hwmon/fschmd.c drivers/hwmon/lis3lv02d.c drivers/infiniband/core/ucma.c drivers/isdn/mISDN/timerdev.c drivers/s390/char/vmcp.c fs/cachefiles/daemon.c fs/dlm/user.c fs/fuse/cuse.c kernel/power/user.c net/rfkill/core.c As well as some drivers from staging and watchdog. I believe the BKL usage in watchdog drivers was removed shortly after the pushdown. Arnd <>< drivers/staging/android/binder.c drivers/staging/dream/qdsp5/audio_aac.c drivers/staging/dream/qdsp5/audio_evrc.c drivers/staging/dream/qdsp5/audio_in.c drivers/staging/dream/qdsp5/audio_out.c drivers/staging/dream/qdsp5/snd.c drivers/staging/dream/smd/smd_qmi.c drivers/staging/panel/panel.c drivers/watchdog/acquirewdt.c drivers/watchdog/adx_wdt.c drivers/watchdog/alim7101_wdt.c drivers/watchdog/at32ap700x_wdt.c drivers/watchdog/at91sam9_wdt.c drivers/watchdog/fin_wdt.c drivers/watchdog/coh901327_wdt.c drivers/watchdog/ep93xx_wdt.c drivers/watchdog/gef_wdt.c drivers/watchdog/geodewdt.c drivers/watchdog/i6300esb.c drivers/watchdog/b700wwdt.c drivers/watchdog/ibmasr.c drivers/watchdog/iop_wdt.c drivers/watchdog/it8_wdt.c drivers/watchdog/ixp4xx_wdt.c drivers/watchdog/machzwd.c drivers/watchdog/mpc5200_wdt.c drivers/watchdog/mpcore_wdt.c drivers/watchdog/mv64x60_wdt.c drivers/watchdog/omap_wdt.c drivers/watchdog/pc87413_wdt.c drivers/watchdog/pcwd.c drivers/watchdog/pcwd_pci.c drivers/watchdog/pcwd_usb.c drivers/watchdog/pnx4008_wdt.c drivers/watchdog/rc32434_wdt.c drivers/watchdog/s3c2410_wdt.c drivers/watchdog/sb_wdog.c drivers/watchdog/sbc7240_wdt.c drivers/watchdog/sbc_epx_c3.c drivers/watchdog/c1200wdt.c drivers/watchdog/sch311x_wdt.c drivers/watchdog/shwdt.c drivers/watchdog/smsc37b787_wdt.c drivers/watchdog/stmp3xxx_wdt.c drivers/watchdog/txx9wdt.c drivers/watchdog/w83697hf_wdt.c drivers/watchdog/w83877f_wdt.c drivers/watchdog/wafer5823wdt.c drivers/watchdog/wdrtas.c drivers/watchdog/wdt.c drivers/watchdog/wdt977.c drivers/watchdog/wdt_pci.c drivers/watchdog/wm8350_wdt.c -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html