android_kernel_xiaomi_sm8350/drivers
Alan Stern 0a3c8549ea usb-serial: fix crash when sub-driver updates firmware
This patch (as1244) fixes a crash in usb-serial that occurs when a
sub-driver returns a positive value from its attach method, indicating
that new firmware was loaded and the device will disconnect and
reconnect.  The usb-serial core then skips the step of registering the
port devices; when the disconnect occurs, the attempt to unregister
the ports fails dramatically.

This problem shows up with Keyspan devices and it might affect others
as well.

When the attach method returns a positive value, the patch sets
num_ports to 0.  This tells usb_serial_disconnect() not to try
unregistering any of the ports; instead they are cleaned up by
destroy_serial().

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-05-28 13:54:43 -07:00
..
accessibility
acpi Merge branches 'release', 'bugzilla-13032', 'bugzilla-13041+', 'bugzilla-13121', 'bugzilla-13165', 'bugzilla-13243', 'bugzilla-13259', 'resume-sci-en-regression', 'thermal-regression', 'tsc-regression' and 'asus-2.6.30' into release 2009-05-16 01:55:59 -04:00
amba
ata libata: Media rotation rate and form factor heuristics 2009-05-15 14:14:56 -04:00
atm
auxdisplay
base PM: Do not hold dpm_list_mtx while disabling/enabling nonboot CPUs 2009-05-24 21:15:07 +02:00
block xen/blkfront: fix warning when deleting gendisk on unplug/shutdown 2009-05-19 08:27:42 +02:00
bluetooth
cdrom cdrom: beyond ARRAY_SIZE of viocd_diskinfo 2009-05-20 08:42:06 +02:00
char ipmi: fix ipmi_si modprobe hang 2009-05-22 07:30:41 -07:00
clocksource
connector
cpufreq [CPUFREQ] fix timer teardown in ondemand governor 2009-05-26 12:04:50 -04:00
cpuidle
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2009-05-17 15:48:05 -07:00
dca
dio
dma dma: fix ipu_idmac.c to not discard the last queued buffer 2009-05-12 14:41:48 -07:00
edac
eisa
firewire
firmware ibft: fix the display of a few fields in the NIC attribute structure in sysfs 2009-05-02 15:36:10 -07:00
gpio
gpu Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel 2009-05-26 14:48:36 -07:00
hid HID: add NOGET quirk for devices from CH Products 2009-05-11 17:09:21 +02:00
hwmon hwmon: (w83781d) Fix W83782D support (NULL pointer dereference) 2009-05-08 20:27:28 +02:00
i2c Merge branch 'i2c-for-2630-rc5' of git://aeryn.fluff.org.uk/bjdooks/linux 2009-05-12 11:21:51 -07:00
ide via82cxxx: Add VIA VX855 PCI Device ID 2009-05-22 16:23:39 +02:00
idle
ieee1394
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband 2009-05-13 16:31:12 -07:00
input [ARM] 5519/1: amba probe: pass "struct amba_id *" instead of void * 2009-05-20 23:26:51 +01:00
isdn gigaset: beyond ARRAY_SIZE of iwb->data 2009-05-21 15:04:15 -07:00
leds
lguest lguest: fix on Intel when KVM loaded (unhandled trap 13) 2009-05-26 12:13:11 -07:00
macintosh Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 2009-04-24 08:16:05 -07:00
mca
md md: raid5: change incorrect usage of 'min' macro to 'min_t' 2009-05-27 21:39:05 +10:00
media V4L/DVB (11680): cafe_ccic: use = instead of == for setting a value at a var 2009-05-09 18:54:32 -03:00
memstick
message
mfd mfd: pcf50633: fix unsafe disable_irq() 2009-05-19 22:22:28 +02:00
misc [SCSI] ses: fix problems caused by empty SES provided name 2009-05-15 12:20:57 -04:00
mmc [ARM] 5519/1: amba probe: pass "struct amba_id *" instead of void * 2009-05-20 23:26:51 +01:00
mtd mtd_dataflash: unbreak erase support 2009-05-18 08:36:21 -07:00
net Merge branch 'linux-2.6.30.y' of git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax 2009-05-25 22:56:11 -07:00
nubus
of
oprofile oprofile: fix cpu buffer size 2009-05-07 17:28:59 +02:00
parisc
parport
pci PCI PM: Fix initialization and kexec breakage for some devices 2009-05-19 15:26:07 -07:00
pcmcia [ARM] 5458/1: pcmcia: pxa2xx-sharpsl: check if we do have Scoop config 2009-04-23 23:25:40 +01:00
platform eeepc-laptop: unregister_rfkill_notifier on failure 2009-05-14 11:28:27 -04:00
pnp ACPI: suspend: don't let device _PS3 failure prevent suspend 2009-05-08 00:22:29 -04:00
power
ps3
rapidio
regulator regulator: da903x: add missing __devexit_p() 2009-05-18 11:21:10 +01:00
rtc [ARM] 5519/1: amba probe: pass "struct amba_id *" instead of void * 2009-05-20 23:26:51 +01:00
s390 [SCSI] zfcp: Fix oops when port disappears 2009-04-27 10:07:37 -05:00
sbus
scsi [SCSI] mpt2sas: fix driver version inconsistency 2009-05-18 14:17:17 -05:00
serial icom: fix rmmod crash 2009-05-22 21:47:52 -07:00
sh
sn
spi pxa2xx_spi: prevent panic case setup() fails 2009-05-12 14:11:34 -07:00
ssb
staging Staging: comedi: David doesn't want to get comedi patches 2009-05-08 19:39:28 -07:00
tc
telephony
thermal thermal: fix off-by-1 error in trip point trigger condition 2009-05-14 13:40:53 -04:00
uio
usb usb-serial: fix crash when sub-driver updates firmware 2009-05-28 13:54:43 -07:00
uwb
video video: stop sh_mobile_lcdcfb only if started 2009-05-22 13:19:15 +09:00
virtio
w1
watchdog [ARM] 5460/1: Orion: reduce namespace pollution 2009-04-23 23:25:41 +01:00
xen [IA64] xen_domu_defconfig: fix build issues/warnings 2009-05-05 11:43:13 -07:00
zorro
Kconfig
Makefile V4L/DVB (11561a): move media after i2c 2009-04-29 15:41:13 -03:00