From: James Hershaw <james.hers...@corigine.com>

Remove usage of the rte_panic() function from the nfp PMD. It is better
to return error values and allow the application to handle the error.

Signed-off-by: James Hershaw <james.hers...@corigine.com>
Reviewed-by: Niklas Söderlund <niklas.soderl...@corigine.com>
Reviewed-by: Chaoyong He <chaoyong...@corigine.com>
---
 drivers/net/nfp/nfp_common.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/net/nfp/nfp_common.c b/drivers/net/nfp/nfp_common.c
index 4f21d9978d..7a60add3a6 100644
--- a/drivers/net/nfp/nfp_common.c
+++ b/drivers/net/nfp/nfp_common.c
@@ -63,8 +63,10 @@ __nfp_net_reconfig(struct nfp_net_hw *hw, uint32_t update)
        PMD_DRV_LOG(DEBUG, "Writing to the configuration queue (%p)...",
                    hw->qcp_cfg);
 
-       if (hw->qcp_cfg == NULL)
-               rte_panic("Bad configuration queue pointer\n");
+       if (hw->qcp_cfg == NULL) {
+               PMD_INIT_LOG(ERR, "Bad configuration queue pointer");
+               return -ENXIO;
+       }
 
        nfp_qcp_ptr_add(hw->qcp_cfg, NFP_QCP_WRITE_PTR, 1);
 
@@ -85,7 +87,7 @@ __nfp_net_reconfig(struct nfp_net_hw *hw, uint32_t update)
                if (cnt >= NFP_NET_POLL_TIMEOUT) {
                        PMD_INIT_LOG(ERR, "Reconfig timeout for 0x%08x after"
                                          " %dms", update, cnt);
-                       rte_panic("Exiting\n");
+                       return -EIO;
                }
                nanosleep(&wait, 0); /* waiting for a 1ms */
        }
@@ -121,16 +123,14 @@ nfp_net_reconfig(struct nfp_net_hw *hw, uint32_t ctrl, 
uint32_t update)
 
        rte_spinlock_unlock(&hw->reconfig_lock);
 
-       if (!err)
-               return 0;
+       if (err != 0) {
+               PMD_INIT_LOG(ERR, "Error nfp_net reconfig for ctrl: %x update: 
%x",
+                            ctrl, update);
+               return -EIO;
+       }
+
+       return 0;
 
-       /*
-        * Reconfig errors imply situations where they can be handled.
-        * Otherwise, rte_panic is called inside __nfp_net_reconfig
-        */
-       PMD_INIT_LOG(ERR, "Error nfp_net reconfig for ctrl: %x update: %x",
-                    ctrl, update);
-       return -EIO;
 }
 
 /*
-- 
2.29.3

Reply via email to