All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@linux.intel.com>
To: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Sarah Sharp <sarah.a.sharp@linux.intel.com>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	linux-usb@vger.kernel.org, linux-scsi@vger.kernel.org,
	USB Storage List <usb-storage@lists.one-eyed-alien.net>
Subject: Re: [usb-storage] Re: Make UAS work on HS for devices with and without command tagging support
Date: Mon, 19 Dec 2011 13:36:33 -0500	[thread overview]
Message-ID: <20111219183633.GP14291@linux.intel.com> (raw)
In-Reply-To: <1324314850.5123.12.camel@dabdike.int.hansenpartnership.com>

On Mon, Dec 19, 2011 at 11:14:10AM -0600, James Bottomley wrote:
> On Mon, 2011-12-19 at 11:12 -0500, Matthew Wilcox wrote:
> > By the way, the same verbiage about tags being shared across LUNs is also
> > present in the SAS spec (and various other specs last time I looked,
> > which wasn't recently).
> 
> I don't think so: The SAS spec still (as of 2.1) has the nexus being
> I_T_L_Q.  That means a unique combination of initiator port, target
> port, lun and tag identify a nexus.  To have the nexus be blind to the
> Lun (i.e. tags shared across LUNs) it would have to be identified by
> I_T_Q, which I haven't actually seen in any standard.

sas2r14:

10.2.3 Device server error handling
If the SCSI target device performs tag checking and an SSP target port calls SCSI Command Received () with
a tag already in use by another SCSI command (i.e., an overlapped command) in any logical unit, the task
router and device server(s) shall abort all task management functions received on that I_T nexus and shall
respond to the overlapped command as defined in SAM-4.

> I'm not even sure a transport would be allowed to override this; SAM is
> pretty clear (s 4.12 The Nexus Object) that a nexus is either I_T, I_T_L
> or I_T_L_Q.  I_T_Q isn't listed as being allowable for a nexus.

sam4r13f:

4.7.2 Command identifier

A command identifier (i.e., the Q in an I_T_L_Q nexus) is assigned by a
SCSI initiator device to uniquely identify one command in the context of a
particular I_T_L nexus, allowing more than one command to be outstanding
for that I_T_L nexus at the same time. Each SCSI transport protocol
defines the size of the command identifier, up to a maximum of 64 bytes,
to be used by SCSI ports that support that SCSI transport protocol.

SCSI transport protocols may define additional restrictions on command
identifier assignments (e.g., requiring command identifiers to be unique
per I_T nexus or per I_T_L nexus, or sharing command identifier values
with other uses such as task management functions).


  reply	other threads:[~2011-12-19 18:36 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-14 18:47 Make UAS work on HS for devices with and without command tagging support Sebastian Andrzej Siewior
2011-12-14 18:47 ` [PATCH 1/2] usb/uas: fix support on HS (device without command tagging) Sebastian Andrzej Siewior
     [not found]   ` <1323888472-21035-2-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
2011-12-15 11:14     ` Sergei Shtylyov
2011-12-14 18:47 ` [PATCH 2/2] usb/uas: fix support on HS (device with " Sebastian Andrzej Siewior
2011-12-14 22:53 ` Make UAS work on HS for devices with and without command tagging support Sarah Sharp
2011-12-15  8:44   ` Sebastian Andrzej Siewior
     [not found]     ` <4EE9B375.4020606-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
2011-12-15 21:12       ` [usb-storage] " Sarah Sharp
2011-12-16 14:47         ` Sebastian Andrzej Siewior
2011-12-16 20:12           ` Sebastian Andrzej Siewior
2011-12-16 20:31             ` Matthew Wilcox
2011-12-16 20:42               ` Sebastian Andrzej Siewior
2011-12-16 21:36                 ` Sarah Sharp
2011-12-16 21:44                   ` Alan Stern
2011-12-16 21:47                   ` James Bottomley
2011-12-19 16:12                     ` Matthew Wilcox
2011-12-19 17:14                       ` James Bottomley
2011-12-19 18:36                         ` Matthew Wilcox [this message]
2011-12-19 20:27                           ` James Bottomley
2011-12-19 20:57                             ` Matthew Wilcox
2011-12-19 21:22                               ` James Bottomley
2011-12-19 16:14                     ` [PATCH] usb/uas: use unique tags for all LUNs Sebastian Andrzej Siewior
2011-12-19 19:39                     ` [PATCH] usb/uas: use scsi_host_find_tag() to find command from a tag Sebastian Andrzej Siewior
     [not found]                       ` <20111219193955.GA2060-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>
2011-12-19 19:50                         ` Matthew Wilcox
2011-12-19 20:12                           ` Sarah Sharp
2011-12-19 21:01                             ` Matthew Wilcox
2011-12-16 20:51             ` [usb-storage] Re: Make UAS work on HS for devices with and without command tagging support Sarah Sharp

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111219183633.GP14291@linux.intel.com \
    --to=willy@linux.intel.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=bigeasy@linutronix.de \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=sarah.a.sharp@linux.intel.com \
    --cc=usb-storage@lists.one-eyed-alien.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.