--- zzzz-none-000/linux-4.4.271/drivers/scsi/sd.c 2021-06-03 06:22:09.000000000 +0000 +++ hawkeye-5590-750/linux-4.4.271/drivers/scsi/sd.c 2023-04-19 10:22:29.000000000 +0000 @@ -1441,9 +1441,13 @@ retval = -ENODEV; if (scsi_block_when_processing_errors(sdp)) { - sshdr = kzalloc(sizeof(*sshdr), GFP_KERNEL); - retval = scsi_test_unit_ready(sdp, SD_TIMEOUT, SD_MAX_RETRIES, - sshdr); + /* == 20160222 AVM/VGJ - CHANGESET: STORAGE fix: TUR prevented STOP_UNIT on some hard_disks ==*/ + /* == 20171027 AVM/VGJ - TUR wakes up suspended devices. Do it only if there is no media ==*/ + retval = 0; + if (!sdkp->media_present) { + sshdr = kzalloc(sizeof(*sshdr), GFP_KERNEL); + retval = scsi_test_unit_ready(sdp, SD_TIMEOUT, SD_MAX_RETRIES, sshdr); + } } /* failed to execute TUR, assume media not present */