]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
scsi: Revert "scsi: sd: Do not repeat the starting disk message"
authorJohan Hovold <johan+linaro@kernel.org>
Tue, 16 Jul 2024 16:11:01 +0000 (18:11 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 23 Jul 2024 00:30:13 +0000 (20:30 -0400)
This reverts commit 7a6bbc2829d4ab592c7e440a6f6f5deb3cd95db4.

The offending commit tried to suppress a double "Starting disk" message for
some drivers, but instead started spamming the log with bogus messages
every five seconds:

[  311.798956] sd 0:0:0:0: [sda] Starting disk
[  316.919103] sd 0:0:0:0: [sda] Starting disk
[  322.040775] sd 0:0:0:0: [sda] Starting disk
[  327.161140] sd 0:0:0:0: [sda] Starting disk
[  332.281352] sd 0:0:0:0: [sda] Starting disk
[  337.401878] sd 0:0:0:0: [sda] Starting disk
[  342.521527] sd 0:0:0:0: [sda] Starting disk
[  345.850401] sd 0:0:0:0: [sda] Starting disk
[  350.967132] sd 0:0:0:0: [sda] Starting disk
[  356.090454] sd 0:0:0:0: [sda] Starting disk
...

on machines that do not actually stop the disk on runtime suspend (e.g.
the Qualcomm sc8280xp CRD with UFS).

Let's just revert for now to address the regression.

Fixes: 7a6bbc2829d4 ("scsi: sd: Do not repeat the starting disk message")
Cc: stable@vger.kernel.org
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20240716161101.30692-1-johan+linaro@kernel.org
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/sd.c

index 6203915945a4ac2a096995c40c6035a5705ac6b9..fe82baa924f81b8ab04e7027119e8a8b2fbff106 100644 (file)
@@ -4117,6 +4117,8 @@ static int sd_resume(struct device *dev)
 {
        struct scsi_disk *sdkp = dev_get_drvdata(dev);
 
+       sd_printk(KERN_NOTICE, sdkp, "Starting disk\n");
+
        if (opal_unlock_from_suspend(sdkp->opal_dev)) {
                sd_printk(KERN_NOTICE, sdkp, "OPAL unlock failed\n");
                return -EIO;
@@ -4133,13 +4135,12 @@ static int sd_resume_common(struct device *dev, bool runtime)
        if (!sdkp)      /* E.g.: runtime resume at the start of sd_probe() */
                return 0;
 
-       sd_printk(KERN_NOTICE, sdkp, "Starting disk\n");
-
        if (!sd_do_start_stop(sdkp->device, runtime)) {
                sdkp->suspended = false;
                return 0;
        }
 
+       sd_printk(KERN_NOTICE, sdkp, "Starting disk\n");
        ret = sd_start_stop_device(sdkp, 1);
        if (!ret) {
                sd_resume(dev);