1
0
Fork 0
alistair23-linux/drivers/uwb
Thomas Pugliese a899575191 USB: HWA: fix device probe failure
This patch fixes a race condition that caused the HWA_HC interface probe
function to occasionally fail.  The HWA_HC would attempt to register
itself with the HWA_RC by searching for a uwb_rc class device with the
same parent device ptr.  If the probe function for the HWA_RC interface
had yet to run, the uwb_rc class device would not have been created
causing the look up to fail and the HWA_HC probe function to return an
error causing the device to be unusable.

The fix is for the HWA to delay registering with the HWA_RC until
receiving the command from userspace to start the wireless channel.  It
is the responsibility of userspace to ensure that the uwb_rc class
device has been created before starting the HWA channel.

Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-06-24 16:20:43 -07:00
..
i1480 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-01-08 13:21:22 -08:00
Kconfig drivers/uwb: remove depends on CONFIG_EXPERIMENTAL 2012-11-15 17:39:03 -08:00
Makefile uwb: Remove the WLP subsystem and drivers 2010-10-25 14:03:45 +01:00
address.c uwb: use '%pM' format to print MAC address 2010-10-22 10:21:40 -07:00
allocator.c uwb: use for_each_clear_bit() 2012-03-23 16:58:34 -07:00
beacon.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
driver.c Fix common misspellings 2011-03-31 11:26:23 -03:00
drp-avail.c uwb: improved MAS allocator and reservation conflict handling 2008-12-12 13:00:06 +00:00
drp-ie.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
drp.c usb: uwb: use correct locking calls for rc data 2013-05-21 11:48:03 -07:00
est.c uwb: use %*ph specifier to dump buffer 2013-06-03 14:33:26 -07:00
hwa-rc.c UWB: HWA: add support for Alereon 5310 and 5611 devices 2013-06-06 13:11:14 -07:00
ie-rcv.c uwb: infrastructure for handling Relinquish Request IEs 2008-11-04 15:53:29 +00:00
ie.c uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:19 -04:00
lc-dev.c uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:19 -04:00
lc-rc.c driver-core: constify data for class_find_device() 2013-02-06 12:18:56 -08:00
neh.c uwb: fix use of del_timer_sync() in interrupt 2012-04-18 13:15:51 -07:00
pal.c USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
radio.c uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:19 -04:00
reset.c uwb: fix uwb_dev_unlock() missed at an error path in uwb_rc_cmd_async() 2012-11-26 15:58:43 -08:00
rsv.c usb: uwb: use correct locking calls for rc data 2013-05-21 11:48:03 -07:00
scan.c drivers/uwb: fix implicit use of stat.h 2011-10-31 19:32:18 -04:00
umc-bus.c umc-bus.c: fix usage of device_trylock 2012-10-25 11:39:31 -07:00
umc-dev.c uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:19 -04:00
umc-drv.c uwb: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:19 -04:00
uwb-debug.c simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
uwb-internal.h USB: HWA: fix device probe failure 2013-06-24 16:20:43 -07:00
uwbd.c uwb: Fix misspelling of neighbourhood in comment 2011-07-21 14:03:41 +02:00
whc-rc.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
whci.c uwb/whci: Use module_pci_driver to register driver 2013-05-21 11:48:03 -07:00