linux/drivers/infiniband/ulp
Bart Van Assche 9dd69a600a IB/srp: Keep rport as long as the IB transport layer
Keep the rport data structure around after srp_remove_host() has
finished until cleanup of the IB transport layer has finished
completely. This is necessary because later patches use the rport
pointer inside the queuecommand callback. Without this patch
accessing the rport from inside a queuecommand callback is racy
because srp_remove_host() must be invoked before scsi_remove_host()
and because the queuecommand callback could get invoked after
srp_remove_host() has finished. In other words, without this patch
the queuecommand callback can get invoked after the rport data
structure has been freed.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Acked-by: David Dillow <dillowda@ornl.gov>
Signed-off-by: Roland Dreier <roland@purestorage.com>
2013-11-08 14:43:15 -08:00
..
ipoib IPoIB: Fix race in deleting ipoib_neigh entries 2013-08-13 11:57:37 -07:00
iser Main batch of InfiniBand/RDMA changes for 3.12 merge window: 2013-09-05 09:39:27 -07:00
isert iser-target: check device before dereferencing its variable 2013-10-23 21:42:33 -07:00
srp IB/srp: Keep rport as long as the IB transport layer 2013-11-08 14:43:15 -08:00
srpt ib_srpt: always set response for task management 2013-10-03 04:23:17 -07:00