[ETHTOOL] Provide default behaviors for a few ethtool sub-ioctls
authorJeff Garzik <jeff@garzik.org>
Sat, 15 Sep 2007 21:41:06 +0000 (14:41 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Wed, 10 Oct 2007 23:51:17 +0000 (16:51 -0700)
commit88d3aafdae5c5e1d2dd9489a5c8a24e29d335f2e
tree272ce75c30a170420ac8bbfd679c3faed9f9d20a
parent09f75cd7bf13720738e6a196cc0107ce9a5bd5a0
[ETHTOOL] Provide default behaviors for a few ethtool sub-ioctls

For the operations
get-tx-csum
get-sg
get-tso
get-ufo
the default ethtool_op_xxx behavior is fine for all drivers, so we
permit op==NULL to imply the default behavior.

This provides a more uniform behavior across all drivers, eliminating
ethtool(8) "ioctl not supported" errors on older drivers that had
not been updated for the latest sub-ioctls.

The ethtool_op_xxx() functions are left exported, in case anyone
wishes to call them directly from a driver-private implementation --
a not-uncommon case.  Should an ethtool_op_xxx() helper remain unused
for a while, except by net/core/ethtool.c, we can un-export it at a
later date.

[ Resolved conflicts with set/get value ethtool patch... -DaveM ]

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
38 files changed:
drivers/net/8139cp.c
drivers/net/atl1/atl1_ethtool.c
drivers/net/bnx2.c
drivers/net/bonding/bond_main.c
drivers/net/chelsio/cxgb2.c
drivers/net/cxgb3/cxgb3_main.c
drivers/net/e1000/e1000_ethtool.c
drivers/net/ehea/ehea_ethtool.c
drivers/net/epic100.c
drivers/net/fealnx.c
drivers/net/fec_8xx/fec_main.c
drivers/net/forcedeth.c
drivers/net/fs_enet/fs_enet-main.c
drivers/net/ibm_emac/ibm_emac_core.c
drivers/net/ibmveth.c
drivers/net/ixgb/ixgb_ethtool.c
drivers/net/loopback.c
drivers/net/macvlan.c
drivers/net/mv643xx_eth.c
drivers/net/myri10ge/myri10ge.c
drivers/net/ne2k-pci.c
drivers/net/netxen/netxen_nic_ethtool.c
drivers/net/pcnet32.c
drivers/net/r8169.c
drivers/net/s2io.c
drivers/net/sc92031.c
drivers/net/skge.c
drivers/net/sky2.c
drivers/net/spider_net_ethtool.c
drivers/net/tg3.c
drivers/net/tulip/de2104x.c
drivers/net/tulip/winbond-840.c
drivers/net/typhoon.c
drivers/net/ucc_geth_ethtool.c
drivers/net/via-rhine.c
drivers/net/xen-netfront.c
net/bridge/br_device.c
net/core/ethtool.c