linux/net/irda
Olaf Kirch bfb6709d0b [IrDA]: Correctly handling socket error
This patch fixes an oops first reported in mid 2006 - see
http://lkml.org/lkml/2006/8/29/358 The cause of this bug report is that
when an error is signalled on the socket, irda_recvmsg_stream returns
without removing a local wait_queue variable from the socket's sk_sleep
queue. This causes havoc further down the road.

In response to this problem, a patch was made that invoked sock_orphan on
the socket when receiving a disconnect indication. This is not a good fix,
as this sets sk_sleep to NULL, causing applications sleeping in recvmsg
(and other places) to oops.

This is against the latest net-2.6 and should be considered for -stable
inclusion. 

Signed-off-by: Olaf Kirch <olaf.kirch@oracle.com>
Signed-off-by: Samuel Ortiz <samuel@sortiz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-04-18 15:07:22 -07:00
..
ircomm [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
irlan [PATCH] mark struct file_operations const 8 2007-02-12 09:48:46 -08:00
irnet [IrDA]: Calling ppp_unregister_channel() from process context 2007-03-20 00:09:42 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
af_irda.c [IrDA]: Correctly handling socket error 2007-04-18 15:07:22 -07:00
discovery.c [PATCH] mark struct file_operations const 7 2007-02-12 09:48:46 -08:00
irda_device.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
iriap.c [PATCH] mark struct file_operations const 8 2007-02-12 09:48:46 -08:00
iriap_event.c [IrDA]: Memory allocations cleanups 2006-09-28 18:02:48 -07:00
irias_object.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irlap.c [PATCH] mark struct file_operations const 8 2007-02-12 09:48:46 -08:00
irlap_event.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irlap_frame.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irlmp.c [PATCH] mark struct file_operations const 8 2007-02-12 09:48:46 -08:00
irlmp_event.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irlmp_frame.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irmod.c [IRDA] net/irda/: proper prototypes 2007-02-26 11:42:43 -08:00
irproc.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irqueue.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
irsysctl.c [PATCH] sysctl: remove insert_at_head from register_sysctl 2007-02-14 08:09:59 -08:00
irttp.c [IrDA]: irttp_dup spin_lock initialisation 2007-03-20 00:09:41 -07:00
parameters.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
qos.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
timer.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00
wrapper.c [NET] IRDA: Fix whitespace errors. 2007-02-10 23:19:47 -08:00