diff options
author | Michał Mirosław <mirq-linux@rere.qmqm.pl> | 2011-02-15 16:59:18 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-02-17 14:16:35 -0800 |
commit | cf0bdefd4676ad4ad59507a058821491a40ec7e6 (patch) | |
tree | f1a18c44a6b65ebd49a936afd4afe9c4ef7ab99f /drivers/net/loopback.c | |
parent | e83d360d9a7e5d71d55c13e96b19109a2ea23bf0 (diff) | |
download | op-kernel-dev-cf0bdefd4676ad4ad59507a058821491a40ec7e6.zip op-kernel-dev-cf0bdefd4676ad4ad59507a058821491a40ec7e6.tar.gz |
loopback: convert to hw_features
This also enables TSOv6, TSO-ECN, and UFO as loopback clearly can handle them.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/loopback.c')
-rw-r--r-- | drivers/net/loopback.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c index 2d9663a..ea0dc45 100644 --- a/drivers/net/loopback.c +++ b/drivers/net/loopback.c @@ -129,10 +129,6 @@ static u32 always_on(struct net_device *dev) static const struct ethtool_ops loopback_ethtool_ops = { .get_link = always_on, - .set_tso = ethtool_op_set_tso, - .get_tx_csum = always_on, - .get_sg = always_on, - .get_rx_csum = always_on, }; static int loopback_dev_init(struct net_device *dev) @@ -169,9 +165,12 @@ static void loopback_setup(struct net_device *dev) dev->type = ARPHRD_LOOPBACK; /* 0x0001*/ dev->flags = IFF_LOOPBACK; dev->priv_flags &= ~IFF_XMIT_DST_RELEASE; + dev->hw_features = NETIF_F_ALL_TSO | NETIF_F_UFO; dev->features = NETIF_F_SG | NETIF_F_FRAGLIST - | NETIF_F_TSO + | NETIF_F_ALL_TSO + | NETIF_F_UFO | NETIF_F_NO_CSUM + | NETIF_F_RXCSUM | NETIF_F_HIGHDMA | NETIF_F_LLTX | NETIF_F_NETNS_LOCAL; |