LINUX.ORG.RU

hibernate, write-error on swap-device

 ,


0

1

При запуске pm-hibernate иногда (кажется шансы растут с увеличением аптайма) в консоль начинают очень быстро флудиться ошибки вида

write-error on swap-device (какие-то цифры, меняются)
ну и сама гибернация не происходит в итоге. Если попытаться переключиться на гуи (alt-f7) то содержимое экрана зависает и больше не отвисает ни от каких действий. Но и так и так единственное что тут можно сделать это жёстко ребутнуть систему с потерей сессии.

Кажется этого не происходило на старом диске где свап-раздел был меньше (но точно не помню какой). Сейчас так

Filename				Type		Size		Used	Priority
/dev/sdb2                               partition	16777212	0	-2
/dev/zram0                              partition	7812496		0	10
Свап всегда почти пустой, память до конца не забита.

★★★★★

Последнее исправление: firkax (всего исправлений: 2)

Ты используешь в качестве свопа «zram + физический раздел диска»?

Обычно, кто так же делает, регулируют порядок работы выставлением приоритета и считают, что все ок. Но, видно, все же не все ok и лучше юзать zswap, если хочется задействовать физические разделы для свопа.


Это мысли в слух. На самом деле, я не знаю причины сбоя.

krasnh ★★★★★
()
Ответ на: комментарий от kirill_rrr

Если бы он не мог это сделать вообще он бы всегда сыпал эти ошибки. Но гибернация иногда работает, иногда нет. Вот два дня назад её делал (аптайм был 10 дней) - всё норм получилось, сегодня сделал - пришлось ребутаться.

Усыпляться на zram конечно нельзя, но у меня есть настоящий свап-раздел же, 16гб при том что памяти 8гб. И, кажется, пока было 4гб памяти + 8гб (а может 4 - не помню) свапа, тоже с zram-ом - ни разу такого не случалось.

firkax ★★★★★
() автор топика
Ответ на: комментарий от firkax

Поэкспериментируй с zramом и приоритетами разделов. Ну и может диск что ли проверить?

Или вот этот приоритет -2 что должен значить? Это же не 0 - использовать в последнюю очередь.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

-2 это значит использовать когда закончатся те у кого 0 и -1.

Экспериментировать особо негде, это придётся вывести ноут из работы и посвятить время попыткам повторить эти сбои специально.

firkax ★★★★★
() автор топика
Ответ на: комментарий от firkax

Ну а без этого придётся сидеть без гибернации на этом ноуте. Ошибка записи в своп это обычно ошибка записи в своп, возожно в момент когда он находится в процессе отключения.

kirill_rrr ★★★★★
()
Ответ на: комментарий от firkax

Арчвики пишет, что при использовании «zram+свопфайл», systemd само игнорирует zram при переходе в спящий режим.

Но у тебя-то нет systemd. )

krasnh ★★★★★
()
Последнее исправление: krasnh (всего исправлений: 1)
Ответ на: комментарий от firkax

Там четко написано, что systemd игнорирует блочные устройства zram при гибернации, дополнительное вмешательство не требуется. systemd предоставляет высокоуровневый интерфейс управления сном.

Хотя интерфейс ядра можно использовать напрямую, что быстрее, поскольку не требуется дополнительная обработка пользовательского пространства, рекомендуется использовать высокоуровневый интерфейс. Он работает эффективнее, выполняя дополнительные проверки безопасности, а также предоставляя механизмы перехвата до и после приостановки для корректной настройки аппаратных часов, восстановления беспроводной сети и т. д.

Jeronimo ★★★
()
Ответ на: комментарий от Jeronimo

Там четко написано, что systemd игнорирует блочные устройства zram

Повторю ещё раз, системг гибернацией не занимается, всё что он может сделать - отправить соответствующую команду ядру.

А зачем ты его запускаешь? systemctl hibernate же.

Затем что это штатная команда дебиана для гибернации (она, разумеется, тоже отправляет команду ядру для этого, а перед этим выполняет разные хуки). И она работает, как минимум если её запускать с маленьким аптаймом, да и с не маленьким она тоже иногда работает. А раньше работала всегда (в рамках того же самого debian 11 который и сейчас стоит).

firkax ★★★★★
() автор топика