This patch modifies bond_mode_alb_enable function.
When mempool allocation fails errno code is returned
instead of rte_panic. This allow to decide on application level
if it should quit or retry for mempool allocation.

Signed-off-by: Michal Jastrzebski <michalx.k.jastrzebski at intel.com>
---
 drivers/net/bonding/rte_eth_bond_alb.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_alb.c 
b/drivers/net/bonding/rte_eth_bond_alb.c
index 3157543..194c1da 100644
--- a/drivers/net/bonding/rte_eth_bond_alb.c
+++ b/drivers/net/bonding/rte_eth_bond_alb.c
@@ -90,14 +90,14 @@ bond_mode_alb_enable(struct rte_eth_dev *bond_dev)
                if (internals->mode6.mempool == NULL) {
                        RTE_LOG(ERR, PMD, "%s: Failed to initialize ALB 
mempool.\n",
                                        bond_dev->data->name);
-                       rte_panic(
-                                       "Failed to allocate memory pool 
('%s')\n"
-                                       "for bond device '%s'\n",
-                                       mem_name, bond_dev->data->name);
+                       goto mempool_alloc_error;
                }
        }

        return 0;
+
+       mempool_alloc_error:
+       return -ENOMEM;
 }

 void bond_mode_alb_arp_recv(struct ether_hdr *eth_h, uint16_t offset,
-- 
1.7.9.5

Reply via email to