Всем привет.
В ноутбуке стоит вот такой wi-fi адаптер (168c:0024):
03:00.0 Network controller: Qualcomm Atheros AR5418 Wireless Network Adapter [AR5008E 802.11(a)bgn] (PCI-Express) (rev 01)
Subsystem: Askey Computer Corp. AR5418 Wireless Network Adapter [AR5008E 802.11(a)bgn] (PCI-Express)
Physical Slot: 3
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at d7df0000 (64-bit, non-prefetchable) [size=64K]
Capabilities: [40] Power Management version 2
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
Capabilities: [60] Express Legacy Endpoint, MSI 00
Capabilities: [90] MSI-X: Enable- Count=1 Masked-
Capabilities: [100] Advanced Error Reporting
Capabilities: [140] Virtual Channel
Kernel driver in use: ath9k
Kernel modules: ath9k
ОС - Debian (микс из Unstable, Stable и Experimental через пиннинг, но в основном Unstable).
И присутствует такая проблема: рандомно отваливается соединение по вафле, в большинстве случаев оно отключается и сразу переподключается, но иногда оно остаётся типа подключенным, но не работает, то есть даже пинг до роутера не идёт (в этом случае помогает отключение/включение вафли программно, или рестарт network-manager).
Перед этими моментами идёт куча сообщений в dmesg:
ath: phy1: DMA failed to stop in 10 ms AR_CR=0x00000024 AR_DIAG_SW=0x42000020 DMADBG_7=0x000062c0
Воспроизводится и на 2.4G, и на 5G.
Проблема точно в клиенте, а не в роутере, поскольку на двух виндовых ноутах, виндовом десктопе и двух мобилах с андроидом, подключенным к тому же роутеру такой проблемы нет.
Воспроизводится на ядрах 4.19 и 5.2. Поскольку собирать самому ядра и bisect'ить мне лень, тупо методом тыка подключил репу oldstable и накатил ядро оттуда:
$ uname -rm
4.9.0-9-amd64 x86_64
Вот уже несколько дней полёт нормальный.
По ошибке гуглится довольно много ссылок, в том числе на bugzilla.kernel.org, но почти все они относятся к старым ядрам (типа 3.x).
Вопрос, если у кого воспроизводится, подтвердите. И ещё лучше, если у кого-то не воспроизводилось с ядром между 4.9 и 4.19, а с какой-то версии стало воспроизводится, дайте знать.
Я отправлю баг-репорт.