CFSworks
08/14/2024, 4:15 PMeth0
has gone away. The BMC no longer thinks of itself as a one-Ethernet-port device sitting on the side of an unmanaged switch: the switch is part of the TPi2 and the BMC thinks of itself as having 6 (4 internal/node + 2 external) independent Ethernet ports that the user can configure however they want and it will apply the appropriate hardware configuration to the switch chip. The default configuration in the new file -- a bridge over everything -- is equivalent to the "unmanaged switch" situation in 2.0.x.
If the user has never modified /etc/network/interfaces
, then the overlayfs system wouldn't have created a file in the read-write volume to override it, and the 2.0.x->2.1.x upgrade just replaces the "default" file and the board continues to behave exactly the same and the user is happy. But if the file has been modified, the firmware upgrade will not change that file, and the effective result is all switch ports are deactivated (because there's no configuration telling them to be active, bridged or otherwise).
So the question is what the 2.1.x firmware ought to do in that situation. The way I see it, there are 3 options:
1. Ignore it. Let the network stay disabled until the user intervenes (over UART or through a safemode boot) to rectify the situation. I doubt anybody is thrilled about this option, but it's what's in the repo right now.
2. Post-upgrade, scan the /etc/network/interfaces
file to see if eth0
is mentioned and/or `ge#`/`node#` are NOT mentioned. If so, trigger a reboot, which rolls back the upgrade but keeps the BMC reachable.
3. Attempt automatic migration of this file.