diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2012-01-03 13:04:51 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-01-04 20:09:10 +0100 |
commit | 55664f324c2a1a6386dc88492c5c94aa3d336b93 (patch) | |
tree | a1859e049a47b3bb207882e4b9db126987f2ead9 /net/socket.c | |
parent | gianfar: Reject out-of-range RX NFC locations (diff) | |
download | linux-55664f324c2a1a6386dc88492c5c94aa3d336b93.tar.xz linux-55664f324c2a1a6386dc88492c5c94aa3d336b93.zip |
ethtool: Allow drivers to select RX NFC rule locations
Define special location values for RX NFC that request the driver to
select the actual rule location. This allows for implementation on
devices that use hash-based filter lookup, whereas currently the API is
more suited to devices with TCAM lookup or linear search.
In ethtool_set_rxnfc() and the compat wrapper ethtool_ioctl(), copy
the structure back to user-space after insertion so that the actual
location is returned.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/socket.c')
-rw-r--r-- | net/socket.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/socket.c b/net/socket.c index e62b4f055071..2cad581318fe 100644 --- a/net/socket.c +++ b/net/socket.c @@ -2758,10 +2758,10 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32) case ETHTOOL_GRXRINGS: case ETHTOOL_GRXCLSRLCNT: case ETHTOOL_GRXCLSRULE: + case ETHTOOL_SRXCLSRLINS: convert_out = true; /* fall through */ case ETHTOOL_SRXCLSRLDEL: - case ETHTOOL_SRXCLSRLINS: buf_size += sizeof(struct ethtool_rxnfc); convert_in = true; break; |