Testcase 909: ofproto-dpif - patch ports
The ofpbuf->base is set to OFPBUF_STUB at
ofputil_decode_switch_features()->ofpbuf_use_const()
so ofpbuf_delete does not free it. Call trace is below:
vconn_stream_recv(vconn-stream.c:155)
do_recv(vconn.c:640)
vconn_recv(vconn.c:598)
vconn_recv_block(vconn.c:738)
vconn_recv_xid__(vconn.c:758)
port_iterator_fetch_features(ovs-ofctl.c:846)
port_iterator_init(ovs-ofctl.c:889)
fetch_ofputil_phy_port(ovs-ofctl.c:975)
Signed-off-by: William Tu <[email protected]>
---
utilities/ovs-ofctl.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c
index 4dbd4ed..8e92160 100644
--- a/utilities/ovs-ofctl.c
+++ b/utilities/ovs-ofctl.c
@@ -947,6 +947,8 @@ port_iterator_destroy(struct port_iterator *pi)
}
ofpbuf_delete(pi->reply);
+ /* free because the base of ofpbuf is OFPBUF_STUB. */
+ free(pi->reply->base);
}
}
--
2.5.0
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev