quoted hunk ↗ jump to hunk
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