android_kernel_motorola_sm6225/drivers/net/irda
Jean Tourrilhes 669d32a293 [IRDA]: irda-usb bug fixes
This patch fixes 2 bugs in the USB-IrDA code.

The first one is a buffer overrun in the RX path. We are now using
IRDA_SKB_MAX_MTU when initializing the Rx URB.

The second one is a potential stack recursion when unplugging the USB
dongle.  It seems that first we get the Rx URB with a generic error
code, and after a while the Rx URB comes again with a "disconnect"
error code.  Since we are resubmitting the Rx URB immediately after
receiving the first error one, we might enter an endless loop.

When getting an error Rx URB, the patch defers the Rx URB resubmitting
so that it gives us a chance to catch the disconnect one, in case the
dongle has juts been unplugged.

Tested against 2.6.16-rc2.

Patch from Jean Tourrilhes

Signed-off-by: Jean Tourrilhes <jt@hpl.hp.com>
Signed-off-by: Samuel Ortiz <samuel.ortiz@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-02-19 22:28:25 -08:00
..
act200l-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
act200l.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
actisys-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
actisys.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ali-ircc.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
ali-ircc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
au1k_ir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
au1000_ircc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
donauboe.c [IRDA] donauboe: locking fix 2005-11-08 09:41:13 -08:00
donauboe.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ep7211_ir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
esi-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
esi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
girbil-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
girbil.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irda-usb.c [IRDA]: irda-usb bug fixes 2006-02-19 22:28:25 -08:00
irda-usb.h [IRDA]: irda-usb bug fixes 2006-02-19 22:28:25 -08:00
irport.c [PATCH] drivers/net/irda/irport.c: cleanups 2006-01-10 08:01:55 -08:00
irport.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irtty-sir.c [PATCH] TTY layer buffering revamp 2006-01-10 08:01:59 -08:00
irtty-sir.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig [IRDA] DONGLE_OLD: remove dependency on non-existing symbol 2006-01-10 13:11:44 -08:00
litelink-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
litelink.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ma600-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ma600.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [IRDA]: kill drivers/net/irda/sir_core.c 2006-01-10 13:10:02 -08:00
mcp2120-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mcp2120.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
nsc-ircc.c [PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h 2005-11-13 18:14:10 -08:00
nsc-ircc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
old_belkin-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
old_belkin.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pxaficp_ir.c Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-10-31 07:32:56 -08:00
sa1100_ir.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
sir-dev.h [IRDA]: kill drivers/net/irda/sir_core.c 2006-01-10 13:10:02 -08:00
sir_dev.c [IRDA]: kill drivers/net/irda/sir_core.c 2006-01-10 13:10:02 -08:00
sir_dongle.c [IRDA]: kill drivers/net/irda/sir_core.c 2006-01-10 13:10:02 -08:00
sir_kthread.c [IRDA]: kill drivers/net/irda/sir_core.c 2006-01-10 13:10:02 -08:00
smsc-ircc2.c [DRIVER MODEL] Convert platform drivers to use struct platform_driver 2005-11-09 22:32:44 +00:00
smsc-ircc2.h [PATCH] smsc-ircc2: whitespace fixes 2005-09-07 16:57:57 -07:00
smsc-sio.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
stir4200.c [PATCH] USB: remove .owner field from struct usb_driver 2006-01-04 13:48:34 -08:00
tekram-sir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tekram.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
via-ircc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
via-ircc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vlsi_ir.c drivers/net: Remove pointless checks for NULL prior to calling kfree() 2005-10-28 16:53:13 -04:00
vlsi_ir.h [PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1 2006-01-08 20:14:07 -08:00
w83977af.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
w83977af_ir.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
w83977af_ir.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00