* Re: [PATCH v2 0/2] DSA tagging mismatches
From: David Miller @ 2014-10-28 19:28 UTC (permalink / raw)
To: andrew; +Cc: f.fainelli, netdev
In-Reply-To: <1414187045-8326-1-git-send-email-andrew@lunn.ch>
From: Andrew Lunn <andrew@lunn.ch>
Date: Fri, 24 Oct 2014 23:44:03 +0200
> The second patch is a fix, which should be applied to -rc. It is
> possible to get a DSA configuration which does not work. The patch
> stops this happening.
>
> The first patch detects this situation, and errors out the probe of
> DSA, making it more obvious something is wrong. It is not required to
> apply it -rc.
>
> v2 fixes the use case pointed out by Florian, that a switch driver
> may use DSA_TAG_PROTO_NONE which the patch did not correctly handle.
Series applied, thanks Andrew.
^ permalink raw reply
* Re: pull request: wireless 2014-10-28
From: David Miller @ 2014-10-28 19:30 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, netdev, linux-kernel
In-Reply-To: <20141028190519.GF26283@tuxdriver.com>
From: "John W. Linville" <linville@tuxdriver.com>
Date: Tue, 28 Oct 2014 15:05:19 -0400
> Please pull this batch of fixes intended for the 3.18 stream!
...
> git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless.git tags/master-2014-10-27
Pulled, thanks John.
^ permalink raw reply
* Re: [PATCH 1/1] drivers: net:cpsw: fix probe_dt when only slave 1 is pinned out
From: David Miller @ 2014-10-28 19:44 UTC (permalink / raw)
To: mugunthanvnm; +Cc: netdev
In-Reply-To: <1414156893-1884-1-git-send-email-mugunthanvnm@ti.com>
From: Mugunthan V N <mugunthanvnm@ti.com>
Date: Fri, 24 Oct 2014 18:51:33 +0530
> when slave 0 has no phy and slave 1 connected to phy, driver probe will
> fail as there is no phy id present for slave 0 device tree, so continuing
> even though no phy-id found, also moving mac-id read later to ensure
> mac-id is read from device tree even when phy-id entry in not found.
>
> Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH net 0/3] cdc-ether: handle promiscuous mode
From: David Miller @ 2014-10-28 19:49 UTC (permalink / raw)
To: olivier.blin; +Cc: netdev, oneukum, hayeswang, bjorn
In-Reply-To: <1414172582-30844-1-git-send-email-olivier.blin@softathome.com>
From: Olivier Blin <olivier.blin@softathome.com>
Date: Fri, 24 Oct 2014 19:42:59 +0200
> Since kernel 3.16, my Lenovo USB network adapters (RTL8153) using
> cdc-ether are not working anymore in a bridge.
>
> This is due to commit c472ab68ad67db23c9907a27649b7dc0899b61f9, which
> resets the packet filter when the device is bound.
>
> The default packet filter set by cdc-ether does not include
> promiscuous, while the adapter seemed to have promiscuous enabled by
> default.
>
> This patch series allows to support promiscuous mode for cdc-ether, by
> hooking into set_rx_mode.
>
> Incidentally, maybe this device should be handled by the r8152 driver,
> but this patch series is still nice for other adapters.
Can a usbnet expert please review this series?
Thanks.
^ permalink raw reply
* Re: irq disable in __netdev_alloc_frag() ?
From: Christoph Lameter @ 2014-10-28 19:46 UTC (permalink / raw)
To: Eric Dumazet
Cc: Jesper Dangaard Brouer, Eric Dumazet, Alexander Duyck,
Alexei Starovoitov, Network Development
In-Reply-To: <CANn89i+U0=YrwoUSASejsS37EiXO7dKR25Vx04at3PqGA1EpHA@mail.gmail.com>
On Mon, 27 Oct 2014, Eric Dumazet wrote:
> Unfortunately, SLUB is more expensive than SLAB for many networking workloads.
hackbench performs better with SLUB.
> The cost of disabling interrupts is pure noise compared to cache line misses.
>
> SLUB has poor behavior compared to SLAB with alien caches,
> even with the side effect that 'struct page' is 64 bytes aligned
> instead of being 56 bytes with SLAB
>
> Note that I am not doing SLUB/SLAB tests every day, so it might be
> better nowadays.
Well we did some intensive work on these issues a couple of years ago.
^ permalink raw reply
* Re: [Patch net 2/2] net_sched: always call ->destroy when ->init() fails
From: David Miller @ 2014-10-28 19:58 UTC (permalink / raw)
To: kaber
Cc: cwang, eric.dumazet, xiyou.wangcong, netdev, wang.bo116,
john.r.fastabend, edumazet, vtlam
In-Reply-To: <20141025010359.GD11289@acer.localdomain>
From: Patrick McHardy <kaber@trash.net>
Date: Sat, 25 Oct 2014 02:04:00 +0100
>> Really, we don't have to make all ->init() doing cleanup by itself.
>
> Are you seriously suggesting that it would be better to have ->destroy()
> check what parts were actually initialized and what needs to be cleaned
> up instead of assuming a consistent state and have the only function that
> actually knows the current state on error (->init()) do its own cleanup?
>
> That's not even worth arguing about, its utterly and completely wrong.
I agree with Patrick here.
^ permalink raw reply
* Re: [PATCH net-next 2/2] udp: Reset flow table for flows over unconnected sockets
From: Eric Dumazet @ 2014-10-28 19:59 UTC (permalink / raw)
To: Tom Herbert; +Cc: David Miller, Linux Netdev List
In-Reply-To: <CA+mtBx_+cxm9DgH2WHJWeHMBx9oxnRFNRunBcy32Jz4yj_DYuA@mail.gmail.com>
On Tue, 2014-10-28 at 12:07 -0700, Tom Herbert wrote:
> As I said, for some applications (like DNS which I suspect you're
> basically emulating) it is infeasible to size the table. Try disabling
> RFS for your test.
Well, we already did experiments.
- DNS servers are using kernel bypass.
Damn faster than SO_REUSEPORT on UDP anyway (Ying Cai is working on
this problem, since QUIC does not yet use kernel bypass and wants
FQ/pacing)
- Disable RFS for non TCP flows.
- Or have separate hash tables for TCP/UDP (slightly same effect, as UDP
table is mostly empty in our case)
Disabling RFS is the on/off behavior you seem to push, nice for
benchmarks without hassle.
I will no longer comment on this thread, it appears we disagree and wont
find an agreement.
^ permalink raw reply
* Re: [PATCH] fixup! net: pxa168_eth: Provide phy_interface mode on platform_data
From: David Miller @ 2014-10-28 20:49 UTC (permalink / raw)
To: sebastian.hesselbarth
Cc: antoine.tenart, f.fainelli, eric.y.miao, haojian.zhuang,
linux-arm-kernel, netdev, linux-kernel
In-Reply-To: <1414231739-7447-1-git-send-email-sebastian.hesselbarth@gmail.com>
From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Date: Sat, 25 Oct 2014 12:08:59 +0200
> Do not add phy include to the board file but platform_data include
> instead.
>
> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> ---
> David,
>
> I should have compile tested this patch earlier. I did now on
> pxa168_defconfig right after I received an 0-day kbuild error
> on this patch.
>
> This is the corresponding fix, can you please squash it in?
>
> Thanks and sorry for the noise,
Patch applied to net-next, but:
1) There is never any way for me to "squash" a patch into an old
one. Once I apply a patch it is a permanent commit in my tree
and cannot be undone and/or modified.
Therefore the only thing you can do is send me a relative fix
and that's what shows up in my tree as yet another later commit.
2) Always be specific about the target tree in you subject,
line. Never assume I can figure it out by context.
Thanks.
^ permalink raw reply
* Re: [PATCH] ovs: Turn vports with dependencies into separate modules
From: Alexei Starovoitov @ 2014-10-28 20:57 UTC (permalink / raw)
To: David Miller; +Cc: Thomas Graf, dev@openvswitch.org, netdev@vger.kernel.org
In-Reply-To: <20141028.144344.398016097830457432.davem@davemloft.net>
On Tue, Oct 28, 2014 at 11:43 AM, David Miller <davem@davemloft.net> wrote:
> From: Thomas Graf <tgraf@suug.ch>
> Date: Wed, 22 Oct 2014 17:29:06 +0200
>
>> The internal and netdev vport remain part of openvswitch.ko. Encap
>> vports including vxlan, gre, and geneve can be built as separate
>> modules and are loaded on demand. Modules can be unloaded after use.
>> Datapath ports keep a reference to the vport module during their
>> lifetime.
>>
>> Allows to remove the error prone maintenance of the global list
>> vport_ops_list.
>>
>> Signed-off-by: Thomas Graf <tgraf@suug.ch>
>
> Applied, thanks a lot Thomas.
Thomas,
it fails the build when lockdep is on:
ERROR: "lockdep_ovsl_is_held" [net/openvswitch/vport-gre.ko] undefined!
^ permalink raw reply
* Re: [PATCH -next 0/2] net: allow setting ecn via routing table
From: David Miller @ 2014-10-28 20:57 UTC (permalink / raw)
To: fw; +Cc: netdev
In-Reply-To: <1414276729-17871-1-git-send-email-fw@strlen.de>
From: Florian Westphal <fw@strlen.de>
Date: Sun, 26 Oct 2014 00:38:47 +0200
> These two patches allow turing on explicit congestion notification
> based on the destination network.
>
> For example, assuming the default tcp_ecn sysctl '2', the following will
> enable ecn (tcp_ecn=1 behaviour, i.e. request ecn to be enabled for a
> tcp connection) for all connections to hosts inside the 192.168.2/24 network:
>
> ip route change 192.168.2.0/24 dev eth0 features ecn
>
> Having a more fine-grained per-route setting can be beneficial for
> various reasons, for example 1) within data centers, or 2) local ISPs
> may deploy ECN support for their own video/streaming services [1], etc.
>
> Joint work with Daniel Borkmann, feature suggested by Hannes Frederic Sowa.
>
> The patch to enable this in iproute2 will be posted shortly, it is currently
> also available here:
> http://git.breakpoint.cc/cgit/fw/iproute2.git/commit/?h=iproute_features&id=8843d2d8973fb81c78a7efe6d42e3a17d739003e
>
> [1] http://www.ietf.org/proceedings/89/slides/slides-89-tsvarea-1.pdf, p.15
I don't like how the route metric gives less control than the sysctl.
If the tcp_ecn cases of '1' and '2' make sense for the sysctl, I do not
see why they wouldn't make sense for the per-route knob to.
Implement the following policy, if per-route metric is non-zero use it
instead of the sysctl setting.
Then you have a helper:
static int tcp_ecn_enabled(struct net *net, struct dst_entry *dst)
{
u32 val = dst_metric(dst, RTAX_ECN);
if (val)
return val;
return net->ipv4.sysctl_tcp_ecn;
}
Then there is no other change to make other than an absolute
strict substitution of sysctl_tcp_ecn with tcp_ecn_enabled().
^ permalink raw reply
* Re: [PATCH net] net: phy: Add SGMII Configuration for Marvell 88E1145 Initialization
From: David Miller @ 2014-10-28 21:00 UTC (permalink / raw)
To: vbridger; +Cc: f.fainelli, netdev, vbridger
In-Reply-To: <1414351344-24042-1-git-send-email-vbridger@opensource.altera.com>
From: Vince Bridgers <vbridger@opensource.altera.com>
Date: Sun, 26 Oct 2014 14:22:24 -0500
> Marvell phy 88E1145 configuration & initialization was missing a case
> for initializing SGMII mode. This patch adds that case.
>
> Signed-off-by: Vince Bridgers <vbridger@opensource.altera.com>
Applied, thanks.
^ permalink raw reply
* Re: [PATCH] skbuff.h: fix kernel-doc warning for headers_end
From: David Miller @ 2014-10-28 21:02 UTC (permalink / raw)
To: rdunlap; +Cc: netdev
In-Reply-To: <544DAA6E.4090509@infradead.org>
From: Randy Dunlap <rdunlap@infradead.org>
Date: Sun, 26 Oct 2014 19:14:06 -0700
> From: Randy Dunlap <rdunlap@infradead.org>
>
> Fix kernel-doc warning in <linux/skbuff.h> by making both headers_start
> and headers_end private fields.
>
> Warning(..//include/linux/skbuff.h:654): No description found for parameter 'headers_end[0]'
>
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Applied, thanks a lot Randy.
^ permalink raw reply
* Re: [PATCH net-next] datapath: Rename last_action() as nla_is_last() and move to netlink.h
From: David Miller @ 2014-10-28 21:08 UTC (permalink / raw)
To: simon.horman; +Cc: netdev, pshelar, dev, tgraf, azhou
In-Reply-To: <1414393936-14463-1-git-send-email-simon.horman@netronome.com>
From: Simon Horman <simon.horman@netronome.com>
Date: Mon, 27 Oct 2014 16:12:16 +0900
> The original motivation for this change was to allow the helper to be used
> in files other than actions.c as part of work on an odp select group
> action.
>
> It was as pointed out by Thomas Graf that this helper would be best off
> living in netlink.h. Furthermore, I think that the generic nature of this
> helper means it is best off in netlink.h regardless of if it is used more
> than one .c file or not. Thus, I would like it considered independent of
> the work on an odp select group action.
>
> Cc: Thomas Graf <tgraf@suug.ch>
> Cc: Pravin Shelar <pshelar@nicira.com>
> Cc: Andy Zhou <azhou@nicira.com>
> Signed-off-by: Simon Horman <simon.horman@netronome.com>
Applied, thanks Simon.
^ permalink raw reply
* Re: [PATCH] fixup! net: pxa168_eth: Provide phy_interface mode on platform_data
From: Sebastian Hesselbarth @ 2014-10-28 21:11 UTC (permalink / raw)
To: David Miller
Cc: antoine.tenart, f.fainelli, eric.y.miao, haojian.zhuang,
linux-arm-kernel, netdev, linux-kernel
In-Reply-To: <20141028.164939.509353257563688482.davem@davemloft.net>
On 28.10.2014 21:49, David Miller wrote:
> From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
> Date: Sat, 25 Oct 2014 12:08:59 +0200
>
>> Do not add phy include to the board file but platform_data include
>> instead.
>>
>> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
>> ---
>> David,
>>
>> I should have compile tested this patch earlier. I did now on
>> pxa168_defconfig right after I received an 0-day kbuild error
>> on this patch.
>>
>> This is the corresponding fix, can you please squash it in?
>>
>> Thanks and sorry for the noise,
>
> Patch applied to net-next, but:
>
> 1) There is never any way for me to "squash" a patch into an old
> one. Once I apply a patch it is a permanent commit in my tree
> and cannot be undone and/or modified.
>
> Therefore the only thing you can do is send me a relative fix
> and that's what shows up in my tree as yet another later commit.
Ok, good to know and sorry for the crippled fixup patch. I was assuming
that net-next is also rebased until pulled/moved to some stable state.
> 2) Always be specific about the target tree in you subject,
> line. Never assume I can figure it out by context.
Also, sorry for the little information given.
Thanks,
Sebastian
^ permalink raw reply
* Re: [PATCH net 0/2] net: systemport: RX path and suspend fixes
From: David Miller @ 2014-10-28 21:11 UTC (permalink / raw)
To: f.fainelli; +Cc: netdev
In-Reply-To: <1414519921-3246-1-git-send-email-f.fainelli@gmail.com>
From: Florian Fainelli <f.fainelli@gmail.com>
Date: Tue, 28 Oct 2014 11:11:59 -0700
> These two patches fix a race condition where we have our RX interrupts
> enabled, but not NAPI for the RX path, and the second patch fixes an
> issue for packets stuck in RX fifo during a suspend/resume cycle.
Series applied, thanks.
^ permalink raw reply
* [PATCH] carl9170: Convert byte_rev_table uses to bitrev8
From: Joe Perches @ 2014-10-28 21:18 UTC (permalink / raw)
To: Christian Lamparter
Cc: John W. Linville, Wang, Yalin, Russell King, linux-mm,
Will Deacon, Akinobu Mita, linux-arm-kernel, linux-wireless,
netdev, LKML
In-Reply-To: <1414392371.8884.2.camel@perches.com>
Use the inline function instead of directly indexing the array.
This allows some architectures with hardware instructions
for bit reversals to eliminate the array.
Signed-off-by: Joe Perches <joe@perches.com>
---
On Sun, 2014-10-26 at 23:46 -0700, Joe Perches wrote:
> On Mon, 2014-10-27 at 14:37 +0800, Wang, Yalin wrote:
> > this change add CONFIG_HAVE_ARCH_BITREVERSE config option,
> > so that we can use arm/arm64 rbit instruction to do bitrev operation
> > by hardware.
[]
> > diff --git a/include/linux/bitrev.h b/include/linux/bitrev.h
> > index 7ffe03f..ef5b2bb 100644
> > --- a/include/linux/bitrev.h
> > +++ b/include/linux/bitrev.h
> > @@ -3,6 +3,14 @@
> >
> > #include <linux/types.h>
> >
> > +#ifdef CONFIG_HAVE_ARCH_BITREVERSE
> > +#include <asm/bitrev.h>
> > +
> > +#define bitrev32 __arch_bitrev32
> > +#define bitrev16 __arch_bitrev16
> > +#define bitrev8 __arch_bitrev8
> > +
> > +#else
> > extern u8 const byte_rev_table[256];
drivers/net/wireless/ath/carl9170/phy.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath/carl9170/phy.c b/drivers/net/wireless/ath/carl9170/phy.c
index b80b213..dca6df1 100644
--- a/drivers/net/wireless/ath/carl9170/phy.c
+++ b/drivers/net/wireless/ath/carl9170/phy.c
@@ -994,7 +994,7 @@ static int carl9170_init_rf_bank4_pwr(struct ar9170 *ar, bool band5ghz,
refsel0 = 0;
refsel1 = 1;
}
- chansel = byte_rev_table[chansel];
+ chansel = bitrev8(chansel);
} else {
if (freq == 2484) {
chansel = 10 + (freq - 2274) / 5;
@@ -1002,7 +1002,7 @@ static int carl9170_init_rf_bank4_pwr(struct ar9170 *ar, bool band5ghz,
} else
chansel = 16 + (freq - 2272) / 5;
chansel *= 4;
- chansel = byte_rev_table[chansel];
+ chansel = bitrev8(chansel);
}
d1 = chansel;
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply related
* Re: [PATCH net 0/3] cdc-ether: handle promiscuous mode
From: Oliver Neukum @ 2014-10-28 21:10 UTC (permalink / raw)
To: David Miller; +Cc: olivier.blin, netdev, hayeswang, bjorn
In-Reply-To: <20141028.154926.273240718595756465.davem@davemloft.net>
On Tue, 2014-10-28 at 15:49 -0400, David Miller wrote:
> From: Olivier Blin <olivier.blin@softathome.com>
> Date: Fri, 24 Oct 2014 19:42:59 +0200
>
> > Since kernel 3.16, my Lenovo USB network adapters (RTL8153) using
> > cdc-ether are not working anymore in a bridge.
> >
> > This is due to commit c472ab68ad67db23c9907a27649b7dc0899b61f9, which
> > resets the packet filter when the device is bound.
> >
> > The default packet filter set by cdc-ether does not include
> > promiscuous, while the adapter seemed to have promiscuous enabled by
> > default.
> >
> > This patch series allows to support promiscuous mode for cdc-ether, by
> > hooking into set_rx_mode.
> >
> > Incidentally, maybe this device should be handled by the r8152 driver,
> > but this patch series is still nice for other adapters.
>
> Can a usbnet expert please review this series?
Acked-by: Oliver Neukum <oneukum@suse.de>
Regards
Oliver
^ permalink raw reply
* Re: [PATCH net-next 00/13] Mellanox ethernet driver update Oct-27-2014
From: David Miller @ 2014-10-28 21:22 UTC (permalink / raw)
To: amirv; +Cc: netdev, yevgenyp, ogerlitz
In-Reply-To: <1414402667-8841-1-git-send-email-amirv@mellanox.com>
From: Amir Vadai <amirv@mellanox.com>
Date: Mon, 27 Oct 2014 11:37:34 +0200
> This patchset introduces some small bug fixes, support in get/set of
> vlan offload and get/set/capabilities of the link.
>
> First 7 patches by Saeed, add support in setting/getting link speed and getting
> cable capabilities.
> Next 2 patches also by Saeed, enable the user to turn rx/tx vlan offloading on
> and off.
> Jenni fixed a bug in error flow during device initalization.
> Ido and Jack fixed some code duplication and errors discovered by static checker.
> last patch by me is a fix to make ethtool report the actual rings used by
> indirection QP.
>
> Patches were applied and tested against commit 61ed53d ("Merge tag 'ntb-3.18'
> of git://github.com/jonmason/ntb")
Series applied to net-next, thanks.
^ permalink raw reply
* Re: [PATCH] ovs: Turn vports with dependencies into separate modules
From: David Miller @ 2014-10-28 21:27 UTC (permalink / raw)
To: alexei.starovoitov; +Cc: tgraf, dev, netdev
In-Reply-To: <CAADnVQ+Z6-7sdWAEvHkKR==Nds6hqBfbfPmtUDiZXOTE9DRnGw@mail.gmail.com>
From: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Date: Tue, 28 Oct 2014 13:57:13 -0700
> On Tue, Oct 28, 2014 at 11:43 AM, David Miller <davem@davemloft.net> wrote:
>> From: Thomas Graf <tgraf@suug.ch>
>> Date: Wed, 22 Oct 2014 17:29:06 +0200
>>
>>> The internal and netdev vport remain part of openvswitch.ko. Encap
>>> vports including vxlan, gre, and geneve can be built as separate
>>> modules and are loaded on demand. Modules can be unloaded after use.
>>> Datapath ports keep a reference to the vport module during their
>>> lifetime.
>>>
>>> Allows to remove the error prone maintenance of the global list
>>> vport_ops_list.
>>>
>>> Signed-off-by: Thomas Graf <tgraf@suug.ch>
>>
>> Applied, thanks a lot Thomas.
>
> Thomas,
>
> it fails the build when lockdep is on:
> ERROR: "lockdep_ovsl_is_held" [net/openvswitch/vport-gre.ko] undefined!
I've fixed it thusly:
====================
[PATCH] openvswitch: Export lockdep_ovsl_is_held to modules.
ERROR: "lockdep_ovsl_is_held" [net/openvswitch/vport-gre.ko] undefined!
Reported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
net/openvswitch/datapath.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index aecddb9..f18302f 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -131,6 +131,7 @@ int lockdep_ovsl_is_held(void)
else
return 1;
}
+EXPORT_SYMBOL(lockdep_ovsl_is_held);
#endif
static struct vport *new_vport(const struct vport_parms *);
--
1.7.11.7
^ permalink raw reply related
* Re: [PATCH net 0/3] cdc-ether: handle promiscuous mode
From: David Miller @ 2014-10-28 21:30 UTC (permalink / raw)
To: oneukum; +Cc: olivier.blin, netdev, hayeswang, bjorn
In-Reply-To: <1414530625.29018.1.camel@linux-0dmf.site>
From: Oliver Neukum <oneukum@suse.de>
Date: Tue, 28 Oct 2014 22:10:25 +0100
> On Tue, 2014-10-28 at 15:49 -0400, David Miller wrote:
>> From: Olivier Blin <olivier.blin@softathome.com>
>> Date: Fri, 24 Oct 2014 19:42:59 +0200
>>
>> > Since kernel 3.16, my Lenovo USB network adapters (RTL8153) using
>> > cdc-ether are not working anymore in a bridge.
>> >
>> > This is due to commit c472ab68ad67db23c9907a27649b7dc0899b61f9, which
>> > resets the packet filter when the device is bound.
>> >
>> > The default packet filter set by cdc-ether does not include
>> > promiscuous, while the adapter seemed to have promiscuous enabled by
>> > default.
>> >
>> > This patch series allows to support promiscuous mode for cdc-ether, by
>> > hooking into set_rx_mode.
>> >
>> > Incidentally, maybe this device should be handled by the r8152 driver,
>> > but this patch series is still nice for other adapters.
>>
>> Can a usbnet expert please review this series?
>
> Acked-by: Oliver Neukum <oneukum@suse.de>
Series applied, thanks!
^ permalink raw reply
* Re: [PATCH] ovs: Turn vports with dependencies into separate modules
From: Alexei Starovoitov @ 2014-10-28 21:42 UTC (permalink / raw)
To: David Miller; +Cc: Thomas Graf, dev@openvswitch.org, netdev@vger.kernel.org
In-Reply-To: <20141028.172743.459865270069950735.davem@davemloft.net>
On Tue, Oct 28, 2014 at 2:27 PM, David Miller <davem@davemloft.net> wrote:
>>
>> it fails the build when lockdep is on:
>> ERROR: "lockdep_ovsl_is_held" [net/openvswitch/vport-gre.ko] undefined!
>
> I've fixed it thusly:
thanks! that was quick. the fix looks good.
^ permalink raw reply
* Re: [PATCH] ovs: Turn vports with dependencies into separate modules
From: Thomas Graf @ 2014-10-28 21:47 UTC (permalink / raw)
To: Alexei Starovoitov
Cc: David Miller, dev@openvswitch.org, netdev@vger.kernel.org
In-Reply-To: <CAADnVQK2HRn=XyqF==tuDPFgA5gamVCZmxg5ELVjBX2i0dYwfA@mail.gmail.com>
On 10/28/14 at 02:42pm, Alexei Starovoitov wrote:
> On Tue, Oct 28, 2014 at 2:27 PM, David Miller <davem@davemloft.net> wrote:
> >>
> >> it fails the build when lockdep is on:
> >> ERROR: "lockdep_ovsl_is_held" [net/openvswitch/vport-gre.ko] undefined!
> >
> > I've fixed it thusly:
>
> thanks! that was quick. the fix looks good.
Thanks and sorry for causing this fallout
^ permalink raw reply
* [PATCH net-next 0/3] reduce verifier memory consumption and add tests
From: Alexei Starovoitov @ 2014-10-28 22:11 UTC (permalink / raw)
To: David S. Miller
Cc: Hannes Frederic Sowa, Eric Dumazet, Daniel Borkmann,
Andy Lutomirski, netdev, linux-kernel
Small set of cleanups:
- reduce verifier memory consumption
- add verifier test to check register state propagation and state equivalence
- add JIT test reduced from recent nmap triggered crash
Alexei Starovoitov (3):
bpf: reduce verifier memory consumption
samples: bpf: add a verifier test and summary line
test: bpf: add a testcase reduced from nmap
kernel/bpf/verifier.c | 101 ++++++++++++++++++++++++-------------------
lib/test_bpf.c | 43 ++++++++++++++++++
samples/bpf/test_verifier.c | 46 +++++++++++++++++++-
3 files changed, 145 insertions(+), 45 deletions(-)
--
1.7.9.5
^ permalink raw reply
* [PATCH net-next 2/3] samples: bpf: add a verifier test and summary line
From: Alexei Starovoitov @ 2014-10-28 22:11 UTC (permalink / raw)
To: David S. Miller
Cc: Hannes Frederic Sowa, Eric Dumazet, Daniel Borkmann,
Andy Lutomirski, netdev, linux-kernel
In-Reply-To: <1414534303-9906-1-git-send-email-ast@plumgrid.com>
- add a test specifically targeting verifier state pruning.
It checks state propagation between registers, storing that
state into stack and state pruning algorithm recognizing
equivalent stack and register states.
- add summary line to spot failures easier
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
---
samples/bpf/test_verifier.c | 46 ++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 45 insertions(+), 1 deletion(-)
diff --git a/samples/bpf/test_verifier.c b/samples/bpf/test_verifier.c
index eb4bec0ad8af..63402742345e 100644
--- a/samples/bpf/test_verifier.c
+++ b/samples/bpf/test_verifier.c
@@ -602,6 +602,45 @@ static struct bpf_test tests[] = {
},
.result = ACCEPT,
},
+ {
+ "jump test 5",
+ .insns = {
+ BPF_MOV64_REG(BPF_REG_2, BPF_REG_10),
+ BPF_MOV64_REG(BPF_REG_3, BPF_REG_2),
+ BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 0),
+ BPF_MOV64_IMM(BPF_REG_0, 0),
+ BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 0),
+ BPF_MOV64_IMM(BPF_REG_0, 0),
+ BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 0),
+ BPF_MOV64_IMM(BPF_REG_0, 0),
+ BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 0),
+ BPF_MOV64_IMM(BPF_REG_0, 0),
+ BPF_JMP_IMM(BPF_JGE, BPF_REG_1, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_3, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 2),
+ BPF_STX_MEM(BPF_DW, BPF_REG_2, BPF_REG_2, -8),
+ BPF_JMP_IMM(BPF_JA, 0, 0, 0),
+ BPF_MOV64_IMM(BPF_REG_0, 0),
+ BPF_EXIT_INSN(),
+ },
+ .result = ACCEPT,
+ },
};
static int probe_filter_length(struct bpf_insn *fp)
@@ -630,7 +669,7 @@ static int create_map(void)
static int test(void)
{
- int prog_fd, i;
+ int prog_fd, i, pass_cnt = 0, err_cnt = 0;
for (i = 0; i < ARRAY_SIZE(tests); i++) {
struct bpf_insn *prog = tests[i].insns;
@@ -657,21 +696,25 @@ static int test(void)
printf("FAIL\nfailed to load prog '%s'\n",
strerror(errno));
printf("%s", bpf_log_buf);
+ err_cnt++;
goto fail;
}
} else {
if (prog_fd >= 0) {
printf("FAIL\nunexpected success to load\n");
printf("%s", bpf_log_buf);
+ err_cnt++;
goto fail;
}
if (strstr(bpf_log_buf, tests[i].errstr) == 0) {
printf("FAIL\nunexpected error message: %s",
bpf_log_buf);
+ err_cnt++;
goto fail;
}
}
+ pass_cnt++;
printf("OK\n");
fail:
if (map_fd >= 0)
@@ -679,6 +722,7 @@ fail:
close(prog_fd);
}
+ printf("Summary: %d PASSED, %d FAILED\n", pass_cnt, err_cnt);
return 0;
}
--
1.7.9.5
^ permalink raw reply related
* [PATCH net-next 3/3] test: bpf: add a testcase reduced from nmap
From: Alexei Starovoitov @ 2014-10-28 22:11 UTC (permalink / raw)
To: David S. Miller
Cc: Hannes Frederic Sowa, Eric Dumazet, Daniel Borkmann,
Andy Lutomirski, netdev, linux-kernel
In-Reply-To: <1414534303-9906-1-git-send-email-ast@plumgrid.com>
nmap generates classic BPF programs to filter ARP packets with given target MAC
which triggered a bug in eBPF x64 JIT. The bug was fixed in
commit e0ee9c12157d ("x86: bpf_jit: fix two bugs in eBPF JIT compiler")
This patch is adding a testcase in eBPF instructions (those that
were generated by classic->eBPF converter) to be processed by JIT.
The test is primarily targeting JIT compiler.
Signed-off-by: Alexei Starovoitov <ast@plumgrid.com>
---
lib/test_bpf.c | 43 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/lib/test_bpf.c b/lib/test_bpf.c
index 23e070bcf72d..3f167d2eeb94 100644
--- a/lib/test_bpf.c
+++ b/lib/test_bpf.c
@@ -1756,6 +1756,49 @@ static struct bpf_test tests[] = {
{ },
{ { 0, 1 } }
},
+ {
+ "nmap reduced",
+ .u.insns_int = {
+ BPF_MOV64_REG(R6, R1),
+ BPF_LD_ABS(BPF_H, 12),
+ BPF_JMP_IMM(BPF_JNE, R0, 0x806, 28),
+ BPF_LD_ABS(BPF_H, 12),
+ BPF_JMP_IMM(BPF_JNE, R0, 0x806, 26),
+ BPF_MOV32_IMM(R0, 18),
+ BPF_STX_MEM(BPF_W, R10, R0, -64),
+ BPF_LDX_MEM(BPF_W, R7, R10, -64),
+ BPF_LD_IND(BPF_W, R7, 14),
+ BPF_STX_MEM(BPF_W, R10, R0, -60),
+ BPF_MOV32_IMM(R0, 280971478),
+ BPF_STX_MEM(BPF_W, R10, R0, -56),
+ BPF_LDX_MEM(BPF_W, R7, R10, -56),
+ BPF_LDX_MEM(BPF_W, R0, R10, -60),
+ BPF_ALU32_REG(BPF_SUB, R0, R7),
+ BPF_JMP_IMM(BPF_JNE, R0, 0, 15),
+ BPF_LD_ABS(BPF_H, 12),
+ BPF_JMP_IMM(BPF_JNE, R0, 0x806, 13),
+ BPF_MOV32_IMM(R0, 22),
+ BPF_STX_MEM(BPF_W, R10, R0, -56),
+ BPF_LDX_MEM(BPF_W, R7, R10, -56),
+ BPF_LD_IND(BPF_H, R7, 14),
+ BPF_STX_MEM(BPF_W, R10, R0, -52),
+ BPF_MOV32_IMM(R0, 17366),
+ BPF_STX_MEM(BPF_W, R10, R0, -48),
+ BPF_LDX_MEM(BPF_W, R7, R10, -48),
+ BPF_LDX_MEM(BPF_W, R0, R10, -52),
+ BPF_ALU32_REG(BPF_SUB, R0, R7),
+ BPF_JMP_IMM(BPF_JNE, R0, 0, 2),
+ BPF_MOV32_IMM(R0, 256),
+ BPF_EXIT_INSN(),
+ BPF_MOV32_IMM(R0, 0),
+ BPF_EXIT_INSN(),
+ },
+ INTERNAL,
+ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x08, 0x06, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0x10, 0xbf, 0x48, 0xd6, 0x43, 0xd6},
+ { { 38, 256 } }
+ },
};
static struct net_device dev;
--
1.7.9.5
^ 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