Lines Matching defs:pktgen_dev
265 struct pktgen_dev { struct
269 struct proc_dir_entry *entry; /* proc file */
270 struct pktgen_thread *pg_thread;/* the owner */
271 struct list_head list; /* chaining in the thread's run-queue */
272 struct rcu_head rcu; /* freed by RCU */
274 int running; /* if false, the test will stop */
279 __u32 flags;
280 int xmit_mode;
281 int min_pkt_size;
282 int max_pkt_size;
283 int pkt_overhead; /* overhead for MPLS, VLANs, IPSEC etc */
284 int nfrags;
285 int removal_mark; /* non-zero => the device is marked for
288 struct page *page;
289 u64 delay; /* nano-seconds */
291 __u64 count; /* Default No packets to send */
292 __u64 sofar; /* How many pkts we've sent so far */
293 __u64 tx_bytes; /* How many bytes we've transmitted */
294 __u64 errors; /* Errors when trying to transmit, */
298 __u32 clone_count;
299 int last_ok; /* Was last skb sent?
303 ktime_t next_tx;
304 ktime_t started_at;
305 ktime_t stopped_at;
306 u64 idle_acc; /* nano-seconds */
308 __u32 seq_num;
310 int clone_skb; /*
320 char dst_min[IP_NAME_SZ]; /* IP, ie 1.2.3.4 */
321 char dst_max[IP_NAME_SZ]; /* IP, ie 1.2.3.4 */
322 char src_min[IP_NAME_SZ]; /* IP, ie 1.2.3.4 */
323 char src_max[IP_NAME_SZ]; /* IP, ie 1.2.3.4 */
325 struct in6_addr in6_saddr;
326 struct in6_addr in6_daddr;
327 struct in6_addr cur_in6_daddr;
328 struct in6_addr cur_in6_saddr;
330 struct in6_addr min_in6_daddr;
331 struct in6_addr max_in6_daddr;
332 struct in6_addr min_in6_saddr;
333 struct in6_addr max_in6_saddr;
338 __be32 saddr_min; /* inclusive, source IP address */
339 __be32 saddr_max; /* exclusive, source IP address */
340 __be32 daddr_min; /* inclusive, dest IP address */
341 __be32 daddr_max; /* exclusive, dest IP address */
343 __u16 udp_src_min; /* inclusive, source UDP port */
344 __u16 udp_src_max; /* exclusive, source UDP port */
345 __u16 udp_dst_min; /* inclusive, dest UDP port */
346 __u16 udp_dst_max; /* exclusive, dest UDP port */
349 __u8 tos; /* six MSB of (former) IPv4 TOS
351 __u8 traffic_class; /* ditto for the (former) Traffic Class in IPv6
355 unsigned int n_imix_entries;
356 struct imix_pkt imix_entries[MAX_IMIX_ENTRIES];
358 __u8 imix_distribution[IMIX_PRECISION];
361 unsigned int nr_labels; /* Depth of stack, 0 = no MPLS */
362 __be32 labels[MAX_MPLS_LABELS];
365 __u8 vlan_p;
366 __u8 vlan_cfi;
367 __u16 vlan_id; /* 0xffff means no vlan tag */
369 __u8 svlan_p;
370 __u8 svlan_cfi;
371 __u16 svlan_id; /* 0xffff means no svlan tag */
373 __u32 src_mac_count; /* How many MACs to iterate through */
374 __u32 dst_mac_count; /* How many MACs to iterate through */
376 unsigned char dst_mac[ETH_ALEN];
377 unsigned char src_mac[ETH_ALEN];
379 __u32 cur_dst_mac_offset;
380 __u32 cur_src_mac_offset;
381 __be32 cur_saddr;
382 __be32 cur_daddr;
383 __u16 ip_id;
384 __u16 cur_udp_dst;
385 __u16 cur_udp_src;
386 __u16 cur_queue_map;
387 __u32 cur_pkt_size;
388 __u32 last_pkt_size;
390 __u8 hh[14];
399 __u16 pad; /* pad out the hh struct to an even 16 bytes */
401 struct sk_buff *skb; /* skb we are to transmit next, used for when we
404 struct net_device *odev; /* The out-going device.
412 netdevice_tracker dev_tracker;
413 char odevname[32];
414 struct flow_state *flows;
415 unsigned int cflows; /* Concurrent flows (config) */
416 unsigned int lflow; /* Flow length (config) */
417 unsigned int nflows; /* accumulated flows (stats) */
418 unsigned int curfl; /* current sequenced flow (state)*/
420 u16 queue_map_min;
421 u16 queue_map_max;
422 __u32 skb_priority; /* skb priority field */
423 unsigned int burst; /* number of duplicated packets to burst */
424 int node; /* Memory node */
427 __u8 ipsmode; /* IPSEC mode (config) */
428 __u8 ipsproto; /* IPSEC type (config) */
429 __u32 spi;
430 struct xfrm_dst xdst;
431 struct dst_ops dstops;
433 char result[512];