Re: [PATCH 09/12] tile: support TSO for IPv6 in tilegx networkdriver

From: David Miller
Date: Wed Jul 31 2013 - 15:25:46 EST


From: Chris Metcalf <cmetcalf@xxxxxxxxxx>
Date: Wed, 31 Jul 2013 11:05:04 -0400

> @@ -1950,6 +1963,7 @@ static void tile_net_setup(struct net_device *dev)
> dev->features |= NETIF_F_HW_CSUM;
> dev->features |= NETIF_F_SG;
> dev->features |= NETIF_F_TSO;
> + dev->features |= NETIF_F_TSO6;
> dev->mtu = 1500;

This driver is severely out of date wrt. how to properly advertise
device features, and you really need to fix this _before_ adding
support for new capabilities.

dev->hw_features specifies what the device is capable of, whereas
dev->features specifies what features are currently enabled.

Using these two values we determine what feature bits the user
can configure on and off using generic code which checks
dev->hw_features when the user makes a request.

You'll also want to have a look at netdev_ops->ndo_fix_features
and netdev_ops->ndo_set_features which allow a driver to handle
attempts to install illegal combinations of features.

You can look at other well maintained drivers to see how this
works.

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/