Симптом: Routerich AX3000 сам перезагружается «случайно» или по утрам, переустановка прошивки не помогает.
Прошивка: 24.10.6, r29141-81be8a8869, устройство AX3000 v1.
Суть: это kernel panic. В обычных логах (logread) её не видно — RAM-лог стирается при каждом ребуте. Но ядро успевает записать дамп в область, которая переживает и панику, и потерю питания:
ls /sys/fs/pstore/
Если внутри лежит dmesg-ramoops-* — читаем и смотрим строки Modules linked in: и Call trace:, там имя виновного модуля:
cat /sys/fs/pstore/dmesg-ramoops-0
У меня под одним симптомом оказалось два независимых бага.
1. Модуль lp от принт-сервера p910nd
Пакет p910nd тянет паразитные LPT-драйверы (lp, ppdev), которые на этом железе роняют ядро на ~12-й секунде загрузки. Битую память инициализация ловит не каждый раз — оттого ребуты кажутся «случайными». В дампе видно Comm: kmodloader и Modules linked in: lp(+).
Если принт-сервером не пользуетесь — удалить:
opkg remove luci-app-p910nd p910nd kmod-usb-printer kmod-lp kmod-ppdev
rm -f /etc/modules.d/52-lp /etc/modules.d/50-ppdev
2. WiFi-драйвер mt7915e + 5 ГГц в режиме HE160
После удаления lp вскрылась вторая паника — уже под трафиком, на ~4-й минуте работы. В дампе pc: mt7915e..., Comm: napi/phy0 или swapper. Причина — 5 ГГц в режиме HE160 (160 МГц), известная болячка mt76.
Лечение — срезать ширину канала до 80 МГц:
uci set wireless.radio1.htmode='HE80'
uci commit wireless
wifi up radio1
radio1 — это 5 ГГц (сверьтесь через uci show wireless). На быту разница в скорости незаметна, зато ядро перестаёт падать. Если и на HE80 падает — пробуйте HE40 или отключение WED-оффлоада.
Что оказалось ни при чём (проверил и отсёк): питание, память, температура, крон, CIDR-списки.
Вывод: необъяснимый ребут OpenWrt → первым делом ls /sys/fs/pstore/, а не переустановка. Дамп прямо называет виновника.