aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Add a bunch of cycle_kernel_lock() callsJonathan Corbet2008-06-20
| | | | | | | | | All of the open() functions which don't need the BKL on their face may still depend on its acquisition to serialize opens against driver initialization. So make those functions acquire then release the BKL to be on the safe side. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* Add cycle_kernel_lock()Jonathan Corbet2008-06-20
| | | | | | | | | | | | A number of driver functions are so obviously trivial that they do not need the big kernel lock - at least not overtly. It turns out that the acquisition of the BKL in driver open() functions can perform a sort of poor-hacker's serialization function, delaying the open operation until the driver is certain to have completed its initialization. Add a simple cycle_kernel_lock() function for these cases to make it clear that there is no need to *hold* the BKL, just to be sure that we can acquire it. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* videodev: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | | Put explicit lock_kernel() calls into videodev_open(). That function itself seems OK, but one never knows about all the open() functions provided by underlying video drivers. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* usbdev: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit lock_kernel() calls to usbdev_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* USB Monitor: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit lock_kernel() calls to mon_bin_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* printer gadget: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit lock_kernel() calls to printer_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* adb: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | Put explicit lock_kernel() calls in adb_open(). The fact that adb_release() already has them suggests this is necessary. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* divamnt: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Put explicit lock_kernel() calls into maint_open(). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* CAPI: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Put explicit lock_kernel() calls into capi_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* changer: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | Add lock_kernel() calls to ch_open(), though the existing locking looks adequate. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* dpt_i20: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add lock_kernel() calls to adpt_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* videopix: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit lock_kernel() calls to vfc_open(). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* bpp: bkl pushdownJonathan Corbet2008-06-20
| | | | | | | Put explicit lock_kernel() calls into bpp_open(). It has locking, but I'm not convinced it won't race with ioctl(). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* phantom: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit lock_kernel calls to phantom_open(). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* infiniband: more BKL pushdownJonathan Corbet2008-06-20
| | | | | | Be extra-cautious and protect the remaining open() functions. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* dsp56k: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | | Put explicit lock_kernel calls into dsp56k_open(). [Stupid missing label error fixed] Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* raw: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | Put explicit lock_kernel() calls into raw_open(), even though the existing locking looks adequate. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* tlckl: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Put explicit lock_kernel calls into tlclk_open() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* xilinx icap: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | Add explicit lock_kernel() calls to hwicap_open() even though the existing locking looks adequate. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* vcs: BKL pushdownJonathan Corbet2008-06-20
| | | | | | Add explicit BKL to vcs_open(). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* spidev: BKL pushdownJonathan Corbet2008-06-20
| | | | | | | Add the BKL to spidev_open(), even though the existing locking looks adequate. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* Add "no BKL needed" comments to several driversJonathan Corbet2008-06-20
| | | | | | | | This documents the fact that somebody looked at the relevant open() functions and concluded that, due to their trivial nature, no locking was needed. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* tty: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Parts of the serial code actually BUG() if we don't do this.
* snsc: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* sound: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* fbmem: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* dvb: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* usbcore: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | | usb_open() is protected by a down_read(&minor_rwsem), but I'm not sure I trust it to protect everything including subsidiary open() functions. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* isdn: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* gdth: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* st: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* aacraid: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* osst: cdev lock_kernel() pushdown.Jonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* sg: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* ide-tape: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | ->release() already has explicit lock_kernel() calls... Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* phonedev: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | | phone_open() looks OK, but I don't trust the subsidiary drivers (and ixj in particular). Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* drm: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* lp: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* mbcs: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | This driver would appear to have no internal locking at all. Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* viotape: cdev lock_kernel pushdown ()Jonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* misc: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | | misc_open() looks fine, but who knows what all of the misc drivers are doing in their open() functions? Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* mem: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | | | | It's really hard to tell if this is necessary - lots of weird magic happens by way of map_devmem() Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* ipmi: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* UIO: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* Input: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* HID: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* UBI: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* mtdchar: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* paride: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>
* AoE: cdev lock_kernel() pushdownJonathan Corbet2008-06-20
| | | | Signed-off-by: Jonathan Corbet <corbet@lwn.net>