Feb. 9th, 2024

ACPI много лет работает с ошибкой у всех производителей, кроме некоторого очень небольшого количества производителей. Если мы забьем в гугл "ACPI states" то можно найти какую-то такую картинку



Иногда люди придумывают что-то - а зачем это, они сами не знают. Так и тут. Что мы видим на картинке? Есть автомат состояний. Когда включается питание, то мы попадаем в G3. Когда мы поработали и выключились, то мы попадаем в G2.

Ну попадаем и попадаем - и шо? Жалко, что ли? А то, что одни гении придумали G3 и G2 - а другие гении придумали сетевые карточки, и в них режим WOL - wake on lan. Так вот, через мои руки прошло не то чтобы так уж много - но около 10 плат разных производителей, у всех них кроме одной наблюдался баг: из G3 wake on lan не работает. Чтобы WOL работал, надо руками загрузиться, тогда ОС перенастраивает сетевуху, разрешая в ней этот режим, после этого производится выключение, оно вызывает переход в G2, и только тогда оно будет работать. То есть, когда мы в биос разрешаем WOL, то обычно это WOL из G2. Wol из G3 у большинства материнских плат не работает!

Багу больше 10 лет, чем думали производители, зачем так делать и почему за более чем 10 лет никто это так и не исправил - мне неясно.

Я видел статьи о том, что некоторые придумали костыль: они в биосе ставят After power loss: Turn On. Если питание пропало, то когда оно появляется, комп сам грузится. Дальше некоторым образом комп понимает, что это была особая загрузка после утери питания, конфигурирует сетевуху - и выключается. Вот этот этап - понять, нужно ли выключаться, - полон костылей и велосипедостроения! На хабре предлагали использовать пинги, я когда-то пробовал обертку поверх 'sudo dmidecode | grep Wake'. Но нормального решения, так чтобы поставил в биос - и все само работало, по сей день нет. И как я понимаю - не будет.

June 2025

S M T W T F S
1 23 456 7
8 9 1011121314
15161718192021
22232425262728
2930     

Style Credit

Expand Cut Tags

No cut tags