dnsmasq: busy loop in proxy DHCP with a tagged range
Found 2026-10-29 while testing Rollcall's proxy DHCP mode (gdb on a stuck lab
rack controller). Affects dnsmasq 2.91 (Debian 13) and 2.93 (latest release).
Rollcall works around it by leaving the tag off proxy ranges
(cmd/rollcall/network.go, dnsmasqConfig).
| File | |
|---|---|
report.txt |
the report to send upstream (plain text, patch inline) |
repro.sh |
reproducer: sudo ./repro.sh /path/to/dnsmasq (two netns + veth, two PXE DISCOVERs) |
0001-proxy-dhcp-reset-context-tags.patch |
one-line fix against 2.93, applies with patch -p1 or git apply |
Results on a Debian 13 VM:
| dnsmasq | Configuration | CPU after two PXE requests |
|---|---|---|
| 2.91 (Debian) | tagged proxy range, log-dhcp |
100% |
| 2.93 | same | 100% |
| 2.93 + patch | same | 0% |
| 2.93 | no log-dhcp, dhcp-option for an absent tag |
69% |
| 2.93 + patch | same | 0% |
Status: not reported yet.