On Wed, Jun 24, 2015 at 03:59:20PM +0300, Matan Barak wrote: > From: Haggai Eran <[email protected]> > > Currently the RDMA subsystem's device list and client list are > protected by a single mutex. This prevents adding user-facing APIs > that iterate these lists, since using them may cause a deadlock. > The patch attempts to solve this problem by adding a read-write > semaphore to protect the lists. Readers now don't need the mutex, > and are safe just by read-locking the semaphore. > > The ib_register_device, ib_register_client, ib_unregister_device, and > ib_unregister_client functions are modified to lock the semaphore for > write during their respective list modification. Also, in order to > make sure client callbacks are called only between add() and remove() > calls, the code is changed to only add items to the lists after the > add() calls and remove from the lists before the remove() calls. > > Signed-off-by: Haggai Eran <[email protected]> > Signed-off-by: Matan Barak <[email protected]>
Looks OK Reviewed-By: Jason Gunthorpe <[email protected]> Jason -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
