You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 16, 2020. It is now read-only.
I've discovered that the issue appeared in linux kernel 4.2.x. It's caused flannel OOM issue here flannel-io/flannel#367 which was already fixed in flannel but not in kernel.
TL;DR
An error gets misinterpreted as an index from the switchdev ops (used by the bonding driver) to the rtnetlink fdb dump.
Now the details:
It looks like in 4.2 the bonding driver started using fdb ops from switchdev which returns EOPTNOTSUPP.
This error value gets propagated to the main fdb dump function as the idx value which is not expected to be negative and is forwarded to netlink.
On a 4.1 kernel idx is always > 0.
This code also changed from 4.2 to upstream tip. Looking into how this could be fixed. Not sure if the callbacks should be made to never return an error, or have a check in the rtnl_fdb_dump for negative values before assigning to idx.
It looks like the main issue has been fixed in 4.3.
However, that works only if you have CONFIG_NET_SWITCHDEV turned on. Oterwise, you'll still get an error from the unimplemented switchdev_port_obj_dump which returns an error instead of returning an index. Let's see what netdev has to say about below patch:
/cc @dtatulea
I've discovered that the issue appeared in linux kernel 4.2.x. It's caused flannel OOM issue here flannel-io/flannel#367 which was already fixed in flannel but not in kernel.
It is possible to reproduce the issue by running this script: https://github.com/kayrus/scripts/blob/master/deploy_ubuntu_cluster.sh (ssh ubuntu@ubuntu1 with password: passw0rd)
just run
bridge fdb
and it will run foreverprobably problem is somewhere here
The text was updated successfully, but these errors were encountered: