linux/drivers/infiniband/core
Sean Hefty 84ba284cd7 IB/cm: Flush workqueue when removing device
When a CM MAD is received, it is queued to a CM workqueue for
processing.  The queued work item references the port and device on
which the MAD was received.  If that device is removed from the system
before the work item can execute, the work item will reference freed
memory.

To fix this, flush the workqueue after unregistering to receive MAD,
and before the device is be freed.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2008-02-29 13:27:52 -08:00
..
addr.c [NETNS]: Add namespace parameter to ip_route_output_key. 2008-01-28 15:11:07 -08:00
agent.c IB/mad: agent_send_response() should be void 2007-08-03 10:45:17 -07:00
agent.h IB/mad: agent_send_response() should be void 2007-08-03 10:45:17 -07:00
cache.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
cm_msgs.h IB/cm: cm_msgs.h should include ib_cm.h 2007-07-10 21:50:53 -07:00
cm.c IB/cm: Flush workqueue when removing device 2008-02-29 13:27:52 -08:00
cma.c RDMA/cma: Do not issue MRA if user rejects connection request 2008-02-14 15:30:41 -08:00
core_priv.h
device.c IB: find_first_zero_bit() takes unsigned pointer 2007-10-09 19:59:04 -07:00
fmr_pool.c IB/fmr_pool: Allocate page list for pool FMRs only when caching enabled 2008-02-04 20:20:44 -08:00
iwcm.c PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
iwcm.h RDMA: iWARP Connection Manager. 2006-09-22 15:22:46 -07:00
mad_priv.h IB/mad: Report number of times a mad was retried 2008-01-25 14:15:30 -08:00
mad_rmpp.c IB/mad: Report number of times a mad was retried 2008-01-25 14:15:30 -08:00
mad_rmpp.h [IB] Fix MAD layer DMA mappings to avoid touching data buffer once mapped 2005-10-25 10:51:39 -07:00
mad.c IB/mad: Fix incorrect access to items on local_list 2008-01-25 14:15:31 -08:00
Makefile IB/uverbs: Export ib_umem_get()/ib_umem_release() to modules 2007-05-08 18:00:37 -07:00
multicast.c IB/multicast: Report errors on multicast groups if P_key changes 2008-01-25 14:15:29 -08:00
packer.c [PATCH] fix remaining missing includes 2005-11-07 07:53:41 -08:00
sa_query.c IB/sa: Add new QoS fields to path record 2007-10-09 19:59:12 -07:00
sa.h IB: Remove garbage non-ASCII characters from comments 2007-07-09 16:17:32 -07:00
smi.c IB/mad: Enhance SMI for switch support 2007-07-09 16:17:32 -07:00
smi.h IB/mad: Enable loopback of DR SMP responses from userspace 2008-01-25 14:15:25 -08:00
sysfs.c IB: Fix return value in ib_device_register_sysfs() 2008-02-15 15:05:05 -08:00
ucm.c IB/cm: Add basic performance counters 2008-01-25 14:15:30 -08:00
ucma.c RDMA/cma: add support for rdma_migrate_id() 2008-01-25 14:15:32 -08:00
ud_header.c [PATCH] fix remaining missing includes 2005-11-07 07:53:41 -08:00
umem.c SG: Change sg_set_page() to take length and offset argument 2007-10-24 11:20:47 +02:00
user_mad.c IB/umad: Simplify and fix locking 2008-01-25 14:15:42 -08:00
uverbs_cmd.c IB/uverbs: Fix checking of userspace object ownership 2007-10-19 20:01:43 -07:00
uverbs_main.c IB/uverbs: Make ib_uverbs_release_event_file() static 2007-10-09 19:59:15 -07:00
uverbs_marshall.c RDMA/cma: Export rdma cm interface to userspace 2006-12-12 11:50:22 -08:00
uverbs.h IB/uverbs: Make ib_uverbs_release_event_file() static 2007-10-09 19:59:15 -07:00
verbs.c IB: Add CQ comp_vector support 2007-05-06 21:18:11 -07:00