Message ID | 1627064206-16032-2-git-send-email-sgoutham@marvell.com |
---|---|
State | New |
Headers | show |
Series | Support ethtool ntuple rule count change | expand |
On Fri, Jul 23, 2021 at 11:46:45PM +0530, Sunil Goutham wrote: > Some NICs share resources like packet filters across > multiple interfaces they support. From HW point of view > it is possible to use all filters for a single interface. > Currently ethtool doesn't support modifying filter count so > that user can allocate more filters to a interface and less > to others. This patch adds ETHTOOL_SRXCLSRLCNT ioctl command > for modifying filter count. > > example command: > ./ethtool -U eth0 rule-count 256 How can use see what the current usage is? How many in total you have available? What the current split is between the interfaces? You say: * Jakub suggested if devlink-resource can be used for this. devlink-resource provides you a standardised mechanism to answer the questions i just asked. So i would have to agree with Jakub. Andrew
On Sat, 2021-07-24 at 19:23 +0200, Andrew Lunn wrote: > On Fri, Jul 23, 2021 at 11:46:45PM +0530, Sunil Goutham wrote: > > Some NICs share resources like packet filters across > > multiple interfaces they support. From HW point of view > > it is possible to use all filters for a single interface. > > Currently ethtool doesn't support modifying filter count so > > that user can allocate more filters to a interface and less > > to others. This patch adds ETHTOOL_SRXCLSRLCNT ioctl command > > for modifying filter count. > > > > example command: > > ./ethtool -U eth0 rule-count 256 > > How can use see what the current usage is? How many in total you have > available? What the current split is between the interfaces? > There is no point of adding this ethtool interface if the orchestration tool already knows the "rule-count" in advance, it's just redundant to have a user managed limiting device in ethtool. > You say: > > * Jakub suggested if devlink-resource can be used for this. > > devlink-resource provides you a standardised mechanism to answer the > questions i just asked. So i would have to agree with Jakub. > +1, devlink is your address when a single device is shared across multiple interfaces. > Andrew
diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h index 67aa713..178f346 100644 --- a/include/uapi/linux/ethtool.h +++ b/include/uapi/linux/ethtool.h @@ -1552,6 +1552,7 @@ enum ethtool_fec_config_bits { #define ETHTOOL_PHY_STUNABLE 0x0000004f /* Set PHY tunable configuration */ #define ETHTOOL_GFECPARAM 0x00000050 /* Get FEC settings */ #define ETHTOOL_SFECPARAM 0x00000051 /* Set FEC settings */ +#define ETHTOOL_SRXCLSRLCNT 0x00000052 /* Set RX class rule count */ /* compatibility with older code */ #define SPARC_ETH_GSET ETHTOOL_GSET diff --git a/net/ethtool/ioctl.c b/net/ethtool/ioctl.c index 6134b18..ca0f75e 100644 --- a/net/ethtool/ioctl.c +++ b/net/ethtool/ioctl.c @@ -2863,6 +2863,7 @@ int dev_ethtool(struct net *net, struct ifreq *ifr) case ETHTOOL_SRXFH: case ETHTOOL_SRXCLSRLDEL: case ETHTOOL_SRXCLSRLINS: + case ETHTOOL_SRXCLSRLCNT: rc = ethtool_set_rxnfc(dev, ethcmd, useraddr); break; case ETHTOOL_FLASHDEV:
Some NICs share resources like packet filters across multiple interfaces they support. From HW point of view it is possible to use all filters for a single interface. Currently ethtool doesn't support modifying filter count so that user can allocate more filters to a interface and less to others. This patch adds ETHTOOL_SRXCLSRLCNT ioctl command for modifying filter count. example command: ./ethtool -U eth0 rule-count 256 Signed-off-by: Sunil Goutham <sgoutham@marvell.com> --- include/uapi/linux/ethtool.h | 1 + net/ethtool/ioctl.c | 1 + 2 files changed, 2 insertions(+)