android_kernel_xiaomi_sm8350/drivers/infiniband/core
Or Gerlitz de910bd921 RDMA/cma: Simplify locking needed for serialization of callbacks
The RDMA CM has some logic in place to make sure that callbacks on a
given CM ID are delivered to the consumer in a serialized manner.
Specifically it has code to protect against a device removal racing
with a running callback function.

This patch simplifies this logic by using a mutex per ID instead of a
wait queue and atomic variable.  This means that cma_disable_remove()
now is more properly named to cma_disable_callback(), and
cma_enable_remove() can now be removed because it just would become a
trivial wrapper around mutex_unlock().

Signed-off-by: Or Gerlitz <ogerlitz@voltaire.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2008-07-14 23:48:53 -07:00
..
addr.c RDMA/addr: Keep pointer to netdevice in struct rdma_dev_addr 2008-07-14 23:48:53 -07:00
agent.c
agent.h RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
cache.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
cm_msgs.h
cm.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
cma.c RDMA/cma: Simplify locking needed for serialization of callbacks 2008-07-14 23:48:53 -07:00
core_priv.h RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
device.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
fmr_pool.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
iwcm.c
iwcm.h
mad_priv.h RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
mad_rmpp.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
mad_rmpp.h RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
mad.c IB/mad: Fix kernel crash when .process_mad() returns SUCCESS|CONSUMED 2008-05-23 10:52:59 -07:00
Makefile
multicast.c
packer.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
sa_query.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
sa.h
smi.c
smi.h
sysfs.c RDMA/core: Add iWARP protocol statistics attributes in sysfs 2008-07-14 23:48:48 -07:00
ucm.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
ucma.c infiniband-ucma: BKL pushdown 2008-06-20 14:05:57 -06:00
ud_header.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
umem.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
user_mad.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
uverbs_cmd.c RDMA/core: Add memory management extensions support 2008-07-14 23:48:45 -07:00
uverbs_main.c RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
uverbs_marshall.c
uverbs.h RDMA: Remove subversion $Id tags 2008-07-14 23:48:44 -07:00
verbs.c IB/core: Reset to error QP state transition is not allowed 2008-07-14 23:48:46 -07:00