diff options
author | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-24 22:35:37 +0200 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2011-10-26 22:42:13 +0200 |
commit | 8cd79f24350826b81e16990d9e12bc878e67d385 (patch) | |
tree | 14421b42c8c7eeb566e5793c1dfd45d051cd74d6 /drivers/rapidio | |
parent | target: Fix compile warning w/ missing module.h include (diff) | |
download | linux-8cd79f24350826b81e16990d9e12bc878e67d385.tar.xz linux-8cd79f24350826b81e16990d9e12bc878e67d385.zip |
tcm_loop: Add explict read buffer memset for SCF_SCSI_CONTROL_SG_IO_CDB
This patch addresses an issue with buggy userspace code sending I/O
via scsi-generic that does not explictly clear their associated read
buffers. It adds an explict memset of the first SGL entry within
tcm_loop_new_cmd_map() for SCF_SCSI_CONTROL_SG_IO_CDB payloads that
are currently guaranteed to be a single SGL by target-core code.
This issue is a side effect of the v3.1-rc1 merge to remove the
extra memcpy between certain control CDB types using a contigious
+ cleared buffer in target-core, and performing a memcpy into the
SGL list within tcm_loop.
It was originally mainfesting itself by udev + scsi_id + scsi-generic
not properly setting up the expected /dev/disk/by-id/ symlinks because
the INQUIRY payload was containing extra bogus data preventing the
proper NAA IEEE WWN from being parsed by userspace.
Cc: Christoph Hellwig <hch@lst.de>
Cc: Andy Grover <agrover@redhat.com>
Cc: stable@kernel.org
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/rapidio')
0 files changed, 0 insertions, 0 deletions