remove extra parentheses in return statement
[dpdk.git] / examples / vhost / main.c
index 9eac2d0..73564f0 100644 (file)
@@ -1,7 +1,7 @@
 /*-
  *   BSD LICENSE
  *
- *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+ *   Copyright(c) 2010-2015 Intel Corporation. All rights reserved.
  *   All rights reserved.
  *
  *   Redistribution and use in source and binary forms, with or without
@@ -53,7 +53,9 @@
 
 #include "main.h"
 
-#define MAX_QUEUES 512
+#ifndef MAX_QUEUES
+#define MAX_QUEUES 128
+#endif
 
 /* the maximum number of external ports supported */
 #define MAX_SUP_PORTS 1
@@ -909,7 +911,7 @@ gpa_to_hpa(struct vhost_dev  *vdev, uint64_t guest_pa,
 static inline int __attribute__((always_inline))
 ether_addr_cmp(struct ether_addr *ea, struct ether_addr *eb)
 {
-       return (((*(uint64_t *)ea ^ *(uint64_t *)eb) & MAC_ADDR_CMP) == 0);
+       return ((*(uint64_t *)ea ^ *(uint64_t *)eb) & MAC_ADDR_CMP) == 0;
 }
 
 /*
@@ -1050,8 +1052,8 @@ virtio_tx_local(struct vhost_dev *vdev, struct rte_mbuf *m)
                                        rte_atomic64_add(
                                        &dev_statistics[tdev->device_fh].rx_atomic,
                                        ret);
-                                       dev_statistics[tdev->device_fh].tx_total++;
-                                       dev_statistics[tdev->device_fh].tx += ret;
+                                       dev_statistics[dev->device_fh].tx_total++;
+                                       dev_statistics[dev->device_fh].tx += ret;
                                }
                        }
 
@@ -1449,7 +1451,8 @@ attach_rxmbuf_zcp(struct virtio_net *dev)
        uint64_t buff_addr, phys_addr;
        struct vhost_virtqueue *vq;
        struct vring_desc *desc;
-       struct rte_mbuf *mbuf = NULL;
+       void *obj = NULL;
+       struct rte_mbuf *mbuf;
        struct vpool *vpool;
        hpa_type addr_type;
        struct vhost_dev *vdev = (struct vhost_dev *)dev->priv;
@@ -1500,7 +1503,8 @@ attach_rxmbuf_zcp(struct virtio_net *dev)
                }
        } while (unlikely(phys_addr == 0));
 
-       rte_ring_sc_dequeue(vpool->ring, (void **)&mbuf);
+       rte_ring_sc_dequeue(vpool->ring, &obj);
+       mbuf = obj;
        if (unlikely(mbuf == NULL)) {
                LOG_DEBUG(VHOST_DATA,
                        "(%"PRIu64") in attach_rxmbuf_zcp: "
@@ -1517,7 +1521,7 @@ attach_rxmbuf_zcp(struct virtio_net *dev)
                        "size required: %d\n",
                        dev->device_fh, desc->len, desc_idx, vpool->buf_size);
                put_desc_to_used_list_zcp(vq, desc_idx);
-               rte_ring_sp_enqueue(vpool->ring, (void *)mbuf);
+               rte_ring_sp_enqueue(vpool->ring, obj);
                return;
        }
 
@@ -1789,7 +1793,8 @@ virtio_tx_route_zcp(struct virtio_net *dev, struct rte_mbuf *m,
 {
        struct mbuf_table *tx_q;
        struct rte_mbuf **m_table;
-       struct rte_mbuf *mbuf = NULL;
+       void *obj = NULL;
+       struct rte_mbuf *mbuf;
        unsigned len, ret, offset = 0;
        struct vpool *vpool;
        uint16_t vlan_tag = (uint16_t)vlan_tags[(uint16_t)dev->device_fh];
@@ -1801,7 +1806,8 @@ virtio_tx_route_zcp(struct virtio_net *dev, struct rte_mbuf *m,
 
        /* Allocate an mbuf and populate the structure. */
        vpool = &vpool_array[MAX_QUEUES + vmdq_rx_q];
-       rte_ring_sc_dequeue(vpool->ring, (void **)&mbuf);
+       rte_ring_sc_dequeue(vpool->ring, &obj);
+       mbuf = obj;
        if (unlikely(mbuf == NULL)) {
                struct vhost_virtqueue *vq = dev->virtqueue[VIRTIO_TXQ];
                RTE_LOG(ERR, VHOST_DATA,
@@ -2275,7 +2281,7 @@ alloc_data_ll(uint32_t size)
        }
        ll_new[i].next = NULL;
 
-       return (ll_new);
+       return ll_new;
 }
 
 /*
@@ -2896,6 +2902,7 @@ main(int argc, char *argv[])
        uint8_t portid;
        uint16_t queue_id;
        static pthread_t tid;
+       char thread_name[RTE_MAX_THREAD_NAME_LEN];
 
        signal(SIGINT, sigint_handler);
 
@@ -3018,8 +3025,19 @@ main(int argc, char *argv[])
        memset(&dev_statistics, 0, sizeof(dev_statistics));
 
        /* Enable stats if the user option is set. */
-       if (enable_stats)
-               pthread_create(&tid, NULL, (void*)print_stats, NULL );
+       if (enable_stats) {
+               ret = pthread_create(&tid, NULL, (void *)print_stats, NULL);
+               if (ret != 0)
+                       rte_exit(EXIT_FAILURE,
+                               "Cannot create print-stats thread\n");
+
+               /* Set thread_name for aid in debugging.  */
+               snprintf(thread_name, RTE_MAX_THREAD_NAME_LEN, "print-stats");
+               ret = rte_thread_setname(tid, thread_name);
+               if (ret != 0)
+                       RTE_LOG(ERR, VHOST_CONFIG,
+                               "Cannot set print-stats name\n");
+       }
 
        /* Launch all data cores. */
        if (zero_copy == 0) {