linux/drivers/infiniband/ulp
Bart Van Assche 91439e675c IB/srp: Fix a sporadic crash triggered by cable pulling
commit 024ca90151 upstream.

Avoid that the loops that iterate over the request ring can encounter
a pointer to a SCSI command in req->scmnd that is no longer associated
with that request. If the function srp_unmap_data() is invoked twice
for a SCSI command that is not in flight then that would cause
ib_fmr_pool_unmap() to be invoked with an invalid pointer as argument,
resulting in a kernel oops.

Reported-by: Sagi Grimberg <sagig@mellanox.com>
Reference: http://thread.gmane.org/gmane.linux.drivers.rdma/19068/focus=19069
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2014-07-06 18:59:10 -07:00
..
ipoib Merge branches 'cma', 'cxgb4', 'flowsteer', 'ipoib', 'misc', 'mlx4', 'mlx5', 'ocrdma', 'qib', 'srp' and 'usnic' into for-next 2014-01-22 23:24:13 -08:00
iser libiscsi, iser: Adjust data_length to include protection information 2014-06-30 20:14:00 -07:00
isert Target/iscsi: Fix sendtargets response pdu for iser transport 2014-06-30 20:14:00 -07:00
srp IB/srp: Fix a sporadic crash triggered by cable pulling 2014-07-06 18:59:10 -07:00
srpt ib_srpt: Use correct ib_sg_dma primitives 2014-04-11 15:31:20 -07:00