08 Jul, 2010
1 commit
01 Jul, 2010
2 commits
-
Many NICs use an indirection table to map an RX flow hash value to one
of an arbitrary number of queues (not necessarily a power of 2). It
can be useful to remove some queues from this indirection table so
that they are only used for flows that are specifically filtered
there. It may also be useful to weight the mapping to account for
user processes with the same CPU-affinity as the RX interrupts.Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller -
ethtool_op_set_flags() does not check for unsupported flags, and has
no way of doing so. This means it is not suitable for use as a
default implementation of ethtool_ops::set_flags.Add a 'supported' parameter specifying the flags that the driver and
hardware support, validate the requested flags against this, and
change all current callers to pass this parameter.Change some other trivial implementations of ethtool_ops::set_flags to
call ethtool_op_set_flags().Signed-off-by: Ben Hutchings
Reviewed-by: Stanislaw Gruszka
Acked-by: Jeff Garzik
Signed-off-by: David S. Miller
29 Jun, 2010
1 commit
-
struct ethtool_rxnfc was originally defined in 2.6.27 for the
ETHTOOL_{G,S}RXFH command with only the cmd, flow_type and data
fields. It was then extended in 2.6.30 to support various additional
commands. These commands should have been defined to use a new
structure, but it is too late to change that now.Since user-space may still be using the old structure definition
for the ETHTOOL_{G,S}RXFH commands, and since they do not need the
additional fields, only copy the originally defined fields to and
from user-space.Signed-off-by: Ben Hutchings
Cc: stable@kernel.org
Signed-off-by: David S. Miller
15 Jun, 2010
1 commit
-
commit 97f8aefbbfb5aa5c9944e5fa8149f1fdaf71c7b6 "net: fix ethtool
coding style errors and warnings" changed the indentation of several
macro definitions in ethtool.h. These definitions line up in the diff
where there is an extra character at the start of each line, but not
in the resulting file.Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller
08 Apr, 2010
1 commit
-
Fix coding style errors and warnings output while running checkpatch.pl
on the files net/core/ethtool.c and include/linux/ethtool.hSigned-off-by: chavey
Signed-off-by: David S. Miller
31 Mar, 2010
1 commit
-
This adds ethtool and device feature flag to allow control
of receive hashing offload.Signed-off-by: Stephen Hemminger
Acked-by: Jeff Garzik
Signed-off-by: David S. Miller
06 Mar, 2010
2 commits
-
On 03/04/2010 09:26 AM, Ben Hutchings wrote:
> On Thu, 2010-03-04 at 00:51 -0800, Jeff Kirsher wrote:
>> From: Jeff Garzik
>>
>> This patch is an alternative approach for accessing string
>> counts, vs. the drvinfo indirect approach. This way the drvinfo
>> space doesn't run out, and we don't break ABI later.
> [...]
>> --- a/net/core/ethtool.c
>> +++ b/net/core/ethtool.c
>> @@ -214,6 +214,10 @@ static noinline int ethtool_get_drvinfo(struct net_device *dev, void __user *use
>> info.cmd = ETHTOOL_GDRVINFO;
>> ops->get_drvinfo(dev,&info);
>>
>> + /*
>> + * this method of obtaining string set info is deprecated;
>> + * consider using ETHTOOL_GSSET_INFO instead
>> + */
>
> This comment belongs on the interface (ethtool.h) not the
> implementation.Debatable -- the current comment is located at the callsite of
ops->get_sset_count(), which is where an implementor might think to add
a new call. Not all the numeric fields in ethtool_drvinfo are obtained
from ->get_sset_count().Hence the "some" in the attached patch to include/linux/ethtool.h,
addressing your comment.> [...]
>> +static noinline int ethtool_get_sset_info(struct net_device *dev,
>> + void __user *useraddr)
>> +{
> [...]
>> + /* calculate size of return buffer */
>> + for (i = 0; i< 64; i++)
>> + if (sset_mask& (1ULL<< i))
>> + n_bits++;
> [...]
>
> We have a function for this:
>
> n_bits = hweight64(sset_mask);Agreed.
I've attached a follow-up patch, which should enable my/Jeff's kernel
patch to be applied, followed by this one.Signed-off-by: Jeff Garzik
Signed-off-by: David S. Miller -
This patch is an alternative approach for accessing string
counts, vs. the drvinfo indirect approach. This way the drvinfo
space doesn't run out, and we don't break ABI later.Signed-off-by: Jeff Garzik
Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
26 Feb, 2010
2 commits
-
This reverts commit c79c5ffdce14abb4de3878c5aa8c3c6e5093c69b.
As Jeff points out we can't break the user visible interface
like this, we need to add this into the reserved[] thing.Signed-off-by: David S. Miller
-
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
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
15 Feb, 2010
1 commit
-
Based upon a patch by Oliver Hartkopp .
Signed-off-by: David S. Miller
11 Feb, 2010
1 commit
-
This patchset enables the ethtool layer to program n-tuple
filters to an underlying device. The idea is to allow capable
hardware to have static rules applied that can assist steering
flows into appropriate queues.Hardware that is known to support these types of filters today
are ixgbe and niu.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
04 Dec, 2009
1 commit
-
This patch cleans up the VPD code by creating preprocessor definitions
and using them in the place of hardcoded constants.Signed-off-by: Matt Carlson
Reviewed-by: Michael Chan
Signed-off-by: David S. Miller
29 Nov, 2009
1 commit
-
This patch allows a base driver to specify Direct Attach as the
type of port through the ethtool interface.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
03 Nov, 2009
1 commit
-
This patch provides basic hash rules programming via the ethtool
interface.Signed-off-by: Sandeep Gopalpet
Signed-off-by: David S. Miller
07 Oct, 2009
1 commit
-
After updating firmware stored in flash, users may wish to reset the
relevant hardware and start the new firmware immediately. This should
not be completely automatic as it may be disruptive.A selective reset may also be useful for debugging or diagnostics.
This adds a separate reset operation which takes flags indicating the
components to be reset. Drivers are allowed to reset only a subset of
those requested, and must indicate the actual subset. This allows the
use of generic component masks and some future expansion.Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller
05 Oct, 2009
1 commit
-
The in-tree implementations have all been converted to
get_sset_count().Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller
03 Sep, 2009
1 commit
-
This patch adds support to flash a firmware image to a device using ethtool.
The driver gets the filename of the firmware image and flashes the image
using the request firmware path.The region "on the chip" to be flashed can be specified by an option.
It is upto the device driver to enumerate the region number passed by ethtool,
to the region to be flashed.The default behavior is to flash all the regions on the chip.
Signed-off-by: Ajit Khaparde
Signed-off-by: David S. Miller
28 Jul, 2009
1 commit
-
Signed-off-by: Eric Dumazet
Signed-off-by: David S. Miller
09 Jun, 2009
1 commit
-
Ethtool is a standard way of getting information about
ethernet interfaces. We enhance ethtool kernel interface
& e1000e to make the MDI-X status readable via ethtool in
userspace.Signed-off-by: Chaitanya Lala
Signed-off-by: Arthur Jones
Signed-off-by: Jeff Kirsher
Signed-off-by: David S. Miller
30 Apr, 2009
3 commits
-
Compile-tested only.
Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller -
Add mdio_support and lp_advertising fields to ethtool_cmd. Set these
in mdio45_ethtool_gset{,_npage}().Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller -
Add a PORT_OTHER to represent all other physical port types. Current
NICs generally do not allow switching between multiple port types in
software so specific types should not be needed.Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller
20 Feb, 2009
1 commit
-
Signed-off-by: Santwona Behera
Signed-off-by: David S. Miller
16 Dec, 2008
1 commit
-
This patch adds the ethtool ops to enable and disable GRO. It also
makes GRO depend on RX checksum offload much the same as how TSO
depends on SG support.Signed-off-by: Herbert Xu
Signed-off-by: David S. Miller
07 Aug, 2008
1 commit
-
Introduce the speed_hi field to ethtool_cmd, using the reserved space,
to expand the speed field to 2^32 Megabits/second.Making this field expansion now gives us plenty of time to fix up the
user-space pieces that use SIOCETHTOOL before hardware faster than 64
Gb/s is available.Signed-off-by: Brandon Philips
Signed-off-by: Jeff Garzik
02 Jul, 2008
1 commit
-
Added new interfaces to ethtool to configure receive network flow
distribution across multiple rx rings using hashing.Signed-off-by: Santwona Behera
Signed-off-by: David S. Miller
08 Mar, 2008
1 commit
-
Signed-off-by: Kirill A. Shutemov
Signed-off-by: David S. Miller
03 Feb, 2008
1 commit
-
Signed-off-by: Joe Perches
Signed-off-by: Adrian Bunk
11 Oct, 2007
3 commits
-
Signed-off-by: Jeff Garzik
Signed-off-by: David S. Miller -
Signed-off-by: Jeff Garzik
Signed-off-by: David S. Miller -
Signed-off-by: Jeff Garzik
Signed-off-by: David S. Miller
01 Aug, 2007
1 commit
-
All drivers implement ethtool get_perm_addr the same way -- by calling
the generic function. So we can inline the generic function into the
caller and avoid going through the drivers.Signed-off-by: Matthew Wilcox
Signed-off-by: David S. Miller
15 Jul, 2007
1 commit
-
Add ethtool utility function to set or clear IPV6_CSUM feature flag.
Modify tg3.c and bnx2.c to use this function when doing ethtool -K
to change tx checksum.Signed-off-by: Michael Chan
Signed-off-by: David S. Miller
04 May, 2007
1 commit
-
Add 2.5G supported and advertising bit definitions. 2.5G is supported
by the bnx2 driver.Signed-off-by: Michael Chan
Signed-off-by: David S. Miller
23 Jun, 2006
1 commit
-
This patch adds a generic segmentation offload toggle that can be turned
on/off for each net device. For now it only supports in TCPv4.Signed-off-by: Herbert Xu
Signed-off-by: David S. Miller
29 Apr, 2006
1 commit
-
They shouldn't be using 'u32' et al in structures which are used for
communication with userspace. Switch to the proper types (__u32 etc).Signed-off-by: David Woodhouse
06 Nov, 2005
1 commit
-
Add 5708 copper and serdes basic support, including 2.5 Gbps support
on 5708 serdes. SPEED_2500 is also added to ethtool.hSigned-off-by: Michael Chan
Signed-off-by: John W. Linville
29 Oct, 2005
1 commit
-
Attached is kernel patch for UDP Fragmentation Offload (UFO) feature.
1. This patch incorporate the review comments by Jeff Garzik.
2. Renamed USO as UFO (UDP Fragmentation Offload)
3. udp sendfile support with UFOThis patches uses scatter-gather feature of skb to generate large UDP
datagram. Below is a "how-to" on changes required in network device
driver to use the UFO interface.UDP Fragmentation Offload (UFO) Interface:
-------------------------------------------
UFO is a feature wherein the Linux kernel network stack will offload the
IP fragmentation functionality of large UDP datagram to hardware. This
will reduce the overhead of stack in fragmenting the large UDP datagram to
MTU sized packets1) Drivers indicate their capability of UFO using
dev->features |= NETIF_F_UFO | NETIF_F_HW_CSUM | NETIF_F_SGNETIF_F_HW_CSUM is required for UFO over ipv6.
2) UFO packet will be submitted for transmission using driver xmit routine.
UFO packet will have a non-zero value for"skb_shinfo(skb)->ufo_size"
skb_shinfo(skb)->ufo_size will indicate the length of data part in each IP
fragment going out of the adapter after IP fragmentation by hardware.skb->data will contain MAC/IP/UDP header and skb_shinfo(skb)->frags[]
contains the data payload. The skb->ip_summed will be set to CHECKSUM_HW
indicating that hardware has to do checksum calculation. Hardware should
compute the UDP checksum of complete datagram and also ip header checksum of
each fragmented IP packet.For IPV6 the UFO provides the fragment identification-id in
skb_shinfo(skb)->ip6_frag_id. The adapter should use this ID for generating
IPv6 fragments.Signed-off-by: Ananda Raju
Signed-off-by: Rusty Russell (forwarded)
Signed-off-by: Arnaldo Carvalho de Melo