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

Reply via email to