Доброго времени суток!
Проблема такая: поставил в ноут SSD Drive Verbatim 47379. От сети всё работает хорошо и шустро, однако при отключении питания начинаются жуткие тормоза. Посмотрел логи, в них следующее:
Jun 14 17:55:47 pavel laptop-mode: Failed.
Jun 14 17:55:47 pavel kernel: [ 260.105029] ata1.00: limiting speed to UDMA/33:PIO4
Jun 14 17:55:47 pavel kernel: [ 260.105037] ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x40c0000 action 0xe frozen
Jun 14 17:55:47 pavel kernel: [ 260.105041] ata1.00: irq_stat 0x00000040, connection status changed
Jun 14 17:55:47 pavel kernel: [ 260.105046] ata1: SError: { CommWake 10B8B DevExch }
Jun 14 17:55:47 pavel kernel: [ 260.105052] ata1.00: failed command: READ FPDMA QUEUED
Jun 14 17:55:47 pavel kernel: [ 260.105061] ata1.00: cmd 60/08:00:68:c9:08/00:00:00:00:00/40 tag 0 ncq 4096 in
Jun 14 17:55:47 pavel kernel: [ 260.105063] res 40/00:00:68:c9:08/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
Jun 14 17:55:47 pavel kernel: [ 260.105067] ata1.00: status: { DRDY }
Jun 14 17:55:47 pavel kernel: [ 260.105075] ata1: hard resetting link
Jun 14 17:55:48 pavel kernel: [ 260.827181] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
Jun 14 17:55:48 pavel kernel: [ 260.849293] ata1.00: configured for UDMA/33
Jun 14 17:55:48 pavel kernel: [ 260.849708] ata1: EH complete
Jun 14 17:55:48 pavel kernel: [ 260.852603] ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x40c0000 action 0xe frozen
Jun 14 17:55:48 pavel kernel: [ 260.852608] ata1.00: irq_stat 0x00000040, connection status changed
Jun 14 17:55:48 pavel kernel: [ 260.852614] ata1: SError: { CommWake 10B8B DevExch }
Jun 14 17:55:48 pavel kernel: [ 260.852619] ata1.00: failed command: READ FPDMA QUEUED
Jun 14 17:55:48 pavel kernel: [ 260.852628] ata1.00: cmd 60/08:00:c0:8c:15/00:00:00:00:00/40 tag 0 ncq 4096 in
Jun 14 17:55:48 pavel kernel: [ 260.852630] res 40/00:00:c0:8c:15/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
Jun 14 17:55:48 pavel kernel: [ 260.852634] ata1.00: status: { DRDY }
Jun 14 17:55:48 pavel kernel: [ 260.852641] ata1: hard resetting link
Jun 14 17:55:49 pavel kernel: [ 261.574971] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
Jun 14 17:55:49 pavel kernel: [ 261.597020] ata1.00: configured for UDMA/33
Jun 14 17:55:49 pavel kernel: [ 261.597471] ata1: EH complete
Jun 14 17:55:49 pavel kernel: [ 261.597908] ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x40c0000 action 0xe frozen
Jun 14 17:55:49 pavel kernel: [ 261.597913] ata1.00: irq_stat 0x00000040, connection status changed
Jun 14 17:55:49 pavel kernel: [ 261.597919] ata1: SError: { CommWake 10B8B DevExch }
Jun 14 17:55:49 pavel kernel: [ 261.597924] ata1.00: failed command: READ FPDMA QUEUED
Jun 14 17:55:49 pavel kernel: [ 261.597935] ata1.00: cmd 60/08:00:c0:8c:15/00:00:00:00:00/40 tag 0 ncq 4096 in
Jun 14 17:55:49 pavel kernel: [ 261.597938] res 40/00:00:c0:8c:15/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
Jun 14 17:55:49 pavel kernel: [ 261.597946] ata1.00: status: { DRDY }
Jun 14 17:55:49 pavel kernel: [ 261.597955] ata1: hard resetting link
Jun 14 17:55:49 pavel kernel: [ 262.320756] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
Jun 14 17:55:49 pavel kernel: [ 262.342740] ata1.00: configured for UDMA/33
Jun 14 17:55:49 pavel kernel: [ 262.343132] ata1: EH complete
Jun 14 17:56:11 pavel dbus-daemon[988]: **** /proc/self/mountinfo changed
Jun 14 17:56:11 pavel kernel: [ 283.841848] EXT4-fs (sda1): re-mounted. Opts: discard,acl,user_xattr,commit=0
Jun 14 17:56:11 pavel laptop-mode: Laptop mode
Jun 14 17:56:11 pavel laptop-mode: enabled, not active
Jun 14 17:56:11 pavel kernel: [ 283.905418] ata1: exception Emask 0x10 SAct 0x0 SErr 0x40c0000 action 0xe frozen t4
Jun 14 17:56:11 pavel kernel: [ 283.905421] ata1: irq_stat 0x00000040, connection status changed
Jun 14 17:56:11 pavel kernel: [ 283.905425] ata1: SError: { CommWake 10B8B DevExch }
Jun 14 17:56:11 pavel kernel: [ 283.905431] ata1: hard resetting link
И так до бесконечности. Включаешь обратно питание - всё нормализуется. Погуглил, нашёл вроде решение проблемы:
max_performance > /sys/class/scsi_host/host0/link_power_management_policy
там при отключении питания оказывается значение min_power. Всё бы хорошо, но данный скрипт приходится выполнять вручную. Нашёл вроде бы настройку в /etc/pm-profiler, но - увы, они не применяются.
Как решить проблему? А то надоело уже ручками скрипт выполнять!
есть файл /etc/sysconfig/pm-profiler в нём указывается активный профиль,
сами профили лежат в /etc/pm-profiler/<profile name>/config
профиль можно скопировать и поправить из SATA_ALPM="min_power" в нужное русло.
или можно использовать /etc/init.d/after.local
openSUSE 13.1 x86_64 / Xfce 4.10
Windows 8.1 Pro x64
Там всё отредактировано. Однако эти профили почему-то не применяются - в логе наверху это видно.
в логе наверху видны только ошибки ata, а не питания или профилей питания.
даемон pm-profiler стартует? DE не переопределяет профили?
openSUSE 13.1 x86_64 / Xfce 4.10
Windows 8.1 Pro x64