]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ice: Fix inability to set channels when down
authorJesse Brandeburg <jesse.brandeburg@intel.com>
Sat, 16 May 2020 00:55:00 +0000 (17:55 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 22 Jun 2020 07:32:52 +0000 (09:32 +0200)
[ Upstream commit 765dd7a1827c687b782e6ab3dd6daf4d13a4780f ]

Currently the driver prevents a user from doing
modprobe ice
ethtool -L eth0 combined 5
ip link set eth0 up

The ethtool command fails, because the driver is checking to see if the
interface is down before allowing the get_channels to proceed (even for
a set_channels).

Remove this check and allow the user to configure the interface
before bringing it up, which is a much better usability case.

Fixes: 87324e747fde ("ice: Implement ethtool ops for channels")
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/intel/ice/ice_ethtool.c

index 593fb37bd59e0f1e8df1d6700adf0df545f49ebb..153e3565e31351e4fe36d618457d63b14fb15394 100644 (file)
@@ -3171,10 +3171,6 @@ ice_get_channels(struct net_device *dev, struct ethtool_channels *ch)
        struct ice_vsi *vsi = np->vsi;
        struct ice_pf *pf = vsi->back;
 
-       /* check to see if VSI is active */
-       if (test_bit(__ICE_DOWN, vsi->state))
-               return;
-
        /* report maximum channels */
        ch->max_rx = ice_get_max_rxq(pf);
        ch->max_tx = ice_get_max_txq(pf);