New upstream version 17.08
[deb_dpdk.git] / drivers / net / virtio / virtio_rxtx.c
index fbc96df..e30377c 100644 (file)
@@ -744,8 +744,9 @@ virtio_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t nb_pkts)
 
        virtio_rmb();
 
-       num = (uint16_t)(likely(nb_used <= nb_pkts) ? nb_used : nb_pkts);
-       num = (uint16_t)(likely(num <= VIRTIO_MBUF_BURST_SZ) ? num : VIRTIO_MBUF_BURST_SZ);
+       num = likely(nb_used <= nb_pkts) ? nb_used : nb_pkts;
+       if (unlikely(num > VIRTIO_MBUF_BURST_SZ))
+               num = VIRTIO_MBUF_BURST_SZ;
        if (likely(num > DESC_PER_CACHELINE))
                num = num - ((vq->vq_used_cons_idx + num) % DESC_PER_CACHELINE);