mirror of
https://github.com/amnezia-vpn/amneziawg-linux-kernel-module.git
synced 2026-10-13 21:34:34 +00:00
[GH-ISSUE #148] CPS config causes router hang and reboot #92
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
amnezia-vpn/amneziawg-linux-kernel-module#92
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @nik-sie on GitHub (Mar 7, 2026).
Original GitHub issue: https://github.com/amnezia-vpn/amneziawg-linux-kernel-module/issues/148
Environment:
opkg list-installed | grep amneziaInterface config:
Upon calling
ifup awg0, thelogread -fcommand gives following messages before router hangs and goes into reboot:The effect is consistent across all my routers.
@nik-sie commented on GitHub (Mar 7, 2026):
There might be some limitations on
i{n}parameters, however I couldn't find any in the documentation.@nik-sie commented on GitHub (Mar 11, 2026):
Might be related to #102, similar symptoms to #98
@rudenko-ks commented on GitHub (Aug 31, 2026):
This looks like a known-mechanism bug rather than anything specific to your
router. Your I1–I3 are several kilobytes decoded, and past a threshold the
device attributes leave no room for the first peer in the netlink dump. When
that happens
wg_get_device_dumpneither advances nor fails — it returns anon-zero length, netlink asks again, and the same message is produced
indefinitely. The reader spins and grows; on a small router that is enough to
take the box down.
I have written it up with the code path and measurements here: .
Two details that match your report:
Unable to access interface: Message too largeis the band just above thelooping one. Slightly smaller I-values hang instead of erroring, which is
worse — the error at least stops.
endpoint at handshake, and that costs 20 bytes (IPv4) or 32 (IPv6) in the
dump, so an interface that read fine can stop being readable once a client
connects.
If you want the interface back without waiting for a fix: shorten I1–I3 so the
total stays under roughly 3.5 KB. The exact threshold depends on the interface
name length, whether a header-protection key is set, and the endpoint family —
the formula is in the linked issue.