net/i40e: set speed to undefined for default case
authorLaurent Hardy <laurent.hardy@6wind.com>
Wed, 11 Sep 2019 16:02:51 +0000 (18:02 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 7 Oct 2019 13:00:57 +0000 (15:00 +0200)
commit3c8c0b68b590fe8cd7e4a4d18b997eddd5b8b286
tree302a99ac02b0b7e7e0d075a6d31f7b1779741dcd
parenta02ef30e05f249df417e436c0c924091c2955a2c
net/i40e: set speed to undefined for default case

During PF/VF link update, a default speed value of 100M will be set
if get_link_info has failed or speed is unknown.

Consequently if PF is put in no-carrier state, VFs will switch to
"in carrier" state due to a link up + a link speed set to 100M
(default value if no speed detected).

To be consistent with linux drivers on which PF and VFs are in
same carrier state, sets default speed to undefined (instead of 100M)
and updates a link status of VF only if link is up and speed is
different from undefined.

Fixes: 4861cde46116 ("i40e: new poll mode driver")
Cc: stable@dpdk.org
Signed-off-by: Laurent Hardy <laurent.hardy@6wind.com>
Reviewed-by: Xiaolong Ye <xiaolong.ye@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/i40e/i40e_ethdev.c
drivers/net/i40e/i40e_ethdev_vf.c