ice: don't spam VFs with link messages
authorMitch Williams <mitch.a.williams@intel.com>
Fri, 8 Feb 2019 20:50:37 +0000 (12:50 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Mon, 25 Feb 2019 16:56:01 +0000 (08:56 -0800)
Don't send a link message to the VFs unless link actually changes state.
This avoids a small timing hole in some VF drivers that can cause an
apparent TX hang if they receive a link status message at the wrong time.

Although we have fixed the timing hole in the current VF driver, there
are still lots of drivers in the field that have this timing hole. Let's
not fall into it if we can avoid it.

Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@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_main.c

index fb04a5ebdc0ba37b60533390d5ccb2ee442a93c7..47cc3f905b7ffc7e3bc83725bc6fb53652b1bb30 100644 (file)
@@ -609,7 +609,8 @@ ice_link_event(struct ice_pf *pf, struct ice_port_info *pi)
                }
        }
 
-       ice_vc_notify_link_state(pf);
+       if (!new_link_same_as_old && pf->num_alloc_vfs)
+               ice_vc_notify_link_state(pf);
 
        return 0;
 }