diff options
author | Vincenzo Maffione <vmaffione@FreeBSD.org> | 2020-11-25 21:23:58 +0000 |
---|---|---|
committer | Vincenzo Maffione <vmaffione@FreeBSD.org> | 2020-11-25 21:23:58 +0000 |
commit | b2920e183af8f3c0d21076b606173dc785f468af (patch) | |
tree | e510b62d2b25b511bbeb268795ad35278551f9fb /tools | |
parent | ea083f123780517243857e520a30d4f533d58a48 (diff) | |
download | src-test2-b2920e183af8f3c0d21076b606173dc785f468af.tar.gz src-test2-b2920e183af8f3c0d21076b606173dc785f468af.zip |
Notes
Diffstat (limited to 'tools')
-rw-r--r-- | tools/tools/netmap/nmreplay.c | 55 |
1 files changed, 24 insertions, 31 deletions
diff --git a/tools/tools/netmap/nmreplay.c b/tools/tools/netmap/nmreplay.c index 9736f8910612..e0a9e2146119 100644 --- a/tools/tools/netmap/nmreplay.c +++ b/tools/tools/netmap/nmreplay.c @@ -106,11 +106,26 @@ #define DDD(_fmt, ...) ED("--DDD-- " _fmt, ##__VA_ARGS__) #define _GNU_SOURCE // for CPU_SET() etc +#include <errno.h> +#include <fcntl.h> +#include <libnetmap.h> +#include <math.h> /* log, exp etc. */ +#include <pthread.h> +#ifdef __FreeBSD__ +#include <pthread_np.h> /* pthread w/ affinity */ +#include <sys/cpuset.h> /* cpu_set */ +#endif /* __FreeBSD__ */ +#include <signal.h> #include <stdio.h> -#define NETMAP_WITH_LIBS -#include <net/netmap_user.h> +#include <stdlib.h> +#include <string.h> /* memcpy */ +#include <stdint.h> +#include <sys/ioctl.h> +#include <sys/mman.h> #include <sys/poll.h> - +#include <sys/resource.h> // setpriority +#include <sys/time.h> +#include <unistd.h> /* * @@ -242,15 +257,6 @@ static struct nm_pcap_file *readpcap(const char *fn); static void destroy_pcap(struct nm_pcap_file *file); -#include <stdio.h> -#include <stdlib.h> -#include <stdint.h> -#include <unistd.h> -#include <fcntl.h> -#include <string.h> /* memcpy */ - -#include <sys/mman.h> - #define NS_SCALE 1000000000UL /* nanoseconds in 1s */ static void destroy_pcap(struct nm_pcap_file *pf) @@ -435,18 +441,6 @@ static int verbose = 0; static int do_abort = 0; -#include <stdlib.h> -#include <stdio.h> -#include <pthread.h> -#include <sys/time.h> - -#include <sys/resource.h> // setpriority - -#ifdef __FreeBSD__ -#include <pthread_np.h> /* pthread w/ affinity */ -#include <sys/cpuset.h> /* cpu_set */ -#endif /* __FreeBSD__ */ - #ifdef linux #define cpuset_t cpu_set_t #endif @@ -566,7 +560,7 @@ struct _qs { /* shared queue */ struct nm_pcap_file *pcap; /* the pcap struct */ /* parameters for reading from the netmap port */ - struct nm_desc *src_port; /* netmap descriptor */ + struct nmport_d *src_port; /* netmap descriptor */ const char * prod_ifname; /* interface name or pcap file */ struct netmap_ring *rxring; /* current ring being handled */ uint32_t si; /* ring index */ @@ -640,8 +634,8 @@ struct pipe_args { int cons_core; /* core for cons() */ int prod_core; /* core for prod() */ - struct nm_desc *pa; /* netmap descriptor */ - struct nm_desc *pb; + struct nmport_d *pa; /* netmap descriptor */ + struct nmport_d *pb; struct _qs q; }; @@ -843,7 +837,7 @@ fail: if (q->buf != NULL) { free(q->buf); } - nm_close(pa->pb); + nmport_close(pa->pb); return (NULL); } @@ -893,7 +887,7 @@ cons(void *_pa) continue; } /* XXX copy is inefficient but simple */ - if (nm_inject(pa->pb, (char *)(p + 1), p->pktlen) == 0) { + if (nmport_inject(pa->pb, (char *)(p + 1), p->pktlen) == 0) { RD(1, "inject failed len %d now %ld tx %ld h %ld t %ld next %ld", (int)p->pktlen, (u_long)q->cons_now, (u_long)p->pt_tx, (u_long)q->_head, (u_long)q->_tail, (u_long)p->next); @@ -939,7 +933,7 @@ nmreplay_main(void *_a) pcap_prod((void*)a); destroy_pcap(q->pcap); q->pcap = NULL; - a->pb = nm_open(q->cons_ifname, NULL, 0, NULL); + a->pb = nmport_open(q->cons_ifname); if (a->pb == NULL) { EEE("cannot open netmap on %s", q->cons_ifname); do_abort = 1; // XXX any better way ? @@ -1372,7 +1366,6 @@ parse_bw(const char *arg) * 24 useful random bits. */ -#include <math.h> /* log, exp etc. */ static inline uint64_t my_random24(void) /* 24 useful bits */ { |