Энергосбережение SATA и опции модуля ahci

Чем дальше в лес, тем больше дров … в части ASPM для HDD
Смотрим наличиe ASPM у некоторых устройств PCI
1. sudo lspci -vvvv -s 00.2 | grep –color=auto ASPM
LnkCap:	Port #1, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 unlimited
			ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
		LnkCtl:	ASPM Disabled; RCB 64 bytes Disabled- CommClk+
2. sudo lspci -vvvv -s 03:00.0 | grep –color=auto ASPM
LnkCap:	Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <512ns, L1 <64us
			ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
У одного устройства disable у другого enable - но, главное, можно ими управлять
А вот для HDD вообще не вижу ASPM
sudo lspci -vvvv -s 00:1f.2 | grep –color=auto ASPM
… пусто …
и что??? - не поддерживается … или как это понимать и для чего тогда все эти параметры policy???
Жалко, нет времени разбираться.
Интересно, у всех нет в выводе ASPM для дисков (HDD, SD) - проверьте
lspci | grep -i ata
00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port Mobile SATA AHCI Controller (rev 04)
и далее sudo lspci -vvvv -s 00:1f.2 | grep --color=auto ASPM
Ошибки не исчезают с опытом - они просто умнеют
vasek
для чего тогда все эти параметры policy
Была статейка на хабре по поводу
https://habr.com/ru/post/118317/
4% в режиме ожидания за 7.5 часов. Нормально?
Morisson
в режиме ожидания
Я так понял этот параметр не влияет на спящий режим, а на политику в рабочем. Если нет обращений к диску часть устройства выключается
vs220
Если нет обращений к диску часть устройства выключается
И при этом пишет что сон устройства не поддерживается..

От зарядника
┌─ jeronimo {Linux 5.1.8-zen1-1-zen x86_64} /home/jeronimo [11:49:01]
└─> $ sudo lspci -vv | grep -i lnkctl
[sudo] пароль для jeronimo:
		LnkCtl:	ASPM Disabled; RCB 64 bytes Disabled- CommClk+
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-

От батарейки
─ jeronimo {Linux 5.1.8-zen1-1-zen x86_64} /home/jeronimo [11:50:24]
└─> $ sudo lspci -vv | grep -i lnkctl
		LnkCtl:	ASPM L0s L1 Enabled; RCB 64 bytes Disabled- CommClk+
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
		LnkCtl:	ASPM L0s L1 Enabled; RCB 64 bytes Disabled- CommClk+
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
Morisson
сон устройства
Устройства а не ноута, это в данном случае должны быть разные сущности. Просто при подключении зарядника меняются политики
Я глубоко не вникал, так что могу быть и не прав.

Почитайте статью может лучше меня разберетесь
vs220
Просто при подключении зарядника меняются политики
я их сам меняю скриптом через udev-правило.

vs220
Устройства а не ноута, это в данном случае должны быть разные сущности.
Да, я понял. Но получается, что при переходе в режим s3 диск не спит? Или я недопонял?)
vs220
Была статейка на хабре по поводу
https://habr.com/ru/post/118317/
Есть она у меня. Просто опять в спешке решил связать это с ASPM (который тоже служит для управления потреблением энергии шин PCI Express посредством их перевода в энергосберегающий режим). Думал есть какая то связь.
Вообщем чтобы со всем этим разобраться, нужно влезать в это конкретно, а пока и нет особо времени да и желания.

Morisson
Но получается, что при переходе в режим s3 диск не спит? Или я недопонял?)
По идее должен, но что то уже и сам запутался.
Ошибки не исчезают с опытом - они просто умнеют
Morisson
получается, что при переходе в режим s3 диск не спит
Режим 3 это по идеи энергосберегающий но инициализируемый устройством. То есть должно устройство поддерживать и ядро распознать эту поддержку аспи фирмарь
Не поленился залез в спецификацию и понял, что не все так просто с этим LPM. Привожу цитату из DOC
Управление питанием SATA Link можно разделить на два основных типа:
- инициируемые хостом, уравление питанием канала (HIPM)
- инициированное устройством, управление питанием канала (DIPM)
SATA Link Power Management требует взаимодействия между хостом и устройством.
Хост или устройство могут запросить ссылку для перехода в состояние с низким энергопотреблением, но  соответствующий хост или устройство должны принять или отклонить запрос на изменение состояния канала. каждый из них обеспечивает экономию энергии самостоятельно; максимальная экономия энергии, однако, достигаются, когда оба реализуются вместе.
Идет обмен запросами между устройством и хостом, распознают соответствующие биты, определяется возможность использования управления энергопотреблением и др. А максимальный эффект достигается, как понял, не всегда - многое зависит и от устройства и от хоста.
Написано много интересного. Встретилось и упоминание о сигнале COMWAKE, присутствующего в логах
Morisson
[10305.766859] ata1: SError: { PHYRdyChg CommWake }
Привожу без перевода
Once the PHY is in a low-power state, SATA specifies a low-level signaling mechanism to bring the interface back to active state. An OOB signal “COMWAKE” is sent to the
device that acts as a wake-up call and causes communication to be reestablished.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.