Using the upcoming hwe-6.14 kernel (6.14.0-24.2424~24.04.2), the iproute2 proposed version from my PPA, and a slightly modified ubuntu- fan startup script, I am able to successfully pass the smoke test.
** Description changed: [Impact] For ubuntu-fan to work the ip command (from iproute2) needs to know how to pass fan specific arguments to the kernel. This is done at a certain offset of a common data structure. And for that both the user-space side and the kernel have to know which offset that is. Normally this is not changing but with HWE kernels there is a chance that GA kernel and HWE kernel use different offsets. Instead of having to update iproute2 each time this happens the kernel (starting with 6.14 is providing an interface to query the offset and change iproute2 once to make use of that. This SRU targets only devel (Questing) and Noble for iproute2 because series in between will never get a newer kernel version than that they released with. So whatever value for the offset is hard-coded into that version of iproute2 is the correct one. But Noble will soon get hwe-6.14 and that changes the offset from 33 to 34. [Fix] The kernel part is already included in the 6.14 kernel (25.04/Plucky) and onward. The next step is to roll out iproute2 to Questing and Noble (debdiffs in this bug report) which reads the offset from /proc/sys/net/fan/IFLA_VXLAN_FAN_MAP if available. The fallback is to use the hard-coded value. A final step will be to make slight modifications to the ubuntu-fan package which will ensure the vxlan module is loaded before fan networks get configured. This is required to have the offset file available. [How to test] To test the kernel provides the new values: $ sudo modprobe vxlan $ sudo sysctl -a | grep -i vxlan net.fan.IFLA_VXLAN_FAN_MAP = 34 net.fan.vxlan = 4 $ cat /proc/sys/net/fan/IFLA_VXLAN_FAN_MAP 34 To test the whole stack: - 1. Install ubuntu-fan ... (need to add more info once I have details) + 1. Install: ubuntu-fan net-tools bridge-utils iproute2 docker.io git + 2. Clone: git clone https://git.launchpad.net/~canonical-kernel-team/+git/autotest-client-tests + 3. Obtain the network address of the default route device (for example 191.168.122.0/24) + 4. cd autotest-client-tests/ubuntu_fan_smoke_test + 5. sudo ./ubuntu_fan_smoke_test.sh <network address from 3.> [Regression potential] All changes affect the ubuntu-fan networking only. Most likely the offset is incorrect which would show up in journalctl | grep fan-net. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2106115 Title: Expose IFLA_VXLAN_FAN_MAP version via sysctl/proc To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/iproute2/+bug/2106115/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
