• Jacob Keller's avatar
    fm10k: always check init_hw for errors · 1343c65f
    Jacob Keller authored
    A recent change modified init_hw in some flows the function may fail on
    VF devices. For example, if a VF doesn't yet own its own queues.
    However, many callers of init_hw didn't bother to check the error code.
    Other callers checked but only displayed diagnostic messages without
    actually handling the consequences.
    
    Fix this by (a) always returning and preventing the netdevice from going
    up, and (b) printing the diagnostic in every flow for consistency. This
    should resolve an issue where VF drivers would attempt to come up
    before the PF has finished assigning queues.
    
    In addition, change the dmesg output to explicitly show the actual
    function that failed, instead of combining reset_hw and init_hw into a
    single check, to help for future debugging.
    
    Fixes: 1d568b0f6424 ("fm10k: do not assume VF always has 1 queue")
    Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
    Reviewed-by: default avatarBruce Allan <bruce.w.allan@intel.com>
    Tested-by: default avatarKrishneil Singh <Krishneil.k.singh@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    1343c65f
fm10k_pci.c 62.6 KB