ixgbevf: fix statistic wraparound
[dpdk.git] / drivers / net / i40e / i40e_ethdev.c
index 62e5572..2dd9fdc 100644 (file)
@@ -303,14 +303,6 @@ static struct eth_driver rte_i40e_pmd = {
        .dev_private_size = sizeof(struct i40e_adapter),
 };
 
-static inline int
-i40e_align_floor(int n)
-{
-       if (n == 0)
-               return 0;
-       return (1 << (sizeof(n) * CHAR_BIT - 1 - __builtin_clz(n)));
-}
-
 static inline int
 rte_i40e_dev_atomic_read_link_status(struct rte_eth_dev *dev,
                                     struct rte_eth_link *link)
@@ -1069,6 +1061,7 @@ i40e_dev_close(struct rte_eth_dev *dev)
 
        i40e_dev_stop(dev);
        hw->adapter_stopped = 1;
+       i40e_dev_free_queues(dev);
 
        /* Disable interrupt */
        i40e_pf_disable_irq0(hw);
@@ -2106,10 +2099,11 @@ i40e_allocate_dma_mem_d(__attribute__((unused)) struct i40e_hw *hw,
        id++;
        snprintf(z_name, sizeof(z_name), "i40e_dma_%"PRIu64, id);
 #ifdef RTE_LIBRTE_XEN_DOM0
-       mz = rte_memzone_reserve_bounded(z_name, size, 0, 0, alignment,
-                                                       RTE_PGSIZE_2M);
+       mz = rte_memzone_reserve_bounded(z_name, size, SOCKET_ID_ANY, 0,
+                                        alignment, RTE_PGSIZE_2M);
 #else
-       mz = rte_memzone_reserve_aligned(z_name, size, 0, 0, alignment);
+       mz = rte_memzone_reserve_aligned(z_name, size, SOCKET_ID_ANY, 0,
+                                        alignment);
 #endif
        if (!mz)
                return I40E_ERR_NO_MEMORY;