Message ID | 20170214134736.GA19620@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
> From: hch@lst.de [mailto:hch@lst.de] > > Hi Dexuan, > > can you try the hack below for now? I disable the TUR call from > sd_check_events, which I think your VM is hanging on. The checks > it does on the sense data look a bit fishy, but so far I've not > identified a possible root cause. > > diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c > index 40b4038c019e..1502e87c2be9 100644 > --- a/drivers/scsi/sd.c > +++ b/drivers/scsi/sd.c > @@ -1457,9 +1457,13 @@ static unsigned int sd_check_events(struct > gendisk *disk, unsigned int clearing) > retval = -ENODEV; > > if (scsi_block_when_processing_errors(sdp)) { > +#if 0 > sshdr = kzalloc(sizeof(*sshdr), GFP_KERNEL); > retval = scsi_test_unit_ready(sdp, SD_TIMEOUT, > SD_MAX_RETRIES, > sshdr); > +#else > + retval = 0; > +#endif > } > > /* failed to execute TUR, assume media not present */ Unluckily, the issue is still there. Please see the attachment for the new log. It looks somewhere we're still sending the cmd "Test Unit Ready", which somehow hangs. Thanks, -- Dexuan
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 40b4038c019e..1502e87c2be9 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -1457,9 +1457,13 @@ static unsigned int sd_check_events(struct gendisk *disk, unsigned int clearing) retval = -ENODEV; if (scsi_block_when_processing_errors(sdp)) { +#if 0 sshdr = kzalloc(sizeof(*sshdr), GFP_KERNEL); retval = scsi_test_unit_ready(sdp, SD_TIMEOUT, SD_MAX_RETRIES, sshdr); +#else + retval = 0; +#endif } /* failed to execute TUR, assume media not present */