Description of problem: Currently, OVS doesn't request extack messages when dealing with netlink communication. OVS kernel datapath doesn't make use of it, tc does and supporting it can enhance the visibility of issues on tc layer. So that it can log errors that are more meaningful than: 2021-01-14T13:13:02.790Z|00202|netlink_socket(handler13)|DBG|received NAK error=0 (Invalid argument) Pretty much the whole tc is using this construct: if (type && type != TUNNEL_GENEVE_OPT) { NL_SET_ERR_MSG(extack, "Duplicate type for geneve options"); return -EINVAL; } Logging that error message is important for the admin to understand why it failed to add the flow to tc. Version-Release number of selected component (if applicable): checked on ovs 78e712c0b1da ("lldp: do not leak memory on multiple instances of TLVs") On a parallel note, I'm looking into adding kernel trace points on NL_SET_ERR_MSG(), so that diagnosing the kernel doesn't rely on the userspace that much.
(In reply to Marcelo Ricardo Leitner from comment #0) > On a parallel note, I'm looking into adding kernel trace points on > NL_SET_ERR_MSG(), so that diagnosing the kernel doesn't rely on the > userspace that much. This part is done: https://github.com/torvalds/linux/commit/7e3ce05e7f650371061d0b9eec1e1cf74ed6fca0 and can be used to double check the implementation of the ovs change.
posted upstream: https://patchwork.ozlabs.org/project/openvswitch/patch/162820055142.23997.13047328062582665150.stgit@fed.void/
Applied to master. Will be included in 2.17