i40e: Update flow director error messages to reduce user confusion
authorCarolyn Wyborny <carolyn.wyborny@intel.com>
Wed, 9 Jul 2014 07:46:12 +0000 (07:46 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 27 Aug 2014 06:22:37 +0000 (23:22 -0700)
This patch changes the wording of the flow director add/remove and
asynchronous failure messages to include fd_id to try and add some
way to track the operations on a given fd_id.  Its not perfect, but
its better than what we had as PCTYPE can apply to several different
filter requests.

This patch also removes a redundant message when filter
addition fails due to full condition.

Change-ID: Icf58b0603d4f162d9fc542f11a74866a907049f2
Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>
Tested-by: Jim Young <jamesx.m.young@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_txrx.c

index a51aa37b7b5af10a5204c1ef8329ce9229b1ce57..a6cc8d66e21444975aca9092d4cc9c373c12d70d 100644 (file)
@@ -224,15 +224,14 @@ static int i40e_add_del_fdir_udpv4(struct i40e_vsi *vsi,
        ret = i40e_program_fdir_filter(fd_data, raw_packet, pf, add);
        if (ret) {
                dev_info(&pf->pdev->dev,
-                        "Filter command send failed for PCTYPE %d (ret = %d)\n",
-                        fd_data->pctype, ret);
+                        "PCTYPE:%d, Filter command send failed for fd_id:%d (ret = %d)\n",
+                        fd_data->pctype, fd_data->fd_id, ret);
                err = true;
        } else {
                dev_info(&pf->pdev->dev,
-                        "Filter OK for PCTYPE %d (ret = %d)\n",
-                        fd_data->pctype, ret);
+                        "PCTYPE:%d, Filter send OK for fd_id:%d\n",
+                        fd_data->pctype, fd_data->fd_id);
        }
-
        return err ? -EOPNOTSUPP : 0;
 }
 
@@ -287,12 +286,13 @@ static int i40e_add_del_fdir_tcpv4(struct i40e_vsi *vsi,
 
        if (ret) {
                dev_info(&pf->pdev->dev,
-                        "Filter command send failed for PCTYPE %d (ret = %d)\n",
-                        fd_data->pctype, ret);
+                        "PCTYPE:%d, Filter command send failed for fd_id:%d (ret = %d)\n",
+                        fd_data->pctype, fd_data->fd_id, ret);
                err = true;
        } else {
-               dev_info(&pf->pdev->dev, "Filter OK for PCTYPE %d (ret = %d)\n",
-                        fd_data->pctype, ret);
+               dev_info(&pf->pdev->dev,
+                        "PCTYPE:%d, Filter send OK for fd_id:%d\n",
+                        fd_data->pctype, fd_data->fd_id);
        }
 
        return err ? -EOPNOTSUPP : 0;
@@ -355,13 +355,13 @@ static int i40e_add_del_fdir_ipv4(struct i40e_vsi *vsi,
 
                if (ret) {
                        dev_info(&pf->pdev->dev,
-                                "Filter command send failed for PCTYPE %d (ret = %d)\n",
-                                fd_data->pctype, ret);
+                                "PCTYPE:%d, Filter command send failed for fd_id:%d (ret = %d)\n",
+                                fd_data->pctype, fd_data->fd_id, ret);
                        err = true;
                } else {
                        dev_info(&pf->pdev->dev,
-                                "Filter OK for PCTYPE %d (ret = %d)\n",
-                                fd_data->pctype, ret);
+                                "PCTYPE:%d, Filter send OK for fd_id:%d\n",
+                                fd_data->pctype, fd_data->fd_id);
                }
        }
 
@@ -443,8 +443,6 @@ static void i40e_fd_handle_status(struct i40e_ring *rx_ring,
                I40E_RX_PROG_STATUS_DESC_QW1_ERROR_SHIFT;
 
        if (error == (0x1 << I40E_RX_PROG_STATUS_DESC_FD_TBL_FULL_SHIFT)) {
-               dev_warn(&pdev->dev, "ntuple filter loc = %d, could not be added\n",
-                        rx_desc->wb.qword0.hi_dword.fd_id);
 
                /* filter programming failed most likely due to table full */
                fcnt_prog = i40e_get_cur_guaranteed_fd_count(pf);
@@ -471,12 +469,13 @@ static void i40e_fd_handle_status(struct i40e_ring *rx_ring,
                                pf->flags |= I40E_FLAG_FDIR_REQUIRES_REINIT;
                        }
                } else {
-                       dev_info(&pdev->dev, "FD filter programming error\n");
+                       dev_info(&pdev->dev,
+                                "FD filter programming failed due to incorrect filter parameters\n");
                }
        } else if (error ==
                          (0x1 << I40E_RX_PROG_STATUS_DESC_NO_FD_ENTRY_SHIFT)) {
                if (I40E_DEBUG_FD & pf->hw.debug_mask)
-                       dev_info(&pdev->dev, "ntuple filter loc = %d, could not be removed\n",
+                       dev_info(&pdev->dev, "ntuple filter fd_id = %d, could not be removed\n",
                                 rx_desc->wb.qword0.hi_dword.fd_id);
        }
 }