Hi Merlin,
This is an issue found in Tomato-Arm, but Victek said this also appeared in Asuswrt and this "acs_ifnames" is written and committed to NVRAM by wireless driver. Did you notice that?
Here is the issue:
Every time I reboot the router (one reboot after another without doing anything else), the free space of nvram get reduced a little bit (several bytes).
With simple compare of output of "nvram show", I found the token "acs_ifnames" get appended every time the router is rebooted.
Now it's "acs_ifnames=eth1 eth2 eth1 eth2 eth1 eth2 eth1 eth2 eth1 eth2 eth1 eth2", with several reboots, which seems like with every reboot, an "eth1 eth2" get appended.
Not a problem for Asuswrt or Asuswrt-Merlin. My routers get rebooted tons of times, and it's still fine - my main router only has "eth2" in it right now.
Another question: In normal case, does every reboot modify the nvram? I mean the physical nvram which get committed, not the map in the ram which is volatile. Except the "Apply" in the GUI when saving settings, is there any other case Tomato will do a "commit" to the nvram? Like saving some vars between every reboots and retrieve it later on.
No idea about Tomato, but it probably does need to commit back a few times during boot. Just working with the RAM copy is not reliable.