Re: Regression from 7627a0edef54 ("ata: ahci: Drop low power policy board type") on reboot (but not cold boot)

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

 




Le 12/03/2025 à 18:11, Eric a écrit :
Hi Niklas

Le 11/03/2025 à 15:14, Niklas Cassel a écrit :
Hello Hans, Eric,

Eric, could you please run:
$ sudo hdparm -I /dev/sdX | grep "interface power management"

on both your Samsung and Maxtor drive?
(A star to the left of feature means that the feature is enabled)

Here is the result (apparently PM is enabled on the maxtor but it doesn't create the same problem) :

(trixieUSB)eric@gwaihir:~$ sudo hdparm -I /dev/disk/by-id/ata-MAXTOR_STM3250310AS_6RY2WB82 | grep "interface power management"
       *    Device-initiated interface power management
(trixieUSB)eric@gwaihir:~$ sudo hdparm -I /dev/disk/by-id/ata-Samsung_SSD_870_QVO_2TB_S5RPNF0T419459E | grep "interface power management"
       *    Device-initiated interface power management



One guess... perhaps it could be Device Initiated PM that is broken with
these controllers? (Even though the controller does claim to support it.)

Eric, could you please try this patch:

diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index f813dbdc2346..ca690fde8842 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -244,7 +244,7 @@ static const struct ata_port_info ahci_port_info[] = {
      },
      [board_ahci_sb700] = {    /* for SB700 and SB800 */
          AHCI_HFLAGS    (AHCI_HFLAG_IGN_SERR_INTERNAL),
-        .flags        = AHCI_FLAG_COMMON,
+        .flags        = AHCI_FLAG_COMMON | ATA_FLAG_NO_DIPM,
          .pio_mask    = ATA_PIO4,
          .udma_mask    = ATA_UDMA6,
          .port_ops    = &ahci_pmp_retry_srst_ops,
Will do. I'll report back as soon as I've built the modified kernel and tested it.

Tested. Both disks now respond that way (no Device-initiated interface power management) :

(trixieUSB)eric@gwaihir:~$ sudo hdparm -I /dev/disk/by-id/ata-MAXTOR_STM3250310AS_6RY2WB82 | grep "interface power management"
           Device-initiated interface power management
(trixieUSB)eric@gwaihir:~$ sudo hdparm -I /dev/disk/by-id/ata-Samsung_SSD_870_QVO_2TB_S5RPNF0T419459E | grep "interface power management"
           Device-initiated interface power management


With the patch you asked me to test, the SSD is properly detected at reboot, both by the UEFI and the kernel.



Kind regards,
Niklas

Kind regards

Eri





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

  Powered by Linux