[ovs-dev] [PATCH 2/2] ofproto: Get enough headroom in fail-open when connected to controller.
Ben Pfaff
blp at nicira.com
Wed Sep 1 19:56:34 UTC 2010
Since commit 750638bb "ofproto: Avoid ofpbuf_clone() for OFPAT_CONTROLLER
common case," send_packet_in() needs at least DPIF_RECV_MSG_PADDING bytes
of headroom, which ofpbuf_clone() doesn't supply. This commit should fix
that.
This fixes an assertion failure in ofpbuf_prealloc_headroom() via
send_packet_in().
Reported-by: Justin Pettit <jpettit at nicira.com>
---
ofproto/ofproto.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c
index adc5282..844083d 100644
--- a/ofproto/ofproto.c
+++ b/ofproto/ofproto.c
@@ -4154,7 +4154,8 @@ handle_odp_miss_msg(struct ofproto *p, struct ofpbuf *packet)
*
* See the top-level comment in fail-open.c for more information.
*/
- send_packet_in(p, ofpbuf_clone(packet));
+ send_packet_in(p, ofpbuf_clone_with_headroom(packet,
+ DPIF_RECV_MSG_PADDING));
}
ofpbuf_pull(packet, sizeof *msg);
--
1.7.1
More information about the dev
mailing list