<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/target, branch v3.13</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.13</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.13'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2013-12-19T08:18:54Z</updated>
<entry>
<title>target/file: Update hw_max_sectors based on current block_size</title>
<updated>2013-12-19T08:18:54Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-12-12T20:24:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=95cadace8f3959282e76ebf8b382bd0930807d2c'/>
<id>urn:sha1:95cadace8f3959282e76ebf8b382bd0930807d2c</id>
<content type='text'>
This patch allows FILEIO to update hw_max_sectors based on the current
max_bytes_per_io.  This is required because vfs_[writev,readv]() can accept
a maximum of 2048 iovecs per call, so the enforced hw_max_sectors really
needs to be calculated based on block_size.

This addresses a &gt;= v3.5 bug where block_size=512 was rejecting &gt; 1M
sized I/O requests, because FD_MAX_SECTORS was hardcoded to 2048 for
the block_size=4096 case.

(v2: Use max_bytes_per_io instead of -&gt;update_hw_max_sectors)

Reported-by: Henrik Goldman &lt;hg@x-formation.com&gt;
Cc: &lt;stable@vger.kernel.org&gt; #3.5+
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Remove write-only stats fields and lock from struct se_node_acl</title>
<updated>2013-12-11T18:59:45Z</updated>
<author>
<name>Roland Dreier</name>
<email>roland@purestorage.com</email>
</author>
<published>2013-11-23T18:35:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a51d5229d10dd3a337b674ce8603437d2996c5c3'/>
<id>urn:sha1:a51d5229d10dd3a337b674ce8603437d2996c5c3</id>
<content type='text'>
Commit 04f3b31bff72 ("iscsi-target: Convert iscsi_session statistics to
atomic_long_t") removed the updating of these fields in iscsi (the only
fabric driver that ever touched these counters), and the core has no way
to report or otherwise use the values.  Remove the last remnants of
these counters.

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_core_alua: Store supported ALUA states</title>
<updated>2013-11-20T19:26:37Z</updated>
<author>
<name>Hannes Reinecke</name>
<email>hare@suse.de</email>
</author>
<published>2013-11-19T08:07:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c0dc941e2bdfad4deccf3ba2626f485b5a5f59a4'/>
<id>urn:sha1:c0dc941e2bdfad4deccf3ba2626f485b5a5f59a4</id>
<content type='text'>
The supported ALUA states might be different for individual
devices, so store it in a separate field.

(nab: Remove unnecessary line continuation)

Signed-off-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target core: rename (ex,im)plict -&gt; (ex,im)plicit</title>
<updated>2013-11-20T19:24:40Z</updated>
<author>
<name>Hannes Reinecke</name>
<email>hare@suse.de</email>
</author>
<published>2013-11-19T08:07:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=125d0119d158180eb38580adfbc1a83d56120709'/>
<id>urn:sha1:125d0119d158180eb38580adfbc1a83d56120709</id>
<content type='text'>
Signed-off-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Convert se_device statistics to atomic_long_t</title>
<updated>2013-11-14T02:34:55Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-11-14T02:34:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ee480683d975973e3ff679850871e00e011c4a96'/>
<id>urn:sha1:ee480683d975973e3ff679850871e00e011c4a96</id>
<content type='text'>
This patch converts the handful of se_device statistics to type
atomic_long_t, instead of using se_device-&gt;stats_lock when
incrementing these values.

More importantly, go ahead and drop the spinlock usage within
transport_lookup_cmd_lun() fast-path code.

Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Pass through I/O topology for block backstores</title>
<updated>2013-11-12T21:44:54Z</updated>
<author>
<name>Andy Grover</name>
<email>agrover@redhat.com</email>
</author>
<published>2013-11-11T16:59:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7f7caf6aa74a4f4ad21ebe08bf23b594fce45ca7'/>
<id>urn:sha1:7f7caf6aa74a4f4ad21ebe08bf23b594fce45ca7</id>
<content type='text'>
In addition to block size (already implemented), passing through
alignment offset, logical-to-phys block exponent, I/O granularity and
optimal I/O length will allow initiators to properly handle layout on
LUNs with 4K block sizes.

Tested with various weird values via scsi_debug module.

One thing to look at with this patch is the new block limits values --
instead of granularity 1 optimal 8192, Lio will now be returning whatever
the block device says, which may affect performance.

Signed-off-by: Andy Grover &lt;agrover@redhat.com&gt;
Acked-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Add per device xcopy_lun for copy offload I/O</title>
<updated>2013-11-08T21:13:38Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-11-08T21:10:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4863e525659abbc903aacc67fd916f12914f6c1d'/>
<id>urn:sha1:4863e525659abbc903aacc67fd916f12914f6c1d</id>
<content type='text'>
This patch adds a se_device-&gt;xcopy_lun that is used for local
copy offload I/O, instead of allocating + initializing a pseudo
se_lun for each received EXTENDED_COPY operation.

Also, move declaration of struct se_lun + struct se_port_stat_grps
ahead of struct se_device.

Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Drop left-over se_lun-&gt;lun_cmd_list shutdown code</title>
<updated>2013-11-07T22:25:02Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-11-07T05:05:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4a9a6c8d538eff6d627fa14409c7c25aff652541'/>
<id>urn:sha1:4a9a6c8d538eff6d627fa14409c7c25aff652541</id>
<content type='text'>
Now with percpu refcounting for se_lun in place, go ahead and drop
the legacy per se_cmd accounting for se_lun shutdown.

This includes __transport_clear_lun_from_sessions(), the associated
transport_lun_wait_for_tasks() logic, along with a handful of now
unused se_cmd structure members and -&gt;transport_state bits.

Cc: Kent Overstreet &lt;kmo@daterainc.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Add percpu refcounting for se_lun access</title>
<updated>2013-11-07T22:24:52Z</updated>
<author>
<name>Nicholas Bellinger</name>
<email>nab@linux-iscsi.org</email>
</author>
<published>2013-11-07T05:03:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5277797dc4ed873d067477d84e910b39d113f649'/>
<id>urn:sha1:5277797dc4ed873d067477d84e910b39d113f649</id>
<content type='text'>
This patch adds percpu refcounting for se_lun access that allows the
association of an se_lun + se_cmd in transport_lookup_cmd_lun() to
occur without an extra list_head for tracking outstanding I/O during
se_lun shutdown.

This effectively changes se_lun shutdown logic to wait for outstanding
I/O percpu references to complete in transport_lun_remove_cmd() using
se_lun-&gt;lun_ref_comp, instead of explicitly draining the per se_lun
command list and waiting for individual se_cmd descriptor processing
to complete.

Cc: Kent Overstreet &lt;kmo@daterainc.com&gt;
Signed-off-by: Nicholas Bellinger &lt;nab@linux-iscsi.org&gt;
</content>
</entry>
<entry>
<title>target: Export symbol core_tpg_check_initiator_node_acl</title>
<updated>2013-10-24T04:30:07Z</updated>
<author>
<name>Thomas Glanzmann</name>
<email>thomas@glanzmann.de</email>
</author>
<published>2013-10-07T21:13:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b3fde035714b83ef7ddbbd5a520a2150d990349b'/>
<id>urn:sha1:b3fde035714b83ef7ddbbd5a520a2150d990349b</id>
<content type='text'>
Export symbol core_tpg_check_initiator_node_acl and move prototype from the
private drivers/target/target_core_internal.h to the public
include/target/target_core_fabric.h

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