linux/drivers/usb/serial
Andi Kleen 0daeed381c USB-BKL: Remove BKL use for usb serial driver probing
The usb serial driver initialization tried to use the BKL to stop
driver modules from unloading, but that didn't work anyways.

There was already some code to do proper try_module_get,
but it was conditional on having a new probe interface.
I checked all the low level drivers and they all have proper
.owner = THIS_MODULE, so it's ok to always use.

The other problem was the usb_serial_driver_list needing
protection by a lock. This was broken anyways because unregister
did not necessarily have the BKL.

I extended the extending table_lock mutex to protect this case too.

With these changes the BKL can be removed here.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-08-10 14:35:36 -07:00
..
ChangeLog.history trivial: Fix misspelling of firmware 2009-03-30 15:21:59 +02:00
Kconfig USB: usbserial: fix mos7720 dependencies 2010-05-20 13:21:39 -07:00
Makefile usb serial: Add generic USB wwan support 2010-05-20 13:21:37 -07:00
Makefile-keyspan_pda_fw
aircable.c USB: aircable: fix incorrect write-buffer length 2010-05-20 13:21:49 -07:00
ark3116.c USB: ark3116: reimplement read processing 2010-05-20 13:21:43 -07:00
belkin_sa.c USB: belkin_sa: implement line status handling 2010-05-20 13:21:48 -07:00
belkin_sa.h USB: belkin_sa.h: checkpatch cleanups 2010-05-20 13:21:46 -07:00
bus.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ch341.c USB: serial: refactor generic close 2010-05-20 13:21:33 -07:00
console.c usb-console: pass baud from console to the initial tty open 2010-05-20 13:21:32 -07:00
cp210x.c USB: CP210x New Device IDs 11 New device IDs 2010-05-20 13:21:48 -07:00
cyberjack.c USB: tty: Prune uses of tty_request_room in the USB layer 2010-03-02 14:55:12 -08:00
cypress_m8.c USB: cypress_m8: use kfifo to implement write buffering 2010-05-20 13:21:49 -07:00
cypress_m8.h USB: cypress_m8.h: checkpatch cleanups 2010-05-20 13:21:46 -07:00
digi_acceleport.c USB: serial: digi_acceleport: Eliminate a NULL pointer dereference 2010-06-04 13:16:19 -07:00
empeg.c USB: empeg: reimplement using generic framework 2010-05-20 13:21:48 -07:00
ezusb.c
ezusb_convert.pl
ftdi_sio.c USB: FTDI: Add support for the RT System VX-7 radio programming cable 2010-07-26 12:00:58 -07:00
ftdi_sio.h USB: ftdi_sio: checkpatch cleanups 2010-05-20 13:21:46 -07:00
ftdi_sio_ids.h USB: FTDI: Add support for the RT System VX-7 radio programming cable 2010-07-26 12:00:58 -07:00
funsoft.c USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
garmin_gps.c USB: tty: Prune uses of tty_request_room in the USB layer 2010-03-02 14:55:12 -08:00
generic.c USB: serial: add special case for processing of empty read urbs 2010-05-20 13:21:48 -07:00
hp4x.c USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
io_16654.h
io_edgeport.c USB: io_edgeport: Use kzalloc 2010-05-20 13:21:46 -07:00
io_edgeport.h USB: io_edgeport: checkpatch cleanups 2010-05-20 13:21:47 -07:00
io_ionsp.h USB: io_edgeport: checkpatch cleanups 2010-05-20 13:21:47 -07:00
io_tables.h USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
io_ti.c USB: io_ti: use kfifo to implement write buffering 2010-05-20 13:21:50 -07:00
io_ti.h USB: io_edgeport: checkpatch cleanups 2010-05-20 13:21:47 -07:00
io_usbvend.h USB: io_edgeport: checkpatch cleanups 2010-05-20 13:21:47 -07:00
ipaq.c Revert "USB: Adding support for HTC Smartphones to ipaq" 2010-08-10 14:35:35 -07:00
ipw.c USB: ipw: reimplement using generic framework 2010-05-20 13:21:46 -07:00
ir-usb.c USB: ir-usb: fix incorrect write-buffer length 2010-05-20 13:21:50 -07:00
iuu_phoenix.c USB: iuu_phoenix: Add support for different baud rates. 2010-08-10 14:35:34 -07:00
iuu_phoenix.h
keyspan.c USB: remove references to port->port.count from the serial drivers 2010-03-02 14:55:12 -08:00
keyspan.h USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
keyspan_pda.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 2010-03-03 08:48:58 -08:00
keyspan_usa26msg.h
keyspan_usa28msg.h
keyspan_usa49msg.h
keyspan_usa67msg.h
keyspan_usa90msg.h
kl5kusb105.c fix typos concerning "initiali[zs]e" 2010-06-16 18:05:05 +02:00
kl5kusb105.h USB: kl5kusb105.h: checkpatch cleanups 2010-05-20 13:21:47 -07:00
kobil_sct.c USB: kobil: fix memory leak 2010-05-20 13:21:47 -07:00
kobil_sct.h USB: kobil_sct.h: checkpatch cleanups 2010-05-20 13:21:47 -07:00
mct_u232.c USB: serial: refactor generic close 2010-05-20 13:21:33 -07:00
mct_u232.h USB: mct_u232.h: checkpatch cleanups 2010-05-20 13:21:46 -07:00
mos7720.c USB: usbserial: mos7720: cleanup, consolidation, replace send_mos_cmd with {read,write}_mos_reg 2010-05-20 13:21:39 -07:00
mos7840.c USB: mos7840: fix null-pointer dereference 2010-06-04 13:16:18 -07:00
moto_modem.c USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
navman.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
omninet.c USB: Convert concatenated __FILE__ to %s, __FILE__ 2010-03-02 14:54:59 -08:00
opticon.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
option.c USB: option: Remove duplicate AMOI_VENDOR_ID 2010-08-10 14:35:35 -07:00
oti6858.c USB: oti6858: use port write fifo 2010-05-20 13:21:49 -07:00
oti6858.h
pl2303.c USB: pl2303: use tty_insert_flip_string_fixed_flag 2010-05-20 13:21:44 -07:00
pl2303.h USB: pl2303.h: checkpatch cleanups 2010-05-20 13:21:47 -07:00
qcaux.c USB: qcaux: add Samsung U520 device ID 2010-05-20 13:21:40 -07:00
qcserial.c USB: New PIDs for Qualcomm gobi 2000 (qcserial) 2010-07-26 12:00:58 -07:00
safe_serial.c USB: safe_serial: straighten out read processing 2010-05-20 13:21:49 -07:00
siemens_mpi.c USB serial: make USB device id constant 2010-03-02 14:54:16 -08:00
sierra.c USB: Add PID for Sierra 250U to drivers/usb/serial/sierra.c 2010-07-26 12:00:57 -07:00
spcp8x5.c USB: spcp8x5: reimplement using generic framework 2010-05-20 13:21:48 -07:00
symbolserial.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ti_usb_3410_5052.c USB: ti_usb: use kfifo to implement write buffering 2010-05-20 13:21:50 -07:00
ti_usb_3410_5052.h USB: ti_usb_3410_5052: adding multitech dialup fax/modem devices 2010-04-22 15:18:20 -07:00
usb-serial.c USB-BKL: Remove BKL use for usb serial driver probing 2010-08-10 14:35:36 -07:00
usb-wwan.h usb serial: Add generic USB wwan support 2010-05-20 13:21:37 -07:00
usb_debug.c USB: usb_debug: set bulk out size at probe 2010-05-20 13:21:49 -07:00
usb_wwan.c usb serial: Add generic USB wwan support 2010-05-20 13:21:37 -07:00
visor.c USB: visor: increase bulk-out buffer size 2010-05-20 13:21:48 -07:00
visor.h USB: visor.h: checkpatch cleanups 2010-05-20 13:21:47 -07:00
vivopay-serial.c USB: serial: Add support for ViVOtech ViVOpay devices. 2010-03-02 14:54:57 -08:00
whiteheat.c USB: tty: sort out the request_room handling for whiteheat 2010-03-02 14:55:09 -08:00
whiteheat.h
zio.c USB Serial Driver: ZIO Motherboard 2010-05-20 13:21:32 -07:00