LINUX.ORG.RU

Gentoo. Suspend to RAM. Детские проблемы в 2014.

 , , ,


0

1

Добрый вечер всем местным гентушникам и сочувствующим. Такая проблема на этот раз. Имеется звуковая карта Asus Xonar DG, работает хорошо, но есть у неё одна проблема - некорректно просыпается после s2ram (модуль ядра snd_oxygen). Звука нет, перезапуск alsa после suspend выдаёт ошибку:

# /etc/init.d/alsasound restart

* WARNING: you are stopping a boot service

* Storing ALSA Mixer Levels ... [ ok ]

* Restoring Mixer Levels ...

alsactl: set_control:1461: Cannot write control '2:0:0:Headphone Playback Volume:0' : Input/output error

alsactl: set_control:1461: Cannot write control '2:0:0:Headphone Playback Switch:0' : Input/output error [ ok ]

Причём эта ошибка выдаётся ТОЛЬКО после suspend, при обычной загрузке /etc/init.d/alsasound restart отрабатывает отлично. Звук возвращается только ребутом, а это делает suspend to ram бессмысленным. Объясните, куда копать.

Объясните, куда копать.

В сторону баг трекера ядра.

kostik87 ★★★★★
()

Gentoo. Suspend to RAM. Детские проблемы в 2014.

Windows. Suspend to RAM. Детские проблемы в 2014. Винда, похоже, не умеет в чистый саспенд в память, поэтом держит на винте увесистый hiberfil.sys. OS X тоже не умеет без swap. А вы говорите, детские проблемы в линуксе...

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

Винда, похоже, не умеет в чистый саспенд в память, поэтом держит на винте увесистый hiberfil.sys.

Винда умеет. Вы путаете Suspend To Disk и Suspend To Ram. В первом случае это спящий режим, во-втором - ждущий.

У меня в Gentoo на Acer Aspire V3 прекрасно работают оба, разумеется ясно, что в первом случае состояние памяти сохраняется в SWAP, а во втором случае на память подаётся питания, хотя вся остальная система остановлена.

Ну, а у ТС проблема с его конкретной железкой, возможно нужно поднастроить переход в сон или ждущий режим, но для этого использовать не стандартные функции s3 и s4 ядра, а например использовать TuxOnIce, хотя конечно должно работать и на стандартной подсистеме ядра.

В любом случае это баг в конкретном драйвере звуковой карты.

UPD: Возможно, проблема не только в драйвере, а в железе (звуковой карте) в целом, вот тема http://forums.whirlpool.net.au/archive/2162339, здесь описывается точно такая же проблема, но уже на Windows 8:

Ok i'm no way a computer novice but this one has me stumped.

After the computer has woken from sleep the sound card has gone from device manager and obviously no sound.

Scanning for hardware changes doesn't bring the card up and the only way for it to be recognised is by doing a reboot.

I have tried the newest drivers, looked in the sleep options for some way of keeping the card awake – no option there. No options within the cards properties either.

Running Win8.

Intel i5-2400 with Gigabyte z68p-ds3 motherboard.

Anyone any ideas?

Так что, ТС, меняй звуковую карту, ну или не использую спящий и ждущий режимы.

В общем, в той теме предположили, что проблема с материнской платой, хотя автор темы пишет, что при прошлой установке системы у него всё работало нормально.

Так что, ТС, попробуйте обновить BIOS (UEFI) вашей материнской платы.

Ну и разумеется читайте баг трекер ядра.

Удачи.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 2)
Ответ на: комментарий от xtraeft

это такой дефект мышления

эти же люди, когда им говоришь про проблемы жизни в России, тыкают в Запад: «а у них там негров линчуют и вообще скоро доллар обесценится!!!»

anonymous
()
Ответ на: комментарий от xtraeft

Мол, там не работает, так и в линуксе не будет?

Я говорю, что с этим во всех этих ОС не все гладко. Но в данном случае виноват конечно линукс, доо.

Deleted
()
Ответ на: комментарий от xtraeft

Ну и раз пошла такая пьянка (смотри комментарий kostik87 про винду), вот тебе про макось:

“sudo pmset -a hibernatemode 0″ = suspend to RAM only (default on desktops)
“sudo pmset -a hibernatemode 1″ = suspend to disk only
“sudo pmset -a hibernatemode 3″ = suspend to disk + RAM (default on laptops)

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

Я говорю, что с этим во всех этих ОС не все гладко

И даже тут ты промазал со своими рассуждениями.

Но в данном случае виноват конечно линукс, доо.

Автор треда пользуется линуксом, в котором не работает фича. Поэтому да, виноват. Причем тут винда?

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

эти же люди, когда им говоришь про проблемы жизни в России, тыкают в Запад: «а у них там негров линчуют и вообще скоро доллар обесценится!!!»

Ну что вы, посматривайте дальше свой ящик, чо. Я о том, что проблемы есть везде. А не только у сабжа.

Deleted
()
Ответ на: комментарий от xtraeft

Поэтому да, виноват. Причем тут винда?

Притом, что у меня в ней оно тоже не работает. Поэтому да, винда виновата :)

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

даже если бы проблемы были везде - а это не так - то какое отношение проблемы венды и макоси имеют к проблемам автора? ему что, от этого теплее станет?

тебе не стыдно быть таким тупым?

anonymous
()
Ответ на: комментарий от Deleted

что у меня в ней оно тоже не работает. Поэтому да, винда виновата :)

1. Ты криворукий.
2. За помощью обратился не ты, а Barbudos. Аноним выше все верно уже разжевал.

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

даже если бы проблемы были везде - а это не так - то какое отношение проблемы венды и макоси имеют к проблемам автора? ему что, от этого теплее станет?

Ну давай, расскажи мне, как в США хорошо живется :)

Детские проблемы в линуксе в 2014 году. Тема треда. Что не так? Я тебе гору таких же проблем найду в других осях. ТС открыл для себя проблему, но это ни для кого не новость :)

тебе не стыдно быть таким тупым?

Мне стыдно за ТС, так как он не понимает, что проблема не только в линуксе.

Deleted
()
Ответ на: комментарий от xtraeft

1. Ты криворукий.

Предлагаешь мне снести hiberfil.sys и попробовать без него? :)

2. За помощью обратился не ты

Мне помощь по винде не требуется :) Но спасибо за предложение.

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

да ты реально идиот, с логикой тебя в детстве не подружили, теперь путаешься в трёх соснах, бедняга

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

да ты реально идиот, с логикой тебя в детстве не подружили,

Да, не каждый идиот поймет, что проблемы-то с железом в основном. И нет тут никаких детских проблем :)

Deleted
()
Ответ на: комментарий от kostik87

Windows есть Windows, там всё отлично просыпается. Значит, ни звуковуха, ни биос, ни мать тут совершенно не при чём. Виноват кривой модуль ядра snd_oxygen.

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

у тебя эта же звуковуха не просыпается в винде и макоси?

Причем тут звуковуха? Попробуй отправить в suspend-to-ram без swap/hiberfil.sys. Если прокатит, можешь регистрироваться на ЛОРе и ставить мне метку идиота :)

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

Причем тут звуковуха?

понятно, вердикт «идиот» таки подтверждён

anonymous
()
Ответ на: комментарий от Deleted

Ядро 3.16.5. Причём этот баг был и на более ранних ядрах в Kubuntu 12.04 и в Debian Sid. С моим ядром всё хорошо, а вот с модулем snd_oxygen - не очень.

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

Windows прекрасно умеет чистый саспенд в память, без всяких hiberfil.sys.

Тогда удали его, и подкачку. И попробуй снова. У винды вроде как используется гибридный suspend: на диск и в память одновременно, если подкачка и тот системный файл присутствуют. Так что чистый suspend в память в винде не используется бай дефолт, в отличие от.

Ты уверен, что в винде используется чистый suspend-to-ram ?

Deleted
()
Последнее исправление: Deleted (всего исправлений: 2)
Ответ на: комментарий от Deleted

Да хрен с ней, с виндой. Даже если ты и прав насчет обязательного наличия файла подкачки, то это не детская проблема, а архитектурное решение, и оно работает, в отличие от моей звуковухи. Остынь. Вообще, не трогай винду. Начиная с Вин 7 - это недостижимый уровень для линукса, а когда выйдет 10ка - выкину линукс на помойку.

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

Семерочка умела, а восьмерочка внезапно разучилась?

Именно об этом обычный юзер и подумает :) По статейке, лол, еще и настраивать надо, сколько там кликов, кстати? Вот тебе и современный десктоп :)

Deleted
()
Ответ на: комментарий от Barbudos

это не детская проблема, а архитектурное решение, и оно работает, в отличие от моей звуковухи.

Да да, конечно.

Вообще, не трогай винду. Начиная с Вин 7 - это недостижимый уровень для линукса,

Твое проприетарное говно с кнопочками и менюшками никто не трогает, радуйся, что у тебя железо лучше работает в ней. А у моего кента всё наоборот, к примеру :)

а когда выйдет 10ка - выкину линукс на помойку.

Ну посмотрим :)

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

радуйся, что у тебя железо лучше работает в ней. А у моего кента всё наоборот, к примеру :)

Этого не может быть, потому что не может быть никогда. Ты сам это знаешь, и поэтому поставил смайлик.

Ну посмотрим :)

Опять смайлик. Мы посмотрим, как доля линукса на десктопах упадёт с 1 до 0.5%.

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

Этого не может быть, потому что не может быть никогда. Ты сам это знаешь, и поэтому поставил смайлик.

Смайлик намекал на 8/8.1. Сходи на виндофорумы да погляди на детские проблемы винды в 2014-ом. В линаксе хоть ядро откатить можно, а в твоей божественной только ждать и надеяться на вендора.

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

Кривое acpi, кое-как работающее под вендой (иначе кстати клеить логотип оффтопика на корпус нельзя: http://msdn.microsoft.com/en-us/windows/hardware/gg463010.aspx ), это конечно исключительно проблемы ляликса, да :)

aml

 If (\_OSI ("Windows 2006"))
                {
                    Store (0x01, \WVIS)
                }
        
                If (\_OSI ("Windows 2009"))
                {
                    Store (0x01, \WIN7)
                }
...
If (And (Local1, 0x80))
            {
                If (\WIN7)
                {
                    If (LNotEqual (And (Local1, 0x03), 0x03))
                    {
                        \VHYB (0x06, 0x03)
                    }
                }
                Else
                {
                    If (LEqual (And (Local1, 0x03), 0x03))
                    {
                        \VHYB (0x06, 0x02)

anonymous
()
Ответ на: комментарий от Barbudos

Мы посмотрим, как доля линукса на десктопах упадёт с 1 до 0.5%.

И это должно как-то негативно повлиять на линукс? Бугага, тебя циферки от маркетологов волнуют?

Deleted
()
Ответ на: комментарий от Barbudos

И вообще, ты баг репортил, или может ядро откатывал до LTS-версии? Или сразу побежал плакаться на ЛОР?

Это конечно проще, чем отладку модуля делать и с разрабами Linux Kernel консультироваться.

Deleted
()

возвращается только ребутом

Или выгрузкой-загрузкой модуля звуковухи без всякой перезагрузки (rmmod, modprobe).

Объясните, куда копать.

В соотв. скриптах можно перед засыпанием выгрузить модуль, а после просыпания загрузить. ЕМНИП blacklisted-modules . Дальше google должен помочь. Например: http://forums.gentoo.org/viewtopic-t-894138-view-previous.html?sid=e1361ba8bd...

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

Или выгрузкой-загрузкой модуля звуковухи без всякой перезагрузки (rmmod, modprobe).

Если только ТС его модулем собрал.

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

Это еще цветочки (и в конце концов выставленное по умолчанию неплохо работает).

У знакомого, после апгрейда с семерочки на восьмерочку ноута с нвидией и стационарного с ати (оба примерно 2009 года, Core2Duo/Quad, 4ГБ рамы и.т.д - т.е для вконтактиков и не самых-самых игорь вполне нормальное железо), каждый раз после автоматического обновления - чОрный экран с курсором на ноуте и просто черный, на стационарном.

Фишка в том, что начиная с какой-то определенной версии, видео-драйвера конкретно на этом железе глючат. В семерочке их просто не трогали - работает и ладно. А вот какой гений в восьмерочке догадался обновление драйверов перенести из опциональных в «важные» и зделать это практически неотключаемым для нормального юзверя - сие есть тайна великая и непостижимая.

В результате, после нескольких откатов системы, автоматические обновления просто отключили. Очень классное решение для десктопа, да :)

anonymous
()

Зато бесплатно. Наслаждайся.

xasecoro
()

Комментарии как обычно: «не работает - не нужно» и «а у вас негров линчуют». Удачи в завоевании десктопов, красноглазики.

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

Или выгрузкой-загрузкой модуля звуковухи без всякой перезагрузки (rmmod, modprobe).

# rmmod snd_oxygen

rmmod: ERROR: Module snd_oxygen is in use

Barbudos
() автор топика

Короче, это баг, друзья. Dmesg после просыпания беснуется:

dmesg | grep snd [ 903.877350] snd_oxygen 0000:06:02.0: Refused to change power state, currently in D3

[ 903.997431] snd_oxygen 0000:06:02.0: enabling device (0000 -> 0001)

[ 903.998116] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

[ 1453.724455] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

[ 1453.724809] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

[ 1925.169589] snd_oxygen 0000:06:02.0: Refused to change power state, currently in D3

[ 1925.559824] snd_oxygen 0000:06:02.0: enabling device (0000 -> 0001)

[ 1925.560478] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

[ 1993.218552] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

[ 1993.218886] snd_oxygen 0000:06:02.0: oxygen: SPI wait timeout

И т.д. и т.п.

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

[ 1925.169589] snd_oxygen 0000:06:02.0: Refused to change power state, currently in D3

Судя по этой строчке, linux после просыпания «тупо» не может включить её, т.е. она, звуковуха, обесточена. А вот почему оно по SPI не отзывается ... явно баг :)

joy4eg ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.