Re: [PATCH] scsi: storvsc: Workaround for virtual DVD SCSI version

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 4 May 2017 12:33:42 -0700
Greg KH <greg@xxxxxxxxx> wrote:

> On Wed, May 03, 2017 at 03:56:32PM -0700, Stephen Hemminger wrote:
> > From: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
> > 
> > commit f1c635b439a5c01776fe3a25b1e2dc546ea82e6f upstream
> > 
> > Hyper-V host emulation of SCSI for virtual DVD device reports SCSI
> > version 0 (UNKNOWN) but is still capable of supporting REPORTLUN.
> > 
> > Without this patch, a GEN2 Linux guest on Hyper-V will not boot
> > successfully with virtual DVD ROM device. What happens is that the SCSI
> > scan process falls back to doing sequential probing by INQUIRY.  But the
> > storvsc driver has a previous workaround that masks/blocks all errors
> > reports from INQUIRY (or MODE_SENSE) commands.  This workaround causes
> > the scan to then populate a full set of bogus LUN's on the target and
> > then sends kernel spinning off into a death spiral doing block reads on
> > the non-existent LUNs.
> > 
> > By setting the correct blacklist flags, the target with the DVD device
> > is scanned with REPORTLUN which works correctly.
> > 
> > Signed-off-by: Stephen Hemminger <sthemmin@xxxxxxxxxxxxx>
> > Reviewed-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
> > Reviewed-by: Christoph Hellwig <hch@xxxxxx>
> > Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
> > ---
> >  drivers/scsi/storvsc_drv.c | 27 +++++++++++++++++----------
> >  1 file changed, 17 insertions(+), 10 deletions(-)  
> 
> I've queued this up, but it's interesting how you deleted the changelog
> comments here saying this was only needed for 4.11 and no older kernels
> :)

At the time I only had reports of problem with 4.11.
But others ran into issue with 4.10 and 4.9



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]