* Re: [PATCH] gianfar v3: implement nfc
From: David Miller @ 2011-06-17 3:31 UTC (permalink / raw)
To: sebastian.belden; +Cc: netdev, bhutchings, sebastian.poehn
In-Reply-To: <1308064750.13416.15.camel@DENEC1DT0191>
From: "Sebastian Pöhn" <sebastian.belden@googlemail.com>
Date: Tue, 14 Jun 2011 17:19:10 +0200
> + list_for_each_entry(comp, &priv->rx_list.list, list)
> + {
Please put the openning brace at the end of the previous line.
You did this in several locations of the patch.
^ permalink raw reply
* Re: [RFC 1/2] ethtool: Add DMA Coalescing adapter feature to ethtool.
From: David Miller @ 2011-06-17 3:32 UTC (permalink / raw)
To: carolyn.wyborny; +Cc: netdev, bhutchings
In-Reply-To: <1308071556-6271-1-git-send-email-carolyn.wyborny@intel.com>
From: Carolyn Wyborny <carolyn.wyborny@intel.com>
Date: Tue, 14 Jun 2011 10:12:36 -0700
> This RFC patch adds support for DMA Coalescing device feature
> configuration via ethtool.
>
> Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>
...
> static struct cmdline_info cmdline_offload[] = {
> - { "rx", CMDL_BOOL, &off_csum_rx_wanted, NULL },
> - { "tx", CMDL_BOOL, &off_csum_tx_wanted, NULL },
> - { "sg", CMDL_BOOL, &off_sg_wanted, NULL },
Can you please not destroy the existing formatting of every single
table and piece of code you are modifying?
^ permalink raw reply
* Re: [RFC 2/2] ethtool: Add support for DMA Coalescing feature config to ethtool.
From: David Miller @ 2011-06-17 3:33 UTC (permalink / raw)
To: carolyn.wyborny; +Cc: netdev, bhutchings
In-Reply-To: <1308071606-6333-1-git-send-email-carolyn.wyborny@intel.com>
From: Carolyn Wyborny <carolyn.wyborny@intel.com>
Date: Tue, 14 Jun 2011 10:13:26 -0700
> This RFC patch adds functions to get and set DMA Coalescing feature
> configuration.
>
> Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>
What in the world is "DMA Coalescing feature", what does it do?
Might it want parameters and not just want to be turned on or off?
This change, at a minimum, needs a more descriptive commit log entry.
So that other driver authors can understand what exactly the feature
is and therefore whether they might like to add support for it to
their drivers.
^ permalink raw reply
* Re: [PATCH] gianfar: Use pr_<level>, netdev_<level> and netif_<level>
From: David Miller @ 2011-06-17 3:35 UTC (permalink / raw)
To: joe; +Cc: linux-kernel, sebastian.belden, netdev
In-Reply-To: <1f8bdbed8f110b214daaff8350ae9bde68c9cc12.1308076047.git.joe@perches.com>
From: Joe Perches <joe@perches.com>
Date: Tue, 14 Jun 2011 11:57:47 -0700
> Use the current logging styles.
>
> Add #define DEBUG to get same output for <foo>_dbg messages.
> Convert a few bare printks to pr_err.
>
> Fix a likely copy/paste defect where a test was done with RX values:
> if (num_rx_qs > MAX_RX_QS) {
> but TX limits were emitted:
> printk(KERN_ERR "num_rx_qs(=%d) greater than MAX_RX_QS(=%d)\n",
> num_tx_qs, MAX_TX_QS);
>
> Signed-off-by: Joe Perches <joe@perches.com>
Applied, thanks Joe.
^ permalink raw reply
* Re: [PATCH net-next-2.6] net: rfs: enable RFS before first data packet is received
From: David Miller @ 2011-06-17 3:38 UTC (permalink / raw)
To: bhutchings; +Cc: eric.dumazet, therbert, netdev, hadi
In-Reply-To: <1308268246.2925.37.camel@bwh-desktop>
From: Ben Hutchings <bhutchings@solarflare.com>
Date: Fri, 17 Jun 2011 00:50:46 +0100
> On Wed, 2011-06-15 at 04:15 +0200, Eric Dumazet wrote:
>> @@ -1594,6 +1594,7 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)
>> goto discard;
>>
>> if (nsk != sk) {
>> + sock_rps_save_rxhash(nsk, skb->rxhash);
>> if (tcp_child_process(sk, nsk, skb)) {
>> rsk = nsk;
>> goto reset;
>>
>
> I haven't tried this, but it looks reasonable to me.
>
> What about IPv6? The logic in tcp_v6_do_rcv() looks very similar.
Indeed ipv6 side needs the same fix.
Eric please add that part and resubmit. And in fact I might stick
this into net-2.6 instead of net-next-2.6
Thanks!
^ permalink raw reply
* Re: [PATCH] ppp: use PPP_TRANS instead of the magic number 0x20
From: David Miller @ 2011-06-17 3:44 UTC (permalink / raw)
To: xiaosuo; +Cc: paulus, linux-ppp, netdev
In-Reply-To: <1308124693-6600-1-git-send-email-xiaosuo@gmail.com>
From: Changli Gao <xiaosuo@gmail.com>
Date: Wed, 15 Jun 2011 15:58:13 +0800
> Signed-off-by: Changli Gao <xiaosuo@gmail.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH] phylib: Allow BCM63XX PHY to be selected only on BCM63XX.
From: David Miller @ 2011-06-17 3:45 UTC (permalink / raw)
To: ralf; +Cc: netdev, linux-mips, ffainelli
In-Reply-To: <20110615080758.GA3226@linux-mips.org>
From: Ralf Baechle <ralf@linux-mips.org>
Date: Wed, 15 Jun 2011 09:07:58 +0100
> This PHY is available integrated into BCM63xx series SOCs only.
>
> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH] iptables: document IPv6 TOS mangling bug in old Linux kernels
From: Patrick McHardy @ 2011-06-17 3:47 UTC (permalink / raw)
To: Fernando Luis V�zquez Cao
Cc: Jan Engelhardt, Maciej, Pablo Neira Aysuo,
Netfilter Developer Mailing List,
Linux Networking Developer Mailing List
In-Reply-To: <1308273246.8612.3.camel@nexus.oss.ntt.co.jp>
On 17.06.2011 03:14, Fernando Luis V�zquez Cao wrote:
> In Linux kernels up to and including 2.6.38, with the exception of longterm
> releases 2.6.32.42 (or later) and 2.6.33.15 (or later), there is a bug (*) whereby
> IPv6 TOS mangling does not behave as documented and differs from the IPv4
> version. The TOS mask indicates the bits one wants to zero out, so it needs to
> be inverted before applying it to the original TOS field. However, the
> aformentioned kernels forgo the inversion which breaks --set-tos and its
> mnemonics.
>
> (*) Fixed by upstream commit:
> 1ed2f73d90fb49bcf5704aee7e9084adb882bfc5 (netfilter: IPv6: fix DSCP mangle code)
>
Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply
* Re: [PATCH for 3.0-rc4 0/2] dp83640: bug fixes
From: David Miller @ 2011-06-17 3:48 UTC (permalink / raw)
To: richardcochran; +Cc: linux-kernel, netdev, john.stultz, tglx
In-Reply-To: <cover.1308129342.git.richard.cochran@omicron.at>
From: Richard Cochran <richardcochran@gmail.com>
Date: Wed, 15 Jun 2011 11:55:18 +0200
> This series fixes two status frame related bugs in the driver for the
> dp83640 phy. I am not sure whether you would call this a timer fix or
> a networking fix, so I put both groups on CC.
I've applied both to net-2.6, thanks.
^ permalink raw reply
* Re: [PATCH] sky2: avoid using uninitialized variable
From: Ben Hutchings @ 2011-06-17 3:51 UTC (permalink / raw)
To: David Miller; +Cc: shemminger, gthelen, shemminger, netdev, linux-kernel
In-Reply-To: <20110616.231018.84570655636629416.davem@davemloft.net>
On Thu, 2011-06-16 at 23:10 -0400, David Miller wrote:
> From: Stephen Hemminger <shemminger@vyatta.com>
> Date: Tue, 14 Jun 2011 00:02:30 -0400
>
> > In my experience if phy reads once successfully, it is going
> > to read every time. If there is a problem it only happens on
> > the first access (powered off, bad timing, etc).
>
> It also happens when the PHY can't get a response for a certain
> register, for whatever reason, before internal hw timeouts trigger.
>
> Please, check all MII accesses. That's what I do in every driver
> I've written.
It doesn't help that the mii_if_info operations are defined to never
return errors. This doesn't prevent drivers from doing so internally,
but it does set a bad example.
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
^ permalink raw reply
* Re: [patch -next] rtnetlink: unlock on error path in netlink_dump()
From: David Miller @ 2011-06-17 3:51 UTC (permalink / raw)
To: error27
Cc: gregory.v.rose, eric.dumazet, kaber, chrisw, jeffrey.t.kirsher,
netdev, kernel-janitors
In-Reply-To: <20110615131142.GE23739@shale.localdomain>
From: Dan Carpenter <error27@gmail.com>
Date: Wed, 15 Jun 2011 16:11:42 +0300
> In c7ac8679bec939 "rtnetlink: Compute and store minimum ifinfo dump
> size", we moved the allocation under the lock so we need to unlock
> on error path.
>
> Signed-off-by: Dan Carpenter <error27@gmail.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH] tun: teach the tun/tap driver to support netpoll
From: David Miller @ 2011-06-17 3:53 UTC (permalink / raw)
To: nhorman; +Cc: netdev, riel, maxk, amwang
In-Reply-To: <1308151501-8434-1-git-send-email-nhorman@tuxdriver.com>
From: Neil Horman <nhorman@tuxdriver.com>
Date: Wed, 15 Jun 2011 11:25:01 -0400
> Commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093 changed the behavior of slave
> devices in regards to netpoll. Specifically it created a mutually exclusive
> relationship between being a slave and a netpoll-capable device. This creates
> problems for KVM because guests relied on needing netconsole active on a slave
> device to a bridge. Ideally libvirtd could just attach netconsole to the bridge
> device instead, but thats currently infeasible, because while the bridge device
> supports netpoll, it requires that all slave interface also support it, but the
> tun/tap driver currently does not. The most direct solution is to teach tun/tap
> to support netpoll, which is implemented by the patch below.
>
> I've not tested this yet, but its pretty straightforward.
>
> Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
> Reported-by: Rik van Riel <riel@redhat.com>
> CC: Rik van Riel <riel@redhat.com>
> CC: Maxim Krasnyansky <maxk@qualcomm.com>
> CC: Cong Wang <amwang@redhat.com>
> CC: "David S. Miller" <davem@davemloft.net>
Applied, thanks Neil.
^ permalink raw reply
* Re: [next-next-2.6 PATCH] enic: Add support to configure hardware interrupt coalesce timers in a platform independent way
From: David Miller @ 2011-06-17 3:57 UTC (permalink / raw)
To: vkolluri; +Cc: netdev
In-Reply-To: <20110615211758.28596.12341.stgit@savbu-pc100.cisco.com>
From: Vasanthy Kolluri <vkolluri@cisco.com>
Date: Wed, 15 Jun 2011 14:17:58 -0700
> + /* Get interrupt coalesce timer info
> + */
> +
> + err = enic_dev_intr_coal_timer_info(enic);
Please, comment should be just one line long and empty
line is superflous.
^ permalink raw reply
* Re: [PATCH] sky2: avoid using uninitialized variable
From: David Miller @ 2011-06-17 3:58 UTC (permalink / raw)
To: bhutchings; +Cc: shemminger, gthelen, shemminger, netdev, linux-kernel
In-Reply-To: <1308282695.11457.48.camel@localhost>
From: Ben Hutchings <bhutchings@solarflare.com>
Date: Fri, 17 Jun 2011 04:51:35 +0100
> On Thu, 2011-06-16 at 23:10 -0400, David Miller wrote:
>> From: Stephen Hemminger <shemminger@vyatta.com>
>> Date: Tue, 14 Jun 2011 00:02:30 -0400
>>
>> > In my experience if phy reads once successfully, it is going
>> > to read every time. If there is a problem it only happens on
>> > the first access (powered off, bad timing, etc).
>>
>> It also happens when the PHY can't get a response for a certain
>> register, for whatever reason, before internal hw timeouts trigger.
>>
>> Please, check all MII accesses. That's what I do in every driver
>> I've written.
>
> It doesn't help that the mii_if_info operations are defined to never
> return errors. This doesn't prevent drivers from doing so internally,
> but it does set a bad example.
I totally agree.
^ permalink raw reply
* Re: [PATCH net-2.6] caif: Bugfix - XOFF removed channel from caif-mux
From: David Miller @ 2011-06-17 3:59 UTC (permalink / raw)
To: sjur.brandeland; +Cc: netdev
In-Reply-To: <1308177505-1843-1-git-send-email-sjur.brandeland@stericsson.com>
From: Sjur Brændeland <sjur.brandeland@stericsson.com>
Date: Thu, 16 Jun 2011 00:38:25 +0200
> XOFF was mixed up with DOWN indication, causing causing CAIF channel to be
> removed from mux and all incoming traffic to be lost after receiving flow-off.
> Fix this by replacing FLOW_OFF with DOWN notification.
>
> Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH 03/11] net/can: use printk_ratelimited() instead of printk_ratelimit()
From: David Miller @ 2011-06-17 4:03 UTC (permalink / raw)
To: manuel.f.zerpies-BvGhN7WtUVpvnyFi9AzMs1NpE/a5I+DW
Cc: urs.thuermann-l29pVbxQd1IUtdQbppsyvg,
socketcan-fJ+pQTUTwRTk1uMJSBkQmQ,
linux-kernel-u79uwXL29TY76Z2rM5mHXA,
socketcan-core-0fE9KPoRgkgATYTw5x5z8w,
christian.dietrich-jNDFPZUTrfT6U6xlzOR6HsSSVFg4/55HhC4ANOJQIlc,
netdev-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <6c8d043e92e68ab304999fc1a1f7f4c7a04a818e.1308142053.git.manuel.f.zerpies-BvGhN7WtUVpvnyFi9AzMs1NpE/a5I+DW@public.gmane.org>
From: Manuel Zerpies <manuel.f.zerpies-BvGhN7WtUVpvnyFi9AzMs1NpE/a5I+DW@public.gmane.org>
Date: Thu, 16 Jun 2011 14:08:01 +0200
> Since printk_ratelimit() shouldn't be used anymore (see comment in
> include/linux/printk.h), replace it with printk_ratelimited().
>
> Signed-off-by: Manuel Zerpies <manuel.f.zerpies-BvGhN7WtUVpvnyFi9AzMs1NpE/a5I+DW@public.gmane.org>
Applied.
^ permalink raw reply
* Re: [PATCH 04/11] net/rds: use prink_ratelimited() instead of printk_ratelimit()
From: David Miller @ 2011-06-17 4:03 UTC (permalink / raw)
To: manuel.f.zerpies
Cc: andy.grover, rds-devel, netdev, linux-kernel, christian.dietrich
In-Reply-To: <639d68afea7b4b37a5b8b228f3b15f4f81a61ed8.1308142053.git.manuel.f.zerpies@ww.stud.uni-erlangen.de>
From: Manuel Zerpies <manuel.f.zerpies@ww.stud.uni-erlangen.de>
Date: Thu, 16 Jun 2011 14:09:57 +0200
> Since printk_ratelimit() shouldn't be used anymore (see comment in
> include/linux/printk.h), replace it with printk_ratelimited()
>
> Signed-off-by: Manuel Zerpies <manuel.f.zerpies@ww.stud.uni-erlangen.de>
Applied.
^ permalink raw reply
* Re: [PATCH] e1000: remove unnecessary code
From: David Miller @ 2011-06-17 4:03 UTC (permalink / raw)
To: Gregory.Dietsche
Cc: kernel-janitors, e1000-devel, bruce.w.allan, jesse.brandeburg,
john.ronciak, netdev
In-Reply-To: <1308244170-30304-1-git-send-email-Gregory.Dietsche@cuw.edu>
From: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Date: Thu, 16 Jun 2011 12:09:30 -0500
> Compile tested.
> remove unnecessary code that matches this coccinelle pattern
> if (...)
> return ret;
> return ret;
>
> Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Applied.
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
^ permalink raw reply
* Re: [PATCH] net: icplus: remove unnecessary code
From: David Miller @ 2011-06-17 4:03 UTC (permalink / raw)
To: Gregory.Dietsche
Cc: netdev, kernel-janitors, peppe.cavallaro, u.kleine-koenig
In-Reply-To: <1308243870-30203-1-git-send-email-Gregory.Dietsche@cuw.edu>
From: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Date: Thu, 16 Jun 2011 12:04:30 -0500
> Compile tested.
> remove unnecessary code that matches this coccinelle pattern
> if (...)
> return ret;
> return ret;
>
> Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu>
Applied.
^ permalink raw reply
* Re: [PATCH net-next 5/7] qlcnic: fix default operating state of interface
From: David Miller @ 2011-06-17 4:10 UTC (permalink / raw)
To: anirban.chakraborty; +Cc: netdev, amit.salecha
In-Reply-To: <1308256659-19895-5-git-send-email-anirban.chakraborty@qlogic.com>
From: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
Date: Thu, 16 Jun 2011 13:37:36 -0700
> From: Amit Kumar Salecha <amit.salecha@qlogic.com>
>
> Currently interface shows status as RUNNING, even if there is no link.
> To fix this, netif_carrier_off should be called after register_netdev().
>
> netif_carrier_off calls linkwatch_fire_event(dev); only if netdev is registered,
> otherwise it skips. linkwatch_fire_event set default state of nic interface.
>
> Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com>
> Signed-off-by: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
You cannot do this.
The exact second that register_netdev() is called, the device can
be brought up asynchronously and the link brought into the up state.
Your netif_carrier_off() call will race with this.
This is why no other (properly functioning) driver does what you're
trying to do here.
^ permalink raw reply
* Re: [PATCH 001/001] vlan: don't call ndo_vlan_rx_register on hardware that doesn't have vlan support
From: David Miller @ 2011-06-17 4:13 UTC (permalink / raw)
To: a.reversat; +Cc: netdev
In-Reply-To: <BANLkTimBm8rFF41RzAN6vk3o6SLy6cfZDQ@mail.gmail.com>
From: Antoine Reversat <a.reversat@gmail.com>
Date: Thu, 16 Jun 2011 16:47:13 -0400
> This patch removes the call to ndo_vlan_rx_register if the underlying
> device doesn't have hardware support for VLAN.
> Signed-off-by: Antoine Reversat <a.reversat@gmail.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH] vmxnet3: fix starving rx ring when alloc_skb fails
From: David Miller @ 2011-06-17 4:16 UTC (permalink / raw)
To: scottjg; +Cc: netdev, pv-drivers
In-Reply-To: <1308261747-17702-1-git-send-email-scottjg@vmware.com>
From: "Scott J. Goldman" <scottjg@vmware.com>
Date: Thu, 16 Jun 2011 15:02:27 -0700
> if the rx ring is completely empty, then the device may never fire an rx
> interrupt. unfortunately, the rx interrupt is what triggers populating
> the rx ring with fresh buffers, so this will cause networking to lock
> up.
>
> this patch recycles the last skb that we were about to indicate up to
> the network stack (only if the rx ring is completely starved of skbs)
> so the ring will never be completely empty. If we fail to allocate a
> secondary page buffer, we just indicate a 0 length buffer to the device.
>
> Signed-off-by: Scott J. Goldman <scottjg@vmware.com>
This is why other drivers allocate the replacement skb _first_ before
handing the current receive packet to the stack.
And if the replacement allocation fails, they elide passing the packet
to the stack, and instead recycle it back onto the RX ring.
Please implement your RX policy in this manner, as we advise all Linux
networking drivers to, and you simply won't have this problem.
^ permalink raw reply
* Re: [PATCH] netdev: bfin_mac: fix memory leak when freeing dma descriptors
From: David Miller @ 2011-06-17 4:19 UTC (permalink / raw)
To: vapier; +Cc: netdev, uclinux-dist-devel, sonic.zhang
In-Reply-To: <1308263518-22724-1-git-send-email-vapier@gentoo.org>
From: Mike Frysinger <vapier@gentoo.org>
Date: Thu, 16 Jun 2011 18:31:58 -0400
> From: Sonic Zhang <sonic.zhang@analog.com>
>
> The size of the desc array is not the size of the desc structure, so
> when we try to free up things, we leak some parts.
>
> Reported-by: Regis Dargent <rdargent@edevice.com>
> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Applied, thanks.
^ permalink raw reply
* [RFC 0/2] Allow NICs to pass Frame Checksum up the stack.
From: greearb @ 2011-06-17 4:30 UTC (permalink / raw)
To: netdev; +Cc: Ben Greear
From: Ben Greear <greearb@candelatech.com>
This series provides ethtool support to set and get the rx-checksum
flag, and adds support to the e100 driver.
Assuming this series is acceptable, I would then propose a series of patches
to allow receiving all frames, even ones with bad checksums, etc.
And if that is acceptable, a third series would allow user-space to generate
packets with custom ethernet frame checksums (ie, bad ones if desired).
And finally, more drivers, such as e1000 and hopefully e100e can
be supported.
Ben Greear (2):
net: Support getting/setting RX-FCS in drivers.
e100: Support receiving Ethernet FCS.
drivers/net/e100.c | 39 ++++++++++++++++++++++++++++++++++++---
include/linux/ethtool.h | 5 +++++
net/core/ethtool.c | 38 ++++++++++++++++++++++++++++++++++++++
3 files changed, 79 insertions(+), 3 deletions(-)
--
1.7.3.4
^ permalink raw reply
* [RFC 1/2] net: Support getting/setting RX-FCS in drivers.
From: greearb @ 2011-06-17 4:30 UTC (permalink / raw)
To: netdev; +Cc: Ben Greear
In-Reply-To: <1308285007-11302-1-git-send-email-greearb@candelatech.com>
From: Ben Greear <greearb@candelatech.com>
This will allow us to enable/disable having the Ethernet
frame checksum appended to the skb. Enabling this is
useful when sniffing packets.
In particular, this can be used to test logic that allows
a NIC to receive all frames, even ones with bad checksums.
Signed-off-by: Ben Greear <greearb@candelatech.com>
---
:100644 100644 439b173... e5e8747... M include/linux/ethtool.h
:100644 100644 fd14116... b36bac7... M net/core/ethtool.c
include/linux/ethtool.h | 5 +++++
net/core/ethtool.c | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 43 insertions(+), 0 deletions(-)
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h
index 439b173..e5e8747 100644
--- a/include/linux/ethtool.h
+++ b/include/linux/ethtool.h
@@ -955,6 +955,8 @@ struct ethtool_ops {
int (*get_dump_data)(struct net_device *,
struct ethtool_dump *, void *);
int (*set_dump)(struct net_device *, struct ethtool_dump *);
+ int (*set_save_fcs)(struct net_device *, u32);
+ int (*get_save_fcs)(struct net_device *, u32 *);
};
#endif /* __KERNEL__ */
@@ -1029,6 +1031,9 @@ struct ethtool_ops {
#define ETHTOOL_SET_DUMP 0x0000003e /* Set dump settings */
#define ETHTOOL_GET_DUMP_FLAG 0x0000003f /* Get dump settings */
#define ETHTOOL_GET_DUMP_DATA 0x00000040 /* Get dump data */
+#define ETHTOOL_GETRXFCS 0x00000041 /* Get RX Save Frame Checksum */
+#define ETHTOOL_SETRXFCS 0x00000042 /* Set RX Save Frame Checksum */
+
/* compatibility with older code */
#define SPARC_ETH_GSET ETHTOOL_GSET
diff --git a/net/core/ethtool.c b/net/core/ethtool.c
index fd14116..b36bac7 100644
--- a/net/core/ethtool.c
+++ b/net/core/ethtool.c
@@ -1927,6 +1927,38 @@ out:
return ret;
}
+static int ethtool_get_rx_fcs(struct net_device *dev, void __user *useraddr)
+{
+ struct ethtool_value edata;
+ int rv = 0;
+
+ if (!dev->ethtool_ops->get_save_fcs)
+ return -EOPNOTSUPP;
+
+ rv = dev->ethtool_ops->get_save_fcs(dev, &edata.data);
+ if (rv < 0)
+ return rv;
+
+ if (copy_to_user(useraddr, &edata, sizeof(edata)))
+ return -EFAULT;
+ return 0;
+}
+
+
+static int ethtool_set_rx_fcs(struct net_device *dev, void __user *useraddr)
+{
+ struct ethtool_value id;
+
+ if (!dev->ethtool_ops->set_save_fcs)
+ return -EOPNOTSUPP;
+
+ if (copy_from_user(&id, useraddr, sizeof(id)))
+ return -EFAULT;
+
+ return dev->ethtool_ops->set_save_fcs(dev, id.data);
+}
+
+
/* The main entry point in this file. Called from net/core/dev.c */
int dev_ethtool(struct net *net, struct ifreq *ifr)
@@ -2152,6 +2184,12 @@ int dev_ethtool(struct net *net, struct ifreq *ifr)
case ETHTOOL_GET_DUMP_DATA:
rc = ethtool_get_dump_data(dev, useraddr);
break;
+ case ETHTOOL_SETRXFCS:
+ rc = ethtool_set_rx_fcs(dev, useraddr);
+ break;
+ case ETHTOOL_GETRXFCS:
+ rc = ethtool_get_rx_fcs(dev, useraddr);
+ break;
default:
rc = -EOPNOTSUPP;
}
--
1.7.3.4
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox