All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: James Bottomley <jbottomley@parallels.com>
Cc: "martin.petersen\@oracle.com" <martin.petersen@oracle.com>,
	"linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"hch\@infradead.org" <hch@infradead.org>,
	"devel\@linuxdriverproject.org" <devel@linuxdriverproject.org>,
	"apw\@canonical.com" <apw@canonical.com>,
	"kys\@microsoft.com" <kys@microsoft.com>,
	"stable\@vger.kernel.org" <stable@vger.kernel.org>,
	"linux-scsi\@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"ohering\@suse.com" <ohering@suse.com>,
	"jasowang\@redhat.com" <jasowang@redhat.com>
Subject: Re: [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16
Date: Wed, 16 Jul 2014 15:08:13 -0400	[thread overview]
Message-ID: <yq17g3drujm.fsf@sermon.lab.mkp.net> (raw)
In-Reply-To: <1405536631.3165.23.camel@dabdike.int.hansenpartnership.com> (James Bottomley's message of "Wed, 16 Jul 2014 18:50:31 +0000")

>>>>> "James" == James Bottomley <jbottomley@parallels.com> writes:

James> It's the code we identified in sd.c:read_capacity_16():

That's there to support devices that implement thin provisioning but
which predate the LBP VPD page. And thus have no way to tell us their
preferred command variant.

James> If the inquiry shows LBPME set, we'll do write same regardless of
James> the no_write_same bit.  That's why for SPC-2 devices it only
James> shows up on >> 2TB devices because they force RC16.

But we only do so if they have LBPME set. Generally they don't.

The problem for hyperv was that LBPME was set. And because it claimed
SBC-2 we did not check the LBP VPD page to see that it prefers UNMAP.

I believe we did consider unconditionally checking for VPDs when LBPME
was set but I seem to recall that it broke some device that had garbage
in the READ CAPACITY(16) response. I'll see if I can locate the details.

Otherwise I'm willing to entertain that idea.

-- 
Martin K. Petersen	Oracle Linux Engineering

WARNING: multiple messages have this Message-ID (diff)
From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: James Bottomley <jbottomley@parallels.com>
Cc: "linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"martin.petersen@oracle.com" <martin.petersen@oracle.com>,
	"jasowang@redhat.com" <jasowang@redhat.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"stable@vger.kernel.org" <stable@vger.kernel.org>,
	"ohering@suse.com" <ohering@suse.com>,
	"hch@infradead.org" <hch@infradead.org>,
	"apw@canonical.com" <apw@canonical.com>,
	"devel@linuxdriverproject.org" <devel@linuxdriverproject.org>
Subject: Re: [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16
Date: Wed, 16 Jul 2014 15:08:13 -0400	[thread overview]
Message-ID: <yq17g3drujm.fsf@sermon.lab.mkp.net> (raw)
In-Reply-To: <1405536631.3165.23.camel@dabdike.int.hansenpartnership.com> (James Bottomley's message of "Wed, 16 Jul 2014 18:50:31 +0000")

>>>>> "James" == James Bottomley <jbottomley@parallels.com> writes:

James> It's the code we identified in sd.c:read_capacity_16():

That's there to support devices that implement thin provisioning but
which predate the LBP VPD page. And thus have no way to tell us their
preferred command variant.

James> If the inquiry shows LBPME set, we'll do write same regardless of
James> the no_write_same bit.  That's why for SPC-2 devices it only
James> shows up on >> 2TB devices because they force RC16.

But we only do so if they have LBPME set. Generally they don't.

The problem for hyperv was that LBPME was set. And because it claimed
SBC-2 we did not check the LBP VPD page to see that it prefers UNMAP.

I believe we did consider unconditionally checking for VPDs when LBPME
was set but I seem to recall that it broke some device that had garbage
in the READ CAPACITY(16) response. I'll see if I can locate the details.

Otherwise I'm willing to entertain that idea.

-- 
Martin K. Petersen	Oracle Linux Engineering

  reply	other threads:[~2014-07-16 19:09 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-09  0:46 [PATCH 0/8] Drivers: scsi: storvsc: Bug fixes and improvements K. Y. Srinivasan
2014-07-09  0:46 ` K. Y. Srinivasan
2014-07-09  0:46 ` [PATCH 1/8] Drivers: scsi: storvsc: Change the limits to reflect the values on the host K. Y. Srinivasan
2014-07-09  0:46   ` K. Y. Srinivasan
2014-07-09  0:46   ` [PATCH 2/8] Drivers: scsi: storvsc: Filter commands based on the storage protocol version K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:40     ` Christoph Hellwig
2014-07-09 20:02       ` KY Srinivasan
2014-07-09 20:02         ` KY Srinivasan
2014-07-09  0:46   ` [PATCH 3/8] Drivers: scsi: storvsc: Fix a bug in handling VMBUS " K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:41     ` Christoph Hellwig
2014-07-09 20:01       ` KY Srinivasan
2014-07-09  0:46   ` [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16 K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:43     ` Christoph Hellwig
2014-07-09  8:43       ` Christoph Hellwig
2014-07-09 19:52       ` KY Srinivasan
2014-07-09 19:52         ` KY Srinivasan
2014-07-09 19:56         ` James Bottomley
2014-07-09 19:56           ` James Bottomley
2014-07-09 21:14           ` KY Srinivasan
2014-07-09 21:14             ` KY Srinivasan
2014-07-09 22:27             ` James Bottomley
2014-07-09 22:27               ` James Bottomley
2014-07-09 22:36               ` KY Srinivasan
2014-07-10 10:07                 ` hch
2014-07-10 21:02               ` KY Srinivasan
2014-07-10 21:02                 ` KY Srinivasan
2014-07-10 22:12                 ` James Bottomley
2014-07-10 22:12                   ` James Bottomley
2014-07-10 22:12                   ` James Bottomley
2014-07-11  6:32               ` hch
2014-07-11  6:32                 ` hch
2014-07-11 12:54                 ` Martin K. Petersen
2014-07-11 12:54                   ` Martin K. Petersen
2014-07-12  2:53                   ` KY Srinivasan
2014-07-12  2:50                 ` KY Srinivasan
2014-07-13 12:58                   ` Martin K. Petersen
2014-07-13 12:58                     ` Martin K. Petersen
2014-07-13 18:49                     ` KY Srinivasan
2014-07-13 18:49                       ` KY Srinivasan
2014-07-14  2:37                     ` KY Srinivasan
2014-07-14  2:37                       ` KY Srinivasan
2014-07-14  3:19                       ` KY Srinivasan
2014-07-16 11:01                     ` hch
2014-07-16 11:01                       ` hch
2014-07-16 14:53                       ` James Bottomley
2014-07-16 14:53                         ` James Bottomley
2014-07-16 15:44                       ` Martin K. Petersen
2014-07-16 15:44                         ` Martin K. Petersen
2014-07-16 17:38                         ` hch
2014-07-16 17:38                           ` hch
2014-07-16 17:47                           ` Martin K. Petersen
2014-07-16 17:47                             ` Martin K. Petersen
2014-07-16 17:55                             ` hch
2014-07-16 17:55                               ` hch
2014-07-16 18:02                             ` James Bottomley
2014-07-16 18:43                               ` Elliott, Robert (Server Storage)
2014-07-16 19:20                                 ` Martin K. Petersen
2014-07-16 19:20                                   ` Martin K. Petersen
2014-07-17  7:42                                   ` hch
2014-07-17 12:41                                     ` Martin K. Petersen
2014-07-17 12:41                                       ` Martin K. Petersen
2014-07-16 18:45                               ` Martin K. Petersen
2014-07-16 18:45                                 ` Martin K. Petersen
2014-07-16 18:50                                 ` James Bottomley
2014-07-16 18:50                                   ` James Bottomley
2014-07-16 19:08                                   ` Martin K. Petersen [this message]
2014-07-16 19:08                                     ` Martin K. Petersen
2014-07-16 19:14                                     ` James Bottomley
2014-07-16 19:14                                       ` James Bottomley
2014-07-16 19:44                                       ` Martin K. Petersen
2014-07-16 19:44                                         ` Martin K. Petersen
2014-07-09  0:46   ` [PATCH 5/8] Drivers: scsi: storvsc: Fix a bug in the handling of SRB status flags K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:43     ` Christoph Hellwig
2014-07-09  8:43       ` Christoph Hellwig
2014-07-09  0:46   ` [PATCH 6/8] Drivers: scsi: storvsc: Implement an abort handler K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:44     ` Christoph Hellwig
2014-07-09  8:44       ` Christoph Hellwig
2014-07-09 18:51       ` KY Srinivasan
2014-07-10 10:13         ` Christoph Hellwig
2014-07-10 10:13           ` Christoph Hellwig
2014-07-10 22:26           ` KY Srinivasan
2014-07-11  9:52             ` Hannes Reinecke
2014-07-11  9:52               ` Hannes Reinecke
2014-07-11  9:54               ` Christoph Hellwig
2014-07-11  9:54                 ` Christoph Hellwig
2014-07-11 14:49               ` KY Srinivasan
2014-07-11 14:49                 ` KY Srinivasan
2014-07-10 10:33         ` Richard Weinberger
2014-07-12 16:16           ` Richard Weinberger
2014-07-12 16:16             ` Richard Weinberger
2014-07-12 16:35             ` KY Srinivasan
2014-07-12 16:35               ` KY Srinivasan
2014-07-09  0:46   ` [PATCH 7/8] drivers: scsi: storvsc: Set srb_flags in all cases K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:44     ` Christoph Hellwig
2014-07-09 18:40       ` KY Srinivasan
2014-07-09 18:40         ` KY Srinivasan
2014-07-10 10:17         ` Christoph Hellwig
2014-07-10 22:22           ` KY Srinivasan
2014-07-10 10:18     ` Christoph Hellwig
2014-07-10 10:18       ` Christoph Hellwig
2014-07-11 21:03       ` KY Srinivasan
2014-07-09  0:46   ` [PATCH 8/8] drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure K. Y. Srinivasan
2014-07-09  0:46     ` K. Y. Srinivasan
2014-07-09  8:46     ` Christoph Hellwig
2014-07-09 18:35       ` KY Srinivasan
2014-07-09 18:35         ` KY Srinivasan
2014-07-09  8:39   ` [PATCH 1/8] Drivers: scsi: storvsc: Change the limits to reflect the values on the host Christoph Hellwig
2014-07-09 20:07     ` KY Srinivasan
2014-07-09 20:07       ` KY Srinivasan
2014-07-09 23:39       ` KY Srinivasan
2014-07-09 23:39         ` KY Srinivasan

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=yq17g3drujm.fsf@sermon.lab.mkp.net \
    --to=martin.petersen@oracle.com \
    --cc=apw@canonical.com \
    --cc=devel@linuxdriverproject.org \
    --cc=hch@infradead.org \
    --cc=jasowang@redhat.com \
    --cc=jbottomley@parallels.com \
    --cc=kys@microsoft.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=ohering@suse.com \
    --cc=stable@vger.kernel.org \
    /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.