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