Message ID | 20100226115355.20213.59254.stgit@localhost.localdomain |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Date: Fri, 26 Feb 2010 03:54:20 -0800 > From: Peter Waskiewicz <peter.p.waskiewicz.jr@intel.com> > > The drvinfo struct should include the number of strings that > get_rx_ntuple will return. It will be variable if an underlying > driver implements its own get_rx_ntuple routine, so userspace > needs to know how much data is coming. > > Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Applied. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 02/26/2010 07:20 AM, David Miller wrote: > From: Jeff Kirsher<jeffrey.t.kirsher@intel.com> > Date: Fri, 26 Feb 2010 03:54:20 -0800 > >> From: Peter Waskiewicz<peter.p.waskiewicz.jr@intel.com> >> >> The drvinfo struct should include the number of strings that >> get_rx_ntuple will return. It will be variable if an underlying >> driver implements its own get_rx_ntuple routine, so userspace >> needs to know how much data is coming. >> >> Signed-off-by: Peter P Waskiewicz Jr<peter.p.waskiewicz.jr@intel.com> >> Signed-off-by: Jeff Kirsher<jeffrey.t.kirsher@intel.com> > > Applied. NAK. Did you even read the patch? We don't increase the size of struct ethtool_drvinfo, _especially_ by sticking struct members into the middle of the struct. What do you think 'reserved' is for??? Jeff -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Jeff Garzik <jeff@garzik.org> Date: Fri, 26 Feb 2010 08:05:19 -0500 > NAK. Did you even read the patch? I did, brain doesn't work sometimes :-) > We don't increase the size of struct ethtool_drvinfo, _especially_ by > sticking struct members into the middle of the struct. > > What do you think 'reserved' is for??? Right, I'll revert, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, 2010-02-26 at 05:11 -0800, David Miller wrote: > From: Jeff Garzik <jeff@garzik.org> > Date: Fri, 26 Feb 2010 08:05:19 -0500 > > > NAK. Did you even read the patch? > > I did, brain doesn't work sometimes :-) > > > We don't increase the size of struct ethtool_drvinfo, _especially_ by > > sticking struct members into the middle of the struct. > > Brain lapse. When you mentioned ABI not being locked down until 2.6.34 is dropped, I didn't think. I'm testing your proposed change, and once I have it working, I'll give it to Jeff K. to get pushed along with a new userspace patch. > > What do you think 'reserved' is for??? > > Right, I'll revert, thanks. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h index cca1c3d..f7992a2 100644 --- a/include/linux/ethtool.h +++ b/include/linux/ethtool.h @@ -63,6 +63,7 @@ struct ethtool_drvinfo { char reserved2[12]; __u32 n_priv_flags; /* number of flags valid in ETHTOOL_GPFLAGS */ __u32 n_stats; /* number of u64's from ETHTOOL_GSTATS */ + __u32 n_ntuples; /* number of n-tuple filters from GSTRINGS */ __u32 testinfo_len; __u32 eedump_len; /* Size of data from ETHTOOL_GEEPROM (bytes) */ __u32 regdump_len; /* Size of data from ETHTOOL_GREGS (bytes) */ diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 31b1edd..1c94f48 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c @@ -224,6 +224,9 @@ static noinline int ethtool_get_drvinfo(struct net_device *dev, void __user *use rc = ops->get_sset_count(dev, ETH_SS_PRIV_FLAGS); if (rc >= 0) info.n_priv_flags = rc; + rc = ops->get_sset_count(dev, ETH_SS_NTUPLE_FILTERS); + if (rc >= 0) + info.n_ntuples = rc; } if (ops->get_regs_len) info.regdump_len = ops->get_regs_len(dev);