flow_offload.h (32f8c4093ac353a5f1b36cfed0ce0138faf8e15f) | flow_offload.h (d63db30c8537ba45208c156d71125db73d0fe522) |
---|---|
1#ifndef _NET_FLOW_OFFLOAD_H 2#define _NET_FLOW_OFFLOAD_H 3 4#include <linux/kernel.h> 5#include <net/flow_dissector.h> 6#include <net/sch_generic.h> 7 8struct flow_match { --- 246 unchanged lines hidden (view full) --- 255struct flow_block_offload { 256 enum flow_block_command command; 257 enum flow_block_binder_type binder_type; 258 struct tcf_block *block; 259 struct list_head *driver_block_list; 260 struct netlink_ext_ack *extack; 261}; 262 | 1#ifndef _NET_FLOW_OFFLOAD_H 2#define _NET_FLOW_OFFLOAD_H 3 4#include <linux/kernel.h> 5#include <net/flow_dissector.h> 6#include <net/sch_generic.h> 7 8struct flow_match { --- 246 unchanged lines hidden (view full) --- 255struct flow_block_offload { 256 enum flow_block_command command; 257 enum flow_block_binder_type binder_type; 258 struct tcf_block *block; 259 struct list_head *driver_block_list; 260 struct netlink_ext_ack *extack; 261}; 262 |
263struct flow_block_cb { 264 struct list_head list; 265 tc_setup_cb_t *cb; 266 void *cb_ident; 267 void *cb_priv; 268 void (*release)(void *cb_priv); 269 unsigned int refcnt; 270}; 271 272struct flow_block_cb *flow_block_cb_alloc(struct net *net, tc_setup_cb_t *cb, 273 void *cb_ident, void *cb_priv, 274 void (*release)(void *cb_priv)); 275void flow_block_cb_free(struct flow_block_cb *block_cb); 276 |
|
263int flow_block_cb_setup_simple(struct flow_block_offload *f, 264 struct list_head *driver_list, tc_setup_cb_t *cb, 265 void *cb_ident, void *cb_priv, bool ingress_only); 266 267#endif /* _NET_FLOW_OFFLOAD_H */ | 277int flow_block_cb_setup_simple(struct flow_block_offload *f, 278 struct list_head *driver_list, tc_setup_cb_t *cb, 279 void *cb_ident, void *cb_priv, bool ingress_only); 280 281#endif /* _NET_FLOW_OFFLOAD_H */ |