<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/target, branch v3.12</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v3.12</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.12'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2013-10-25T17:42:09Z</updated>
<entry>
<title>target/pscsi: fix return value check</title>
<updated>2013-10-25T17:42:09Z</updated>
<author>
<name>Wei Yongjun</name>
<email>yongjun_wei@trendmicro.com.cn</email>
</author>
<published>2013-10-25T13:53:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=58932e96e438cd78f75e765d7b87ef39d3533d15'/>
<id>urn:sha1:58932e96e438cd78f75e765d7b87ef39d3533d15</id>
<content type='text'>
In case of error, the function scsi_host_lookup() returns NULL
pointer not ERR_PTR(). The IS_ERR() test in the return value check
should be replaced with NULL test.

Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Fail XCOPY for non matching source + destination block_size</title>
<updated>2013-10-24T07:28:52Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-24T07:27:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=48502ddbfb9840803f633ff81eee507e0fdae7c5'/>
<id>urn:sha1:48502ddbfb9840803f633ff81eee507e0fdae7c5</id>
<content type='text'>
This patch adds an explicit check + failure for XCOPY I/O to source +
destination devices with a non-matching block_size.

This limitiation is currently due to the fact that the scatterlist
memory allocated for the XCOPY READ operation is passed zero-copy
to the XCOPY WRITE operation.

Reported-by: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Reported-by: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Cc: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Cc: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Generate failure for XCOPY I/O with non-zero scsi_status</title>
<updated>2013-10-24T07:28:27Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-24T07:15:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8a955d6dcc1840fa9cba73eb6db831c8fea19d95'/>
<id>urn:sha1:8a955d6dcc1840fa9cba73eb6db831c8fea19d95</id>
<content type='text'>
This patch adds the missing non-zero se_cmd-&gt;scsi_status check required
for local XCOPY I/O within target_xcopy_issue_pt_cmd() to signal an
exception case failure.

This will trigger the generation of SAM_STAT_CHECK_CONDITION status
from within target_xcopy_do_work() process context code.

Reported-by: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Reported-by: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Cc: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Cc: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Add missing XCOPY I/O operation sense_buffer</title>
<updated>2013-10-24T07:28:08Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-24T07:10:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=366bda191c344ec4d7a5b908cf047bc09639ad3d'/>
<id>urn:sha1:366bda191c344ec4d7a5b908cf047bc09639ad3d</id>
<content type='text'>
This patch adds the missing xcopy_pt_cmd-&gt;sense_buffer[] required for
correctly handling CHECK_CONDITION exceptions within the locally
generated XCOPY I/O path.

Also update target_xcopy_read_source() + target_xcopy_setup_pt_cmd()
to pass this buffer into transport_init_se_cmd() to correctly setup
se_cmd-&gt;sense_buffer.

Reported-by: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Reported-by: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Cc: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Cc: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Return an error for WRITE SAME with ANCHOR==1</title>
<updated>2013-10-16T20:32:07Z</updated>
<author>
<name>Roland Dreier</name>
<email>roland@purestorage.com</email>
</author>
<published>2013-10-14T22:49:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5cb770bf4b777dae832151f4bc4d35e7a99f9880'/>
<id>urn:sha1:5cb770bf4b777dae832151f4bc4d35e7a99f9880</id>
<content type='text'>
Per SBC-3, since we report ANC_SUP==0 in VPD page B2h, we need to return
an error (ILLEGAL REQUEST/INVALID FIELD IN CDB) for all WRITE SAME
requests with ANCHOR==1.

Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Reject EXTENDED_COPY when emulate_3pc is disabled</title>
<updated>2013-10-09T08:54:44Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-08T01:05:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=acb3f2600eb8cdd35643a8b9237719ce61c98d41'/>
<id>urn:sha1:acb3f2600eb8cdd35643a8b9237719ce61c98d41</id>
<content type='text'>
This patch rejects EXTENDED_COPY when the emulate_3pc attribute has
been explicitly disabled for the receiving device.

It also adds a similar check in target_xcopy_locate_se_dev_e4() to
ignore these devices when doing a search based upon the identifier
WWN provided by EXTENDED_COPY parameter list target descriptors.

Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Allow non zero ListID in EXTENDED_COPY parameter list</title>
<updated>2013-10-09T08:54:43Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-07T22:22:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3f7a46c67440a7fa422919ab2059cbab838ca558'/>
<id>urn:sha1:3f7a46c67440a7fa422919ab2059cbab838ca558</id>
<content type='text'>
This patch changes target_do_xcopy() to allow processing of non-zero
ListIDs in EXTENDED_COPY parameter list data, instead of returning
CHECK_CONDITION status.

As the copy offload implementation reports SNLID=1 (Supports No ListID)
in OPERATING PARAMETERS, any ListID value presented by the client is
currently ignored.

Also, properly extract list_id_usage for informational purposes.

Reported-by: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Reported-by: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Cc: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Make target_do_xcopy failures return INVALID_PARAMETER_LIST</title>
<updated>2013-10-09T08:54:43Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-07T22:20:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=934a138e970e5af73d6f79469a1eb363572abbaa'/>
<id>urn:sha1:934a138e970e5af73d6f79469a1eb363572abbaa</id>
<content type='text'>
This patch changes target_do_xcopy() to properly return
TCM_INVALID_PARAMETER_LIST instead of TCM_INVALID_CDB_FIELD
for failures related to the EXTENDED_COPY parameter list parsing.

Also, move struct xcopy_op allocation ahead of kmapping to
handle the special TCM_OUT_OF_RESOURCES case.

Reported-by: Thomas Glanzmann &lt;thomas@glanzmann.de&gt;
Reported-by: Douglas Gilbert &lt;dgilbert@interlog.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>iscsi-target; Allow an extra tag_num / 2 number of percpu_ida tags</title>
<updated>2013-10-03T21:22:45Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-03T21:03:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9e20ae339721d614a1b0768c48bd73b456ff7905'/>
<id>urn:sha1:9e20ae339721d614a1b0768c48bd73b456ff7905</id>
<content type='text'>
This patch bumps the default number of tags allocated per session by
iscsi-target via transport_alloc_session_tags() -&gt; percpu_ida_init()
by another (tag_num / 2).

This is done to take into account the tags waiting to be acknowledged
and released in iscsit_ack_from_expstatsn(), but who's number are not
directly limited by the CmdSN Window queue_depth being enforced by
the target.

Using a larger value here is also useful to prevent percpu_ida_alloc()
from having to steal tags from other CPUs when no tags are available
on the local CPU, while waiting for unacknowledged tags to be released.

Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>iscsi-target: Perform release of acknowledged tags from RX context</title>
<updated>2013-10-03T21:22:45Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-10-03T20:56:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f56cbbb4b5871e5bc2838ddeeba5b29debc2a734'/>
<id>urn:sha1:f56cbbb4b5871e5bc2838ddeeba5b29debc2a734</id>
<content type='text'>
This patch converts iscsit_ack_from_expstatsn() to populate a local
ack_list of commands, and call iscsit_free_cmd() directly from RX
thread context, instead of using iscsit_add_cmd_to_immediate_queue()
to queue the acknowledged commands to be released from TX thread
context.

It is helpful to release the acknowledge commands as quickly as
possible, along with the associated percpu_ida tags, in order to
prevent percpu_ida_alloc() from having to steal tags from other
CPUs while waiting for iscsit_free_cmd() to happen from TX thread
context.

Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
</feed>
