Message ID | 20091203063311.902077645@vyatta.com |
---|---|
State | Deferred, archived |
Delegated to: | David Miller |
Headers | show |
On Thu, 3 Dec 2009 05:02:26 pm Stephen Hemminger wrote: > It is useful for some tools (as well as bonding, and bridging) > for virtio network interface provide more ethtool information. Hi Stephen, Can't see any harm. Some minor questions below: > > Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> > > --- a/drivers/net/virtio_net.c 2009-12-01 14:24:14.766450584 -0800 > +++ b/drivers/net/virtio_net.c 2009-12-01 16:49:18.295535415 -0800 > @@ -763,7 +763,36 @@ static void virtnet_vlan_rx_kill_vid(str > dev_warn(&dev->dev, "Failed to kill VLAN ID %d.\n", vid); > } > > +static void virtnet_get_drvinfo(struct net_device *dev, > + struct ethtool_drvinfo *info) > +{ > + struct virtnet_info *vi = netdev_priv(dev); > + > + strcpy(info->driver, "virtnet"); > + strcpy(info->version, "0.1"); > + strcpy(info->fw_version, "N/A"); > + strcpy(info->bus_info, dev_driver_string(&vi->vdev->dev)); 0.1 as a version is weird. If we need a number, "0" seems best. > + cmd->speed = SPEED_1000; Why 1000? Because it's commong? How about a SPEED_UNLIMITED? Thanks, Rusty. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, 4 Dec 2009 10:32:23 +1030 Rusty Russell <rusty@rustcorp.com.au> wrote: > On Thu, 3 Dec 2009 05:02:26 pm Stephen Hemminger wrote: > > It is useful for some tools (as well as bonding, and bridging) > > for virtio network interface provide more ethtool information. > > Hi Stephen, > > Can't see any harm. Some minor questions below: > > > > > Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> > > > > --- a/drivers/net/virtio_net.c 2009-12-01 14:24:14.766450584 -0800 > > +++ b/drivers/net/virtio_net.c 2009-12-01 16:49:18.295535415 -0800 > > @@ -763,7 +763,36 @@ static void virtnet_vlan_rx_kill_vid(str > > dev_warn(&dev->dev, "Failed to kill VLAN ID %d.\n", vid); > > } > > > > +static void virtnet_get_drvinfo(struct net_device *dev, > > + struct ethtool_drvinfo *info) > > +{ > > + struct virtnet_info *vi = netdev_priv(dev); > > + > > + strcpy(info->driver, "virtnet"); > > + strcpy(info->version, "0.1"); > > + strcpy(info->fw_version, "N/A"); > > + strcpy(info->bus_info, dev_driver_string(&vi->vdev->dev)); > > 0.1 as a version is weird. If we need a number, "0" seems best. > > > + cmd->speed = SPEED_1000; > > Why 1000? Because it's commong? How about a SPEED_UNLIMITED? > Well until the performance is improved, that is about what I see! -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
--- a/drivers/net/virtio_net.c 2009-12-01 14:24:14.766450584 -0800 +++ b/drivers/net/virtio_net.c 2009-12-01 16:49:18.295535415 -0800 @@ -763,7 +763,36 @@ static void virtnet_vlan_rx_kill_vid(str dev_warn(&dev->dev, "Failed to kill VLAN ID %d.\n", vid); } +static void virtnet_get_drvinfo(struct net_device *dev, + struct ethtool_drvinfo *info) +{ + struct virtnet_info *vi = netdev_priv(dev); + + strcpy(info->driver, "virtnet"); + strcpy(info->version, "0.1"); + strcpy(info->fw_version, "N/A"); + strcpy(info->bus_info, dev_driver_string(&vi->vdev->dev)); +} + +static int virtnet_get_settings(struct net_device *dev, struct ethtool_cmd *cmd) +{ + cmd->supported = SUPPORTED_1000baseT_Full | + SUPPORTED_Autoneg | SUPPORTED_FIBRE; + cmd->advertising = ADVERTISED_1000baseT_Full | + ADVERTISED_Autoneg | ADVERTISED_FIBRE; + cmd->speed = SPEED_1000; + cmd->duplex = DUPLEX_FULL; + cmd->port = PORT_FIBRE; + cmd->phy_address = 0; + cmd->transceiver = XCVR_INTERNAL; + cmd->autoneg = AUTONEG_ENABLE; + + return 0; +} + static const struct ethtool_ops virtnet_ethtool_ops = { + .get_settings = virtnet_get_settings, + .get_drvinfo = virtnet_get_drvinfo, .set_tx_csum = virtnet_set_tx_csum, .set_sg = ethtool_op_set_sg, .set_tso = ethtool_op_set_tso,
It is useful for some tools (as well as bonding, and bridging) for virtio network interface provide more ethtool information. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>