Hans Verkuil wrote: > On the DVB side there seem to be only two sources that use the BKL: > > linux/drivers/media/dvb/bt8xx/dst_ca.c: lock_kernel(); > linux/drivers/media/dvb/bt8xx/dst_ca.c: unlock_kernel(); This is from an incomplete conversion from .ioctl to .unlocked_ioctl (no conversion really, only a BKL push-down). > linux/drivers/media/dvb/dvb-core/dvbdev.c: lock_kernel(); > linux/drivers/media/dvb/dvb-core/dvbdev.c: unlock_kernel(); > linux/drivers/media/dvb/dvb-core/dvbdev.c: unlock_kernel(); This is from when the BKL was pushed down into drivers' open() methods. To remove BKL from open(), check for possible races with module insertion. (A driver's module_init has to have set up everything that's going to be used by open() before the char device is being registered.) Apart from those two BKL uses in media/dvb/, there are also - remaining .ioctl that need to be checked for possible concurrency issues, then converted to .unlocked_ioctl, - remaining .llseek uses (all implicit) which need to be checked whether they should be no_llseek() (accompanied by nonseekable_open) or generic_file_llseek() or default_llseek(). -- Stefan Richter -=====-==-=- -=-- ----= http://arcgraph.de/sr/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html