flow_offload.h (08a7c7772b4db0be06e3b27239147c0a36e2a507) | flow_offload.h (4b61d3e8d3daebbde7ec02d593f84248fdf8bec2) |
---|---|
1#ifndef _NET_FLOW_OFFLOAD_H 2#define _NET_FLOW_OFFLOAD_H 3 4#include <linux/kernel.h> 5#include <linux/list.h> 6#include <linux/netlink.h> 7#include <net/flow_dissector.h> 8#include <linux/rhashtable.h> --- 375 unchanged lines hidden (view full) --- 384 enum flow_dissector_key_id key) 385{ 386 return dissector_uses_key(rule->match.dissector, key); 387} 388 389struct flow_stats { 390 u64 pkts; 391 u64 bytes; | 1#ifndef _NET_FLOW_OFFLOAD_H 2#define _NET_FLOW_OFFLOAD_H 3 4#include <linux/kernel.h> 5#include <linux/list.h> 6#include <linux/netlink.h> 7#include <net/flow_dissector.h> 8#include <linux/rhashtable.h> --- 375 unchanged lines hidden (view full) --- 384 enum flow_dissector_key_id key) 385{ 386 return dissector_uses_key(rule->match.dissector, key); 387} 388 389struct flow_stats { 390 u64 pkts; 391 u64 bytes; |
392 u64 drops; |
|
392 u64 lastused; 393 enum flow_action_hw_stats used_hw_stats; 394 bool used_hw_stats_valid; 395}; 396 397static inline void flow_stats_update(struct flow_stats *flow_stats, | 393 u64 lastused; 394 enum flow_action_hw_stats used_hw_stats; 395 bool used_hw_stats_valid; 396}; 397 398static inline void flow_stats_update(struct flow_stats *flow_stats, |
398 u64 bytes, u64 pkts, u64 lastused, | 399 u64 bytes, u64 pkts, 400 u64 drops, u64 lastused, |
399 enum flow_action_hw_stats used_hw_stats) 400{ 401 flow_stats->pkts += pkts; 402 flow_stats->bytes += bytes; | 401 enum flow_action_hw_stats used_hw_stats) 402{ 403 flow_stats->pkts += pkts; 404 flow_stats->bytes += bytes; |
405 flow_stats->drops += drops; |
|
403 flow_stats->lastused = max_t(u64, flow_stats->lastused, lastused); 404 405 /* The driver should pass value with a maximum of one bit set. 406 * Passing FLOW_ACTION_HW_STATS_ANY is invalid. 407 */ 408 WARN_ON(used_hw_stats == FLOW_ACTION_HW_STATS_ANY); 409 flow_stats->used_hw_stats |= used_hw_stats; 410 flow_stats->used_hw_stats_valid = true; --- 135 unchanged lines hidden --- | 406 flow_stats->lastused = max_t(u64, flow_stats->lastused, lastused); 407 408 /* The driver should pass value with a maximum of one bit set. 409 * Passing FLOW_ACTION_HW_STATS_ANY is invalid. 410 */ 411 WARN_ON(used_hw_stats == FLOW_ACTION_HW_STATS_ANY); 412 flow_stats->used_hw_stats |= used_hw_stats; 413 flow_stats->used_hw_stats_valid = true; --- 135 unchanged lines hidden --- |