at v4.12 782 B view raw
1#ifndef __NET_PSAMPLE_H 2#define __NET_PSAMPLE_H 3 4#include <uapi/linux/psample.h> 5#include <linux/module.h> 6#include <linux/list.h> 7 8struct psample_group { 9 struct list_head list; 10 struct net *net; 11 u32 group_num; 12 u32 refcount; 13 u32 seq; 14}; 15 16struct psample_group *psample_group_get(struct net *net, u32 group_num); 17void psample_group_put(struct psample_group *group); 18 19#if IS_ENABLED(CONFIG_PSAMPLE) 20 21void psample_sample_packet(struct psample_group *group, struct sk_buff *skb, 22 u32 trunc_size, int in_ifindex, int out_ifindex, 23 u32 sample_rate); 24 25#else 26 27static inline void psample_sample_packet(struct psample_group *group, 28 struct sk_buff *skb, u32 trunc_size, 29 int in_ifindex, int out_ifindex, 30 u32 sample_rate) 31{ 32} 33 34#endif 35 36#endif /* __NET_PSAMPLE_H */