Flow transactions expect a response after the operation has completed
but the request did not have NLM_F_ECHO set. This caused userspace
to receive only the Netlink ACK instead of a real response, making
it appear that the operation had failed when it actually succeeded.
struct odp_header *odp_header;
nl_msg_put_genlmsghdr(buf, 0, odp_flow_family,
- NLM_F_REQUEST | flow->nlmsg_flags, flow->cmd, 1);
+ NLM_F_REQUEST | NLM_F_ECHO | flow->nlmsg_flags,
+ flow->cmd, 1);
odp_header = ofpbuf_put_uninit(buf, sizeof *odp_header);
odp_header->dp_ifindex = flow->dp_ifindex;