search for: ethtool_link_ksettings

Displaying 20 results from an estimated 36 matches for "ethtool_link_ksettings".

2017 Mar 21
0
[PATCH] net: virtio_net: use new api ethtool_{get|set}_link_ksettings
...tio_net.c @@ -1636,47 +1636,57 @@ static void virtnet_get_channels(struct net_device *dev, } /* Check if the user is trying to change anything besides speed/duplex */ -static bool virtnet_validate_ethtool_cmd(const struct ethtool_cmd *cmd) +static bool +virtnet_validate_ethtool_cmd(const struct ethtool_link_ksettings *cmd) { - struct ethtool_cmd diff1 = *cmd; - struct ethtool_cmd diff2 = {}; + struct ethtool_link_ksettings diff1 = *cmd; + struct ethtool_link_ksettings diff2 = {}; /* cmd is always set so we need to clear it, validate the port type * and also without autonegotiation we can ignore advertis...
2017 Mar 21
0
[PATCH] net: virtio_net: use new api ethtool_{get|set}_link_ksettings
...tio_net.c @@ -1636,47 +1636,57 @@ static void virtnet_get_channels(struct net_device *dev, } /* Check if the user is trying to change anything besides speed/duplex */ -static bool virtnet_validate_ethtool_cmd(const struct ethtool_cmd *cmd) +static bool +virtnet_validate_ethtool_cmd(const struct ethtool_link_ksettings *cmd) { - struct ethtool_cmd diff1 = *cmd; - struct ethtool_cmd diff2 = {}; + struct ethtool_link_ksettings diff1 = *cmd; + struct ethtool_link_ksettings diff2 = {}; /* cmd is always set so we need to clear it, validate the port type * and also without autonegotiation we can ignore advertis...
2017 Mar 21
1
[PATCH 2] net: virtio_net: use new api ethtool_{get|set}_link_ksettings
...tio_net.c @@ -1636,47 +1636,57 @@ static void virtnet_get_channels(struct net_device *dev, } /* Check if the user is trying to change anything besides speed/duplex */ -static bool virtnet_validate_ethtool_cmd(const struct ethtool_cmd *cmd) +static bool +virtnet_validate_ethtool_cmd(const struct ethtool_link_ksettings *cmd) { - struct ethtool_cmd diff1 = *cmd; - struct ethtool_cmd diff2 = {}; + struct ethtool_link_ksettings diff1 = *cmd; + struct ethtool_link_ksettings diff2 = {}; /* cmd is always set so we need to clear it, validate the port type * and also without autonegotiation we can ignore advertis...
2017 Mar 21
1
[PATCH 2] net: virtio_net: use new api ethtool_{get|set}_link_ksettings
...tio_net.c @@ -1636,47 +1636,57 @@ static void virtnet_get_channels(struct net_device *dev, } /* Check if the user is trying to change anything besides speed/duplex */ -static bool virtnet_validate_ethtool_cmd(const struct ethtool_cmd *cmd) +static bool +virtnet_validate_ethtool_cmd(const struct ethtool_link_ksettings *cmd) { - struct ethtool_cmd diff1 = *cmd; - struct ethtool_cmd diff2 = {}; + struct ethtool_link_ksettings diff1 = *cmd; + struct ethtool_link_ksettings diff2 = {}; /* cmd is always set so we need to clear it, validate the port type * and also without autonegotiation we can ignore advertis...
2017 Sep 01
2
virtio_net: ethtool supported link modes
...; Looking at the code in virtnet_set_link_ksettings, it seems the speed > and duplex can be set to any valid value. The driver will "remember" > them and report them back in virtnet_get_link_ksettings. > > However, the supported link modes (link_modes.supported in struct > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > setting is supported. > > Does it make more sense to set (at least a few of) the supported link > modes, such as 10baseT_Half ... 10000baseT_Full? > > I would expect to see consistency between what is reported in > link_modes.su...
2017 Sep 01
2
virtio_net: ethtool supported link modes
...; Looking at the code in virtnet_set_link_ksettings, it seems the speed > and duplex can be set to any valid value. The driver will "remember" > them and report them back in virtnet_get_link_ksettings. > > However, the supported link modes (link_modes.supported in struct > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > setting is supported. > > Does it make more sense to set (at least a few of) the supported link > modes, such as 10baseT_Half ... 10000baseT_Full? > > I would expect to see consistency between what is reported in > link_modes.su...
2017 Sep 01
1
virtio_net: ethtool supported link modes
...t; Looking at the code in virtnet_set_link_ksettings, it seems the speed > and duplex can be set to any valid value. The driver will "remember" > them and report them back in virtnet_get_link_ksettings. > > However, the supported link modes (link_modes.supported in struct > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > setting is supported. > > Does it make more sense to set (at least a few of) the supported link > modes, such as 10baseT_Half ... 10000baseT_Full? > > I would expect to see consistency between what is reported in > link_modes.supp...
2017 Sep 01
1
virtio_net: ethtool supported link modes
...t; Looking at the code in virtnet_set_link_ksettings, it seems the speed > and duplex can be set to any valid value. The driver will "remember" > them and report them back in virtnet_get_link_ksettings. > > However, the supported link modes (link_modes.supported in struct > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > setting is supported. > > Does it make more sense to set (at least a few of) the supported link > modes, such as 10baseT_Half ... 10000baseT_Full? > > I would expect to see consistency between what is reported in > link_modes.supp...
2017 Sep 01
1
virtio_net: ethtool supported link modes
...virtnet_set_link_ksettings, it seems the speed > > and duplex can be set to any valid value. The driver will "remember" > > them and report them back in virtnet_get_link_ksettings. > > > > However, the supported link modes (link_modes.supported in struct > > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > > setting is supported. > > > > Does it make more sense to set (at least a few of) the supported link > > modes, such as 10baseT_Half ... 10000baseT_Full? > > > > I would expect to see consistency between what is...
2017 Sep 01
0
virtio_net: ethtool supported link modes
...s, it seems the speed > > > and duplex can be set to any valid value. The driver will "remember" > > > them and report them back in virtnet_get_link_ksettings. > > > > > > However, the supported link modes (link_modes.supported in struct > > > ethtool_link_ksettings) is always 0, indicating that no speed/duplex > > > setting is supported. > > > > > > Does it make more sense to set (at least a few of) the supported link > > > modes, such as 10baseT_Half ... 10000baseT_Full? > > > > > > I would expect to se...
2018 Apr 06
0
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...ndo_set_rx_mode = virtnet_bypass_set_rx_mode, >> + .ndo_validate_addr = eth_validate_addr, >> + .ndo_features_check = passthru_features_check, >> +}; >> + >> +static int >> +virtnet_bypass_ethtool_get_link_ksettings(struct net_device *dev, >> + struct ethtool_link_ksettings *cmd) >> +{ >> + struct virtnet_bypass_info *vbi = netdev_priv(dev); >> + struct net_device *child_netdev; >> + >> + child_netdev = rtnl_dereference(vbi->active_netdev); >> + if (!child_netdev || !virtnet_bypass_xmit_ready(child_netdev)) { >> + child_ne...
2018 Apr 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...virtnet_bypass_change_mtu, >+ .ndo_set_rx_mode = virtnet_bypass_set_rx_mode, >+ .ndo_validate_addr = eth_validate_addr, >+ .ndo_features_check = passthru_features_check, >+}; >+ >+static int >+virtnet_bypass_ethtool_get_link_ksettings(struct net_device *dev, >+ struct ethtool_link_ksettings *cmd) >+{ >+ struct virtnet_bypass_info *vbi = netdev_priv(dev); >+ struct net_device *child_netdev; >+ >+ child_netdev = rtnl_dereference(vbi->active_netdev); >+ if (!child_netdev || !virtnet_bypass_xmit_ready(child_netdev)) { >+ child_netdev = rtnl_dereference(vbi->bac...
2018 Apr 06
2
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
...virtnet_bypass_change_mtu, >+ .ndo_set_rx_mode = virtnet_bypass_set_rx_mode, >+ .ndo_validate_addr = eth_validate_addr, >+ .ndo_features_check = passthru_features_check, >+}; >+ >+static int >+virtnet_bypass_ethtool_get_link_ksettings(struct net_device *dev, >+ struct ethtool_link_ksettings *cmd) >+{ >+ struct virtnet_bypass_info *vbi = netdev_priv(dev); >+ struct net_device *child_netdev; >+ >+ child_netdev = rtnl_dereference(vbi->active_netdev); >+ if (!child_netdev || !virtnet_bypass_xmit_ready(child_netdev)) { >+ child_netdev = rtnl_dereference(vbi->bac...
2018 Feb 16
0
[RFC PATCH v3 2/3] virtio_net: Extend virtio to use VF datapath when available
...select_queue, + .ndo_get_stats64 = virtnet_bypass_get_stats, + .ndo_change_mtu = virtnet_bypass_change_mtu, + .ndo_validate_addr = eth_validate_addr, + .ndo_features_check = passthru_features_check, +}; + +static int +virtnet_bypass_ethtool_get_link_ksettings(struct net_device *dev, + struct ethtool_link_ksettings *cmd) +{ + struct virtnet_bypass_info *vbi = netdev_priv(dev); + struct net_device *child_netdev; + + child_netdev = rtnl_dereference(vbi->active_netdev); + if (!child_netdev || !virtnet_bypass_xmit_ready(child_netdev)) { + child_netdev = rtnl_dereference(vbi->backup_netdev); + if (!child_n...
2018 Apr 05
0
[RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
..._get_stats, + .ndo_change_mtu = virtnet_bypass_change_mtu, + .ndo_set_rx_mode = virtnet_bypass_set_rx_mode, + .ndo_validate_addr = eth_validate_addr, + .ndo_features_check = passthru_features_check, +}; + +static int +virtnet_bypass_ethtool_get_link_ksettings(struct net_device *dev, + struct ethtool_link_ksettings *cmd) +{ + struct virtnet_bypass_info *vbi = netdev_priv(dev); + struct net_device *child_netdev; + + child_netdev = rtnl_dereference(vbi->active_netdev); + if (!child_netdev || !virtnet_bypass_xmit_ready(child_netdev)) { + child_netdev = rtnl_dereference(vbi->backup_netdev); + if (!child_n...
2018 Apr 20
2
[PATCH v7 net-next 2/4] net: Introduce generic failover module
...ethtool_drvinfo *drvinfo) > +{ > + strlcpy(drvinfo->driver, FAILOVER_NAME, sizeof(drvinfo->driver)); > + strlcpy(drvinfo->version, FAILOVER_VERSION, sizeof(drvinfo->version)); > +} > + > +int failover_ethtool_get_link_ksettings(struct net_device *dev, > + struct ethtool_link_ksettings *cmd) > +{ > + struct failover_info *finfo = netdev_priv(dev); > + struct net_device *slave_dev; > + > + slave_dev = rtnl_dereference(finfo->primary_dev); > + if (!slave_dev || !failover_xmit_ready(slave_dev)) { > + slave_dev = rtnl_dereference(finfo->standby_dev); >...
2018 Apr 20
2
[PATCH v7 net-next 2/4] net: Introduce generic failover module
...ethtool_drvinfo *drvinfo) > +{ > + strlcpy(drvinfo->driver, FAILOVER_NAME, sizeof(drvinfo->driver)); > + strlcpy(drvinfo->version, FAILOVER_VERSION, sizeof(drvinfo->version)); > +} > + > +int failover_ethtool_get_link_ksettings(struct net_device *dev, > + struct ethtool_link_ksettings *cmd) > +{ > + struct failover_info *finfo = netdev_priv(dev); > + struct net_device *slave_dev; > + > + slave_dev = rtnl_dereference(finfo->primary_dev); > + if (!slave_dev || !failover_xmit_ready(slave_dev)) { > + slave_dev = rtnl_dereference(finfo->standby_dev); >...
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...ethtool_drvinfo *drvinfo) >+{ >+ strlcpy(drvinfo->driver, BYPASS_DRV_NAME, sizeof(drvinfo->driver)); >+ strlcpy(drvinfo->version, BYPASS_DRV_VERSION, sizeof(drvinfo->version)); >+} >+ >+int bypass_ethtool_get_link_ksettings(struct net_device *dev, >+ struct ethtool_link_ksettings *cmd) >+{ >+ struct bypass_info *bi = netdev_priv(dev); >+ struct net_device *slave_netdev; >+ >+ slave_netdev = rtnl_dereference(bi->active_netdev); >+ if (!slave_netdev || !bypass_xmit_ready(slave_netdev)) { >+ slave_netdev = rtnl_dereference(bi->backup_netdev); >+...
2018 Apr 11
2
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...ethtool_drvinfo *drvinfo) >+{ >+ strlcpy(drvinfo->driver, BYPASS_DRV_NAME, sizeof(drvinfo->driver)); >+ strlcpy(drvinfo->version, BYPASS_DRV_VERSION, sizeof(drvinfo->version)); >+} >+ >+int bypass_ethtool_get_link_ksettings(struct net_device *dev, >+ struct ethtool_link_ksettings *cmd) >+{ >+ struct bypass_info *bi = netdev_priv(dev); >+ struct net_device *slave_netdev; >+ >+ slave_netdev = rtnl_dereference(bi->active_netdev); >+ if (!slave_netdev || !bypass_xmit_ready(slave_netdev)) { >+ slave_netdev = rtnl_dereference(bi->backup_netdev); >+...
2018 Apr 10
0
[RFC PATCH net-next v6 2/4] net: Introduce generic bypass module
...ce *dev, + struct ethtool_drvinfo *drvinfo) +{ + strlcpy(drvinfo->driver, BYPASS_DRV_NAME, sizeof(drvinfo->driver)); + strlcpy(drvinfo->version, BYPASS_DRV_VERSION, sizeof(drvinfo->version)); +} + +int bypass_ethtool_get_link_ksettings(struct net_device *dev, + struct ethtool_link_ksettings *cmd) +{ + struct bypass_info *bi = netdev_priv(dev); + struct net_device *slave_netdev; + + slave_netdev = rtnl_dereference(bi->active_netdev); + if (!slave_netdev || !bypass_xmit_ready(slave_netdev)) { + slave_netdev = rtnl_dereference(bi->backup_netdev); + if (!slave_netdev || !bypass_xm...