ice: silence some bogus error messages
authorMitch Williams <mitch.a.williams@intel.com>
Mon, 29 Jul 2019 09:04:51 +0000 (02:04 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Fri, 23 Aug 2019 17:20:32 +0000 (10:20 -0700)
In some circumstances, VF devices can be deactivated while a message is
in-flight. In that case, a series of scary error message will be
printed in the log. Since these are actually harmless, check for this
case and suppress them. No harm, no foul.

Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ice/ice_adminq_cmd.h
drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c

index 765e3c2ed045b5b2388575bcbd0f1cc91afcb0c4..bf9aa533a7c65d5f00383dbe44f750d657faf816 100644 (file)
@@ -1610,6 +1610,7 @@ enum ice_aq_err {
        ICE_AQ_RC_EBUSY         = 12, /* Device or resource busy */
        ICE_AQ_RC_EEXIST        = 13, /* Object already exists */
        ICE_AQ_RC_ENOSPC        = 16, /* No space left or allocation failure */
+       ICE_AQ_RC_ENOSYS        = 17, /* Function not implemented */
 };
 
 /* Admin Queue command opcodes */
index 73ab6222d29b4a17eaee127aafed84a70e1f37de..83e58e71081e3b4849c7ac534847fd3bb7b1717b 100644 (file)
@@ -1512,10 +1512,10 @@ ice_vc_send_msg_to_vf(struct ice_vf *vf, u32 v_opcode,
 
        aq_ret = ice_aq_send_msg_to_vf(&pf->hw, vf->vf_id, v_opcode, v_retval,
                                       msg, msglen, NULL);
-       if (aq_ret) {
+       if (aq_ret && pf->hw.mailboxq.sq_last_status != ICE_AQ_RC_ENOSYS) {
                dev_info(&pf->pdev->dev,
-                        "Unable to send the message to VF %d aq_err %d\n",
-                        vf->vf_id, pf->hw.mailboxq.sq_last_status);
+                        "Unable to send the message to VF %d ret %d aq_err %d\n",
+                        vf->vf_id, aq_ret, pf->hw.mailboxq.sq_last_status);
                return -EIO;
        }