Author: vmaffione
Date: Sat Oct  3 13:19:48 2020
New Revision: 366393
URL: https://svnweb.freebsd.org/changeset/base/366393

Log:
  netmap: tools: fix several compiler warnings
  
  MFC after:    1 week

Modified:
  head/tools/tools/netmap/Makefile
  head/tools/tools/netmap/bridge.c
  head/tools/tools/netmap/ctrs.h
  head/tools/tools/netmap/lb.c
  head/tools/tools/netmap/nmreplay.c
  head/tools/tools/netmap/pkt-gen.c
  head/tools/tools/netmap/pkt_hash.c

Modified: head/tools/tools/netmap/Makefile
==============================================================================
--- head/tools/tools/netmap/Makefile    Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/Makefile    Sat Oct  3 13:19:48 2020        
(r366393)
@@ -21,6 +21,8 @@ LDFLAGS += -lm # used by nmreplay
 .include <bsd.prog.mk>
 .include <bsd.lib.mk>
 
+CFLAGS += -Wno-cast-align
+
 all: $(PROGS)
 
 pkt-gen: pkt-gen.o

Modified: head/tools/tools/netmap/bridge.c
==============================================================================
--- head/tools/tools/netmap/bridge.c    Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/bridge.c    Sat Oct  3 13:19:48 2020        
(r366393)
@@ -14,7 +14,7 @@
 #include <net/netmap_user.h>
 #include <sys/poll.h>
 
-int verbose = 0;
+static int verbose = 0;
 
 static int do_abort = 0;
 static int zerocopy = 1; /* enable zerocopy if possible */
@@ -31,7 +31,7 @@ sigint_h(int sig)
 /*
  * how many packets on this set of queues ?
  */
-int
+static int
 pkt_queued(struct nm_desc *d, int tx)
 {
        u_int i, tot = 0;

Modified: head/tools/tools/netmap/ctrs.h
==============================================================================
--- head/tools/tools/netmap/ctrs.h      Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/ctrs.h      Sat Oct  3 13:19:48 2020        
(r366393)
@@ -18,12 +18,12 @@ struct my_ctrs {
  * Caller has to make sure that the buffer is large enough.
  */
 static const char *
-norm2(char *buf, double val, char *fmt, int normalize)
+norm2(char *buf, double val, const char *fmt, int normalize)
 {
-       char *units[] = { "", "K", "M", "G", "T" };
+       const char *units[] = { "", "K", "M", "G", "T" };
        u_int i;
        if (normalize)
-               for (i = 0; val >=1000 && i < sizeof(units)/sizeof(char *) - 1; 
i++)
+               for (i = 0; val >=1000 && i < sizeof(units)/sizeof(const char 
*) - 1; i++)
                        val /= 1000;
        else
                i=0;

Modified: head/tools/tools/netmap/lb.c
==============================================================================
--- head/tools/tools/netmap/lb.c        Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/lb.c        Sat Oct  3 13:19:48 2020        
(r366393)
@@ -89,7 +89,7 @@ struct compact_ipv6_hdr {
 #define BUF_REVOKE     100
 #define STAT_MSG_MAXSIZE 1024
 
-struct {
+static struct {
        char ifname[MAX_IFNAMELEN];
        char base_name[MAX_IFNAMELEN];
        int netmap_fd;
@@ -115,7 +115,7 @@ struct overflow_queue {
        uint32_t size;
 };
 
-struct overflow_queue *freeq;
+static struct overflow_queue *freeq;
 
 static inline int
 oq_full(struct overflow_queue *q)
@@ -160,12 +160,12 @@ oq_deq(struct overflow_queue *q)
 
 static volatile int do_abort = 0;
 
-uint64_t dropped = 0;
-uint64_t forwarded = 0;
-uint64_t received_bytes = 0;
-uint64_t received_pkts = 0;
-uint64_t non_ip = 0;
-uint32_t freeq_n = 0;
+static uint64_t dropped = 0;
+static uint64_t forwarded = 0;
+static uint64_t received_bytes = 0;
+static uint64_t received_pkts = 0;
+static uint64_t non_ip = 0;
+static uint32_t freeq_n = 0;
 
 struct port_des {
        char interface[MAX_PORTNAMELEN];
@@ -178,7 +178,7 @@ struct port_des {
        struct group_des *group;
 };
 
-struct port_des *ports;
+static struct port_des *ports;
 
 /* each group of pipes receives all the packets */
 struct group_des {
@@ -190,7 +190,7 @@ struct group_des {
        int custom_port;
 };
 
-struct group_des *groups;
+static struct group_des *groups;
 
 /* statistcs */
 struct counters {
@@ -205,7 +205,7 @@ struct counters {
 #define COUNTERS_FULL  1
 };
 
-struct counters counters_buf;
+static struct counters counters_buf;
 
 static void *
 print_stats(void *arg)
@@ -387,7 +387,7 @@ static void sigint_h(int sig)
        signal(SIGINT, SIG_DFL);
 }
 
-void usage()
+static void usage()
 {
        printf("usage: lb [options]\n");
        printf("where options are:\n");
@@ -404,9 +404,9 @@ void usage()
 }
 
 static int
-parse_pipes(char *spec)
+parse_pipes(const char *spec)
 {
-       char *end = index(spec, ':');
+       const char *end = index(spec, ':');
        static int max_groups = 0;
        struct group_des *g;
 
@@ -458,7 +458,8 @@ parse_pipes(char *spec)
 }
 
 /* complete the initialization of the groups data structure */
-void init_groups(void)
+static void
+init_groups(void)
 {
        int i, j, t = 0;
        struct group_des *g = NULL;
@@ -484,7 +485,8 @@ void init_groups(void)
  * chain headed by g.
  * Return a free buffer.
  */
-uint32_t forward_packet(struct group_des *g, struct netmap_slot *rs)
+static uint32_t
+forward_packet(struct group_des *g, struct netmap_slot *rs)
 {
        uint32_t hash = rs->ptr;
        uint32_t output_port = hash % g->nports;
@@ -886,7 +888,6 @@ run:
                 */
                for (i = glob_arg.num_groups - 1U; i > 0; i--) {
                        struct group_des *g = &groups[i - 1];
-                       int j;
 
                        for (j = 0; j < g->nports; j++) {
                                struct port_des *p = &g->ports[j];
@@ -917,7 +918,7 @@ run:
                        for (i = 0; i < npipes; i++) {
                                struct port_des *p = &ports[i];
                                struct overflow_queue *q = p->oq;
-                               uint32_t j, lim;
+                               uint32_t k, lim;
                                struct netmap_ring *ring;
                                struct netmap_slot *slot;
 
@@ -929,7 +930,7 @@ run:
                                        continue;
                                if (q->n < lim)
                                        lim = q->n;
-                               for (j = 0; j < lim; j++) {
+                               for (k = 0; k < lim; k++) {
                                        struct netmap_slot s = oq_deq(q), tmp;
                                        tmp.ptr = 0;
                                        slot = &ring->slot[ring->head];

Modified: head/tools/tools/netmap/nmreplay.c
==============================================================================
--- head/tools/tools/netmap/nmreplay.c  Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/nmreplay.c  Sat Oct  3 13:19:48 2020        
(r366393)
@@ -431,7 +431,7 @@ readpcap(const char *fn)
 
 enum my_pcap_mode { PM_NONE, PM_FAST, PM_FIXED, PM_REAL };
 
-int verbose = 0;
+static int verbose = 0;
 
 static int do_abort = 0;
 
@@ -988,7 +988,8 @@ usage(void)
 static char **
 split_arg(const char *src, int *_ac)
 {
-    char *my = NULL, **av = NULL, *seps = " \t\r\n,";
+    char *my = NULL, **av = NULL;
+    const char *seps = " \t\r\n,";
     int l, i, ac; /* number of entries */
 
     if (!src)
@@ -1127,15 +1128,15 @@ main(int argc, char **argv)
 
        /* set default values */
        for (i = 0; i < N_OPTS; i++) {
-           struct _qs *q = &bp[i].q;
+           struct _qs *qs = &bp[i].q;
 
-           q->burst = 128;
-           q->c_delay.optarg = "0";
-           q->c_delay.run = null_run_fn;
-           q->c_loss.optarg = "0";
-           q->c_loss.run = null_run_fn;
-           q->c_bw.optarg = "0";
-           q->c_bw.run = null_run_fn;
+           qs->burst = 128;
+           qs->c_delay.optarg = "0";
+           qs->c_delay.run = null_run_fn;
+           qs->c_loss.optarg = "0";
+           qs->c_loss.run = null_run_fn;
+           qs->c_bw.optarg = "0";
+           qs->c_bw.run = null_run_fn;
        }
 
        // Options:
@@ -1250,10 +1251,10 @@ main(int argc, char **argv)
 
        /* apply commands */
        for (i = 0; i < N_OPTS; i++) { /* once per queue */
-               struct _qs *q = &bp[i].q;
-               err += cmd_apply(delay_cfg, d[i], q, &q->c_delay);
-               err += cmd_apply(bw_cfg, b[i], q, &q->c_bw);
-               err += cmd_apply(loss_cfg, l[i], q, &q->c_loss);
+               struct _qs *qs = &bp[i].q;
+               err += cmd_apply(delay_cfg, d[i], qs, &qs->c_delay);
+               err += cmd_apply(bw_cfg, b[i], qs, &qs->c_bw);
+               err += cmd_apply(loss_cfg, l[i], qs, &qs->c_loss);
        }
 
        pthread_create(&bp[0].cons_tid, NULL, nmreplay_main, (void*)&bp[0]);
@@ -1287,7 +1288,7 @@ main(int argc, char **argv)
  * the final entry has s = NULL.
  */
 struct _sm {   /* string and multiplier */
-       char *s;
+       const char *s;
        double m;
 };
 

Modified: head/tools/tools/netmap/pkt-gen.c
==============================================================================
--- head/tools/tools/netmap/pkt-gen.c   Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/pkt-gen.c   Sat Oct  3 13:19:48 2020        
(r366393)
@@ -42,7 +42,6 @@
 #define NETMAP_WITH_LIBS
 #include <net/netmap_user.h>
 
-
 #include <ctype.h>     // isprint()
 #include <unistd.h>    // sysconf()
 #include <sys/poll.h>
@@ -179,14 +178,14 @@ static inline void CPU_SET(uint32_t i, cpuset_t *p)
        do {struct timespec t0 = {0,0}; *(b) = t0; } while (0)
 #endif  /* __APPLE__ */
 
-const char *default_payload="netmap pkt-gen DIRECT payload\n"
+static const char *default_payload = "netmap pkt-gen DIRECT payload\n"
        "http://info.iet.unipi.it/~luigi/netmap/ ";
 
-const char *indirect_payload="netmap pkt-gen indirect payload\n"
+static const char *indirect_payload = "netmap pkt-gen indirect payload\n"
        "http://info.iet.unipi.it/~luigi/netmap/ ";
 
-int verbose = 0;
-int normalize = 1;
+static int verbose = 0;
+static int normalize = 1;
 
 #define VIRT_HDR_1     10      /* length of a base vnet-hdr */
 #define VIRT_HDR_2     12      /* length of the extenede vnet-hdr */
@@ -218,7 +217,7 @@ struct pkt {
     ((af) == AF_INET ? (p)->ipv4.f: (p)->ipv6.f)
 
 struct ip_range {
-       char *name;
+       const char *name;
        union {
                struct {
                        uint32_t start, end; /* same as struct in_addr */
@@ -232,7 +231,7 @@ struct ip_range {
 };
 
 struct mac_range {
-       char *name;
+       const char *name;
        struct ether_addr start, end;
 };
 
@@ -295,7 +294,7 @@ struct glob_arg {
        int td_type;
        void *mmap_addr;
        char ifname[MAX_IFNAMELEN];
-       char *nmr_config;
+       const char *nmr_config;
        int dummy_send;
        int virt_header;        /* send also the virt_header */
        char *packet_file;      /* -P option */
@@ -620,7 +619,7 @@ system_ncpus(void)
  * If there is no 4th number, then the 3rd is assigned to both #tx-rings
  * and #rx-rings.
  */
-int
+static int
 parse_nmr_config(const char* conf, struct nmreq *nmr)
 {
        char *w, *tok;
@@ -727,7 +726,7 @@ checksum(const void *data, uint16_t len, uint32_t sum)
 
        /* Checksum all the pairs of bytes first... */
        for (i = 0; i < (len & ~1U); i += 2) {
-               sum += (u_int16_t)ntohs(*((u_int16_t *)(addr + i)));
+               sum += (uint16_t)ntohs(*((const uint16_t *)(addr + i)));
                if (sum > 0xFFFF)
                        sum -= 0xFFFF;
        }
@@ -1241,7 +1240,7 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 /*
  * Index of the highest bit set
  */
-uint32_t
+static uint32_t
 msb64(uint64_t x)
 {
        uint64_t m = 1ULL << 63;
@@ -2695,7 +2694,7 @@ main_thread(struct glob_arg *g)
 
 struct td_desc {
        int ty;
-       char *key;
+       const char *key;
        void *f;
        int default_burst;
 };
@@ -2715,7 +2714,7 @@ tap_alloc(char *dev)
 {
        struct ifreq ifr;
        int fd, err;
-       char *clonedev = TAP_CLONEDEV;
+       const char *clonedev = TAP_CLONEDEV;
 
        (void)err;
        (void)dev;

Modified: head/tools/tools/netmap/pkt_hash.c
==============================================================================
--- head/tools/tools/netmap/pkt_hash.c  Sat Oct  3 13:01:07 2020        
(r366392)
+++ head/tools/tools/netmap/pkt_hash.c  Sat Oct  3 13:19:48 2020        
(r366393)
@@ -145,7 +145,7 @@ static uint32_t decode_gre_hash(const uint8_t *, uint8
  ** Parser + hash function for the IPv4 packet
  **/
 static uint32_t
-decode_ip_n_hash(struct ip *iph, uint8_t hash_split, uint8_t seed)
+decode_ip_n_hash(const struct ip *iph, uint8_t hash_split, uint8_t seed)
 {
        uint32_t rc = 0;
 
@@ -155,19 +155,19 @@ decode_ip_n_hash(struct ip *iph, uint8_t hash_split, u
                        ntohs(0xFFFD) + seed,
                        ntohs(0xFFFE) + seed);
        } else {
-               struct tcphdr *tcph = NULL;
-               struct udphdr *udph = NULL;
+               const struct tcphdr *tcph = NULL;
+               const struct udphdr *udph = NULL;
 
                switch (iph->ip_p) {
                case IPPROTO_TCP:
-                       tcph = (struct tcphdr *)((uint8_t *)iph + 
(iph->ip_hl<<2));
+                       tcph = (const struct tcphdr *)((const uint8_t *)iph + 
(iph->ip_hl<<2));
                        rc = sym_hash_fn(ntohl(iph->ip_src.s_addr),
                                         ntohl(iph->ip_dst.s_addr),
                                         ntohs(tcph->th_sport) + seed,
                                         ntohs(tcph->th_dport) + seed);
                        break;
                case IPPROTO_UDP:
-                       udph = (struct udphdr *)((uint8_t *)iph + 
(iph->ip_hl<<2));
+                       udph = (const struct udphdr *)((const uint8_t *)iph + 
(iph->ip_hl<<2));
                        rc = sym_hash_fn(ntohl(iph->ip_src.s_addr),
                                         ntohl(iph->ip_dst.s_addr),
                                         ntohs(udph->uh_sport) + seed,
@@ -175,11 +175,11 @@ decode_ip_n_hash(struct ip *iph, uint8_t hash_split, u
                        break;
                case IPPROTO_IPIP:
                        /* tunneling */
-                       rc = decode_ip_n_hash((struct ip *)((uint8_t *)iph + 
(iph->ip_hl<<2)),
+                       rc = decode_ip_n_hash((const struct ip *)((const 
uint8_t *)iph + (iph->ip_hl<<2)),
                                              hash_split, seed);
                        break;
                case IPPROTO_GRE:
-                       rc = decode_gre_hash((uint8_t *)iph + (iph->ip_hl<<2),
+                       rc = decode_gre_hash((const uint8_t *)iph + 
(iph->ip_hl<<2),
                                        hash_split, seed);
                        break;
                case IPPROTO_ICMP:
@@ -205,7 +205,7 @@ decode_ip_n_hash(struct ip *iph, uint8_t hash_split, u
  ** Parser + hash function for the IPv6 packet
  **/
 static uint32_t
-decode_ipv6_n_hash(struct ip6_hdr *ipv6h, uint8_t hash_split, uint8_t seed)
+decode_ipv6_n_hash(const struct ip6_hdr *ipv6h, uint8_t hash_split, uint8_t 
seed)
 {
        uint32_t saddr, daddr;
        uint32_t rc = 0;
@@ -226,19 +226,19 @@ decode_ipv6_n_hash(struct ip6_hdr *ipv6h, uint8_t hash
                                 ntohs(0xFFFD) + seed,
                                 ntohs(0xFFFE) + seed);
        } else {
-               struct tcphdr *tcph = NULL;
-               struct udphdr *udph = NULL;
+               const struct tcphdr *tcph = NULL;
+               const struct udphdr *udph = NULL;
 
                switch(ntohs(ipv6h->ip6_ctlun.ip6_un1.ip6_un1_nxt)) {
                case IPPROTO_TCP:
-                       tcph = (struct tcphdr *)(ipv6h + 1);
+                       tcph = (const struct tcphdr *)(ipv6h + 1);
                        rc = sym_hash_fn(ntohl(saddr),
                                         ntohl(daddr),
                                         ntohs(tcph->th_sport) + seed,
                                         ntohs(tcph->th_dport) + seed);
                        break;
                case IPPROTO_UDP:
-                       udph = (struct udphdr *)(ipv6h + 1);
+                       udph = (const struct udphdr *)(ipv6h + 1);
                        rc = sym_hash_fn(ntohl(saddr),
                                         ntohl(daddr),
                                         ntohs(udph->uh_sport) + seed,
@@ -246,16 +246,16 @@ decode_ipv6_n_hash(struct ip6_hdr *ipv6h, uint8_t hash
                        break;
                case IPPROTO_IPIP:
                        /* tunneling */
-                       rc = decode_ip_n_hash((struct ip *)(ipv6h + 1),
+                       rc = decode_ip_n_hash((const struct ip *)(ipv6h + 1),
                                              hash_split, seed);
                        break;
                case IPPROTO_IPV6:
                        /* tunneling */
-                       rc = decode_ipv6_n_hash((struct ip6_hdr *)(ipv6h + 1),
+                       rc = decode_ipv6_n_hash((const struct ip6_hdr *)(ipv6h 
+ 1),
                                                hash_split, seed);
                        break;
                case IPPROTO_GRE:
-                       rc = decode_gre_hash((uint8_t *)(ipv6h + 1), 
hash_split, seed);
+                       rc = decode_gre_hash((const uint8_t *)(ipv6h + 1), 
hash_split, seed);
                        break;
                case IPPROTO_ICMP:
                case IPPROTO_ESP:
@@ -280,7 +280,7 @@ decode_ipv6_n_hash(struct ip6_hdr *ipv6h, uint8_t hash
  *   * (See decode_vlan_n_hash & pkt_hdr_hash functions).
  *    */
 static uint32_t
-decode_others_n_hash(struct ether_header *ethh, uint8_t seed)
+decode_others_n_hash(const struct ether_header *ethh, uint8_t seed)
 {
        uint32_t saddr, daddr, rc;
 
@@ -305,18 +305,18 @@ decode_others_n_hash(struct ether_header *ethh, uint8_
  ** Parser + hash function for VLAN packet
  **/
 static inline uint32_t
-decode_vlan_n_hash(struct ether_header *ethh, uint8_t hash_split, uint8_t seed)
+decode_vlan_n_hash(const struct ether_header *ethh, uint8_t hash_split, 
uint8_t seed)
 {
        uint32_t rc = 0;
-       struct vlanhdr *vhdr = (struct vlanhdr *)(ethh + 1);
+       const struct vlanhdr *vhdr = (const struct vlanhdr *)(ethh + 1);
 
        switch (ntohs(vhdr->proto)) {
        case ETHERTYPE_IP:
-               rc = decode_ip_n_hash((struct ip *)(vhdr + 1),
+               rc = decode_ip_n_hash((const struct ip *)(vhdr + 1),
                                      hash_split, seed);
                break;
        case ETHERTYPE_IPV6:
-               rc = decode_ipv6_n_hash((struct ip6_hdr *)(vhdr + 1),
+               rc = decode_ipv6_n_hash((const struct ip6_hdr *)(vhdr + 1),
                                        hash_split, seed);
                break;
        case ETHERTYPE_ARP:
@@ -336,15 +336,15 @@ uint32_t
 pkt_hdr_hash(const unsigned char *buffer, uint8_t hash_split, uint8_t seed)
 {
        uint32_t rc = 0;
-       struct ether_header *ethh = (struct ether_header *)buffer;
+       const struct ether_header *ethh = (const struct ether_header *)buffer;
 
        switch (ntohs(ethh->ether_type)) {
        case ETHERTYPE_IP:
-               rc = decode_ip_n_hash((struct ip *)(ethh + 1),
+               rc = decode_ip_n_hash((const struct ip *)(ethh + 1),
                                      hash_split, seed);
                break;
        case ETHERTYPE_IPV6:
-               rc = decode_ipv6_n_hash((struct ip6_hdr *)(ethh + 1),
+               rc = decode_ipv6_n_hash((const struct ip6_hdr *)(ethh + 1),
                                        hash_split, seed);
                break;
        case ETHERTYPE_VLAN:
@@ -372,15 +372,15 @@ decode_gre_hash(const uint8_t *grehdr, uint8_t hash_sp
                           !!(*grehdr & 2) + /* Routing */
                           !!(*grehdr & 4) + /* Key */
                           !!(*grehdr & 8)); /* Sequence Number */
-       uint16_t proto = ntohs(*(uint16_t *)(void *)(grehdr + 2));
+       uint16_t proto = ntohs(*(const uint16_t *)(const void *)(grehdr + 2));
 
        switch (proto) {
        case ETHERTYPE_IP:
-               rc = decode_ip_n_hash((struct ip *)(grehdr + len),
+               rc = decode_ip_n_hash((const struct ip *)(grehdr + len),
                                      hash_split, seed);
                break;
        case ETHERTYPE_IPV6:
-               rc = decode_ipv6_n_hash((struct ip6_hdr *)(grehdr + len),
+               rc = decode_ipv6_n_hash((const struct ip6_hdr *)(grehdr + len),
                                        hash_split, seed);
                break;
        case 0x6558: /* Transparent Ethernet Bridging */
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to