From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Linus Torvalds <torvalds@linux-foundation.org>,
"Ewan D. Milne" <emilne@redhat.com>,
Jan Stancek <jstancek@redhat.com>,
Johannes Thumshirn <jthumshirn@suse.de>,
"Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-scsi <linux-scsi@vger.kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [GIT PULL] SCSI fixes for 4.7-rc2
Date: Sat, 11 Jun 2016 12:29:18 -0700 [thread overview]
Message-ID: <1465673358.2364.37.camel@HansenPartnership.com> (raw)
In-Reply-To: <CA+55aFyBOPjFoVMzGhxarXBtRfCVBBarxt-+L-_T63Taam9_qA@mail.gmail.com>
On Sat, 2016-06-11 at 11:54 -0700, Linus Torvalds wrote:
> On Sat, Jun 11, 2016 at 11:09 AM, James Bottomley
> <James.Bottomley@hansenpartnership.com> wrote:
> > Two current fixes: one affects Qemu CD ROM emulation, which stopped
> > working after the updates in SCSI to require VPD pages from all
> > conformant devices. Fix temporarily by blacklisting Qemu (we can
> > relax
> > later when they come into compliance).
>
> Is there some reason to believe that the qemu CD-ROM emulation is the
> only one with this problem?
CD ROM manufacturers are usually reasonably good at standards
compliance, so yes, I expect real devices to work. The reason the QEMU
one is failing is because it's emulated not produced by a manufacturer.
> When some device is known to break because the SCSI layer made some
> check stricter, why didn't you just relax the check again?
>
> In other words, you already have one known device that behaves a way
> that the new code doesn't like, why do you think the new code is
> correct?
This isn't a stricter check, it's probing the device for more
information which we then use to set block parameters. If we don't set
them, we can still use the device, but possibly not as efficiently
(even for a fast 16x or 32x DVD, this will affect the burn speed).
The device is allowed to say no. The problem with the QEMU device is
that it wasn't saying anything. It was hanging up and never responding
again, leading to a complete boot failure.
> And don't answer "specs". Specs are just so much toilet paper.
I actually ran out of SCSI specs a while ago. Fortunately the kernel
ABI doc is soft, strong, and very, very long.
> If the Qemu CD-ROM emulation has worked with not just older versions
> of Linux, but presumably Windows and other OS's too, then it's likely
> that nobody has ever cared about the VPD pages before, and thus the
> new code that requires VPD is likely to break other things too.
>
> So give a reason why you think qemu is _sop_ special, and why the new
> and clearly broken "require VPD" code is _so_ important.
>
> And really, if the reason is "specs", then somebody needs to get
> their head examined. We've had so many devices that only glance
> quickly at the specs that people need to realize that paperwork is
> one thing, and reality is another, and the two have only a very
> tenuous connection.
>
> The commit that adds this "no VPD" entry doesn't even talk about when
> we broke this. What change exactly was it that broke things?
>
> I've pulled this, but I really think that this was completely bogus.
> Even if blacklisting ends up being the right thing to do in the end,
> the lack of explanations is awful, and the assumption that it's just
> one particular device is very very suspect.
So on the specs thing, we don't expect full compliance and we do code
around problem responses or things missing programmatically (mostly).
However, the problem here is the device effectively committing suicide
when it sees a VPD inquiry. We do expect things like this sometimes
(mosly from USB manufacturers who seem to regard use of specs the same
way you do) but usually we have to blacklist them too to prevent the
problem command reaching the device.
James
prev parent reply other threads:[~2016-06-11 19:29 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-11 18:09 [GIT PULL] SCSI fixes for 4.7-rc2 James Bottomley
2016-06-11 18:54 ` Linus Torvalds
2016-06-11 19:12 ` Linus Torvalds
2016-06-11 19:41 ` James Bottomley
2016-06-11 19:57 ` Linus Torvalds
2016-06-11 20:53 ` James Bottomley
2016-06-11 20:25 ` Linus Torvalds
2016-06-11 21:03 ` James Bottomley
2016-06-13 7:04 ` Hannes Reinecke
2016-06-14 5:51 ` Linus Torvalds
2016-06-11 19:29 ` James Bottomley [this message]
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=1465673358.2364.37.camel@HansenPartnership.com \
--to=james.bottomley@hansenpartnership.com \
--cc=akpm@linux-foundation.org \
--cc=emilne@redhat.com \
--cc=jstancek@redhat.com \
--cc=jthumshirn@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=torvalds@linux-foundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).