TCP flags are already extracted from the flow, no need to parse them again.
Signed-off-by: Jarno Rajahalme <[email protected]> --- lib/dpif-netdev.c | 2 +- lib/dpif.c | 2 +- ofproto/ofproto-dpif-upcall.c | 2 +- ofproto/ofproto-dpif.c | 6 ++---- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 827e8ae..ecc2007 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -1710,7 +1710,7 @@ dp_netdev_flow_used(struct dp_netdev_flow *netdev_flow, netdev_flow->used = time_msec(); netdev_flow->packet_count++; netdev_flow->byte_count += packet->size; - netdev_flow->tcp_flags |= packet_get_tcp_flags(packet, key); + netdev_flow->tcp_flags |= ntohs(key->tcp_flags); } static void diff --git a/lib/dpif.c b/lib/dpif.c index b983b25..08fffe4 100644 --- a/lib/dpif.c +++ b/lib/dpif.c @@ -778,7 +778,7 @@ void dpif_flow_stats_extract(const struct flow *flow, const struct ofpbuf *packet, long long int used, struct dpif_flow_stats *stats) { - stats->tcp_flags = packet_get_tcp_flags(packet, flow); + stats->tcp_flags = ntohs(flow->tcp_flags); stats->n_bytes = packet->size; stats->n_packets = 1; stats->used = used; diff --git a/ofproto/ofproto-dpif-upcall.c b/ofproto/ofproto-dpif-upcall.c index c6236de..670dae5 100644 --- a/ofproto/ofproto-dpif-upcall.c +++ b/ofproto/ofproto-dpif-upcall.c @@ -1026,7 +1026,7 @@ handle_upcalls(struct handler *handler, struct list *upcalls) } else { miss = existing_miss; } - miss->stats.tcp_flags |= packet_get_tcp_flags(packet, &miss->flow); + miss->stats.tcp_flags |= ntohs(miss->flow.tcp_flags); miss->stats.n_bytes += packet->size; miss->stats.n_packets++; diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index 4b00d47..7a7145d 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -3966,12 +3966,10 @@ ofproto_trace(struct ofproto_dpif *ofproto, const struct flow *flow, } if (rule || ofpacts) { - uint16_t tcp_flags; - - tcp_flags = packet ? packet_get_tcp_flags(packet, flow) : 0; trace.result = ds; trace.flow = *flow; - xlate_in_init(&trace.xin, ofproto, flow, rule, tcp_flags, packet); + xlate_in_init(&trace.xin, ofproto, flow, rule, ntohs(flow->tcp_flags), + packet); if (ofpacts) { trace.xin.ofpacts = ofpacts; trace.xin.ofpacts_len = ofpacts_len; -- 1.7.10.4 _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
