summaryrefslogtreecommitdiff
path: root/lib/dp-packet.c
diff options
context:
space:
mode:
authorDaniele Di Proietto <diproiettod@vmware.com>2015-05-18 10:47:46 -0700
committerPravin B Shelar <pshelar@nicira.com>2015-05-18 15:14:02 -0700
commit82eb5b0abaf0125898a89e032f27fdd08e03169b (patch)
tree82f7f201f54354ffa043876e19bf91981c217da7 /lib/dp-packet.c
parent8613db65be6a4641eebc01765637701287f78efc (diff)
downloadopenvswitch-82eb5b0abaf0125898a89e032f27fdd08e03169b.tar.gz
dp-packet: Remove 'frame' member.
In 'struct ofpbuf' the 'frame' pointer was used to parse different kinds of data (Ethernet, OpenFlow, Netlink attributes). For Ethernet packets the 'frame' pointer was supposed to have the same value as the 'data' pointer. Since 'struct dp_packet' is only used for Ethernet packets, there's no need for a separate 'frame' pointer: we can use the 'data' pointer instead. Signed-off-by: Daniele Di Proietto <diproiettod@vmware.com> Acked-by: Pravin B Shelar <pshelar@nicira.com>
Diffstat (limited to 'lib/dp-packet.c')
-rw-r--r--lib/dp-packet.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/lib/dp-packet.c b/lib/dp-packet.c
index b2d9d5c69..375b7b715 100644
--- a/lib/dp-packet.c
+++ b/lib/dp-packet.c
@@ -27,7 +27,6 @@ dp_packet_init__(struct dp_packet *b, size_t allocated, enum dp_packet_source so
{
b->allocated = allocated;
b->source = source;
- b->frame = NULL;
b->l2_pad_size = 0;
b->l2_5_ofs = b->l3_ofs = b->l4_ofs = UINT16_MAX;
b->md = PKT_METADATA_INITIALIZER(0);
@@ -164,12 +163,6 @@ dp_packet_clone_with_headroom(const struct dp_packet *buffer, size_t headroom)
new_buffer = dp_packet_clone_data_with_headroom(dp_packet_data(buffer),
dp_packet_size(buffer),
headroom);
- if (buffer->frame) {
- uintptr_t data_delta
- = (char *)dp_packet_data(new_buffer) - (char *)dp_packet_data(buffer);
-
- new_buffer->frame = (char *) buffer->frame + data_delta;
- }
new_buffer->l2_pad_size = buffer->l2_pad_size;
new_buffer->l2_5_ofs = buffer->l2_5_ofs;
new_buffer->l3_ofs = buffer->l3_ofs;
@@ -255,11 +248,6 @@ dp_packet_resize__(struct dp_packet *b, size_t new_headroom, size_t new_tailroom
new_data = (char *) new_base + new_headroom;
if (dp_packet_data(b) != new_data) {
- if (b->frame) {
- uintptr_t data_delta = (char *) new_data - (char *) dp_packet_data(b);
-
- b->frame = (char *) b->frame + data_delta;
- }
dp_packet_set_data(b, new_data);
}
}
@@ -479,12 +467,11 @@ dp_packet_resize_l2_5(struct dp_packet *b, int increment)
dp_packet_pull(b, -increment);
}
- b->frame = dp_packet_data(b);
/* Adjust layer offsets after l2_5. */
dp_packet_adjust_layer_offset(&b->l3_ofs, increment);
dp_packet_adjust_layer_offset(&b->l4_ofs, increment);
- return b->frame;
+ return dp_packet_data(b);
}
/* Adjust the size of the l2 portion of the dp_packet, updating the l2
@@ -495,5 +482,5 @@ dp_packet_resize_l2(struct dp_packet *b, int increment)
{
dp_packet_resize_l2_5(b, increment);
dp_packet_adjust_layer_offset(&b->l2_5_ofs, increment);
- return b->frame;
+ return dp_packet_data(b);
}