OpenCloudOS-Kernel/drivers/infiniband/hw
Arthur Jones 70c51da2c4 IB/ipath: Use counters in ipath_poll and cleanup interrupts in ipath_close
ipath_poll() suffered from a couple subtle bugs.  Under the right
conditions we could leave recv interrupts enabled on an ipath user
context on close, thereby taking potentially unwanted interrupts on the
next open -- this is fixed by unconditionally turning off recv
interrupts on close.  Also, we now use counters rather than set/clear
bits which allows us to make sure we catch all interrupts at the cost of
changing the semantics slightly (it's now give me all events since the
last time I called poll() rather than give me all events since I called
_this_ poll routine).  We also added some memory barriers which may help
ensure we get all notifications in a timely manner.

Signed-off-by: Arthur Jones <arthur.jones@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2007-10-09 20:56:23 -07:00
..
amso1100 RDMA/amso1100: Initialize the wait_queue_head_t in the c2_qp structure 2007-07-28 08:06:40 -07:00
cxgb3 RDMA/cxgb3: Make the iw_cxgb3 module parameters writable 2007-10-09 19:59:04 -07:00
ehca IB/ehca: Fix clipping of device limits to INT_MAX 2007-10-09 19:59:18 -07:00
ipath IB/ipath: Use counters in ipath_poll and cleanup interrupts in ipath_close 2007-10-09 20:56:23 -07:00
mlx4 IB/mlx4: Implement FMRs 2007-10-09 19:59:16 -07:00
mthca IB/mthca: Use mmiowb() to avoid firmware commands getting jumbled up 2007-10-09 19:59:17 -07:00