On Fri, Jul 3, 2015 at 1:07 PM, Jamal Hadi Salim wrote:
> Very nice Eric;-> thanks.
> So now basic accept/drop should be flying ;->
> Other really low hanging fruit is act_csum, vlan and skbedit.
> CCing the respective authors.
Note that act_mirred can be converted as well. I will do this becaus
On Fri, Jul 3, 2015 at 12:59 AM, Michael S. Tsirkin wrote:
>
> Linus, could you please clarify whether making the
> feature depend on the cross-endian guest support
> would address your comment, and whether you think
> this can be merged as is, and the dependency added
> after -rc1?
I'll take it.
Hey
On Fri, Jul 3, 2015 at 1:32 AM, Julian Anastasov wrote:
> To summarize:
> - we should call skb_orphan as soon as possible after
> deciding if packets goes to local or remote real server
> but only for skb->sk set by early_demux, not for packets
> sent by TCP
On 07/03/2015 01:06 AM, Jason Gunthorpe wrote:
On Thu, Jul 02, 2015 at 10:34:54AM +0200, Daniel Borkmann wrote:
So, commit c02db8c6290b moved it into a nested attribute (IFLA_VF_INFO)
where we indeed don't do further validation. Imho, we should pass the
parsed attribute table from nla_parse_nest
Julien Grall wrote:
> The commit efb6de9b4ba0092b2c55f6a52d16294a8a698edd "netfilter: bridge:
> forward IPv6 fragmented packets" introduced a new function
> br_validate_ipv6 which take a reference on the inet6 device. Although,
> the reference is not released at the end.
>
> This will result to t
> diff --git a/include/linux/tcp.h b/include/linux/tcp.h
> index 48c3696..05e0da5 100644
> --- a/include/linux/tcp.h
> +++ b/include/linux/tcp.h
> @@ -254,6 +254,10 @@ struct tcp_sock {
> u32 lost_out; /* Lost packets */
> u32 sacked_out; /* SACK'd
On Fri, 2015-07-03 at 11:36 -0700, Tom Herbert wrote:
> On Thu, Jul 2, 2015 at 9:50 PM, Eric Dumazet wrote:
> > On Thu, 2015-07-02 at 14:04 -0700, Tom Herbert wrote:
> >> When setting up the first skb in a gro list we ensure that all the
> >> headers up to skb_gro_offset have been pulled into head
On Thu, Jul 2, 2015 at 9:50 PM, Eric Dumazet wrote:
> On Thu, 2015-07-02 at 14:04 -0700, Tom Herbert wrote:
>> When setting up the first skb in a gro list we ensure that all the
>> headers up to skb_gro_offset have been pulled into head. In subsequent
>> uses of this skb (e.g. determining same_flo
On Thu, Jul 2, 2015 at 11:47 PM, Santosh R wrote:
> Hi,
>
>I am testing VxLAN performance between VMs using 3.18 host kernel.
> For this I am using below command to bring up the VM.
> # qemu-system-x86_64 -m 4096 -smp 4 -boot c -device
> virtio-net-pci,netdev=tap0,mac=00:11:22:33:44:55 -netdev
GMAIL wrote:
>Hi Jay,
>
>On Friday 03 July 2015 02:12 AM, Jay Vosburgh wrote:
>
>> [ added netdev to cc ]
>>
>> Mazhar Rana wrote:
>>
>>> When "primary_reselect" is set to "failure", primary interface should
>>> not become active until current active slave is up. But if we set first
>>
The commit efb6de9b4ba0092b2c55f6a52d16294a8a698edd "netfilter: bridge:
forward IPv6 fragmented packets" introduced a new function
br_validate_ipv6 which take a reference on the inet6 device. Although,
the reference is not released at the end.
This will result to the impossibility to destroy any n
On 15-07-03 05:08 AM, Eric Dumazet wrote:
> On Fri, 2015-07-03 at 07:25 -0400, Jamal Hadi Salim wrote:
>> On 07/02/15 16:59, Eric Dumazet wrote:
>>> On Thu, 2015-07-02 at 09:35 -0700, John Fastabend wrote:
>>
>>>
>>> Point is to not dirty cache line for every packet ?
>>>
>>> Doing the test means w
On Thu, Jul 2, 2015 at 6:21 PM, Lawrence Brakmo wrote:
> This is a request for comments.
>
> TCP-NV (New Vegas) is a major update to TCP-Vegas. An earlier version of
> NV was presented at 2010's LPC (slides). It is a delayed based
> congestion avoidance for the data center. This version has been t
On Fri, 2015-07-03 at 09:37 -0700, David Miller wrote:
> From: Eric Dumazet
> Date: Fri, 03 Jul 2015 07:00:23 +0200
>
> > tcp_skb_cb is currently 44 bytes, so even if you add one u32, it should
> > not exceed cb[]
>
> Please see sock_skb_cb, which consumes space in skb->cb[] in parallel
> with t
From: Liang Li
Date: Sat, 4 Jul 2015 03:33:00 +0800
> There are two duplicated xenvif_zerocopy_callback() definitions.
> Remove one of them.
>
> Signed-off-by: Liang Li
You really need to fix the date on your computer.
If your date is in the future, as your's is, then your patch appears
out-
From: Hariprasad Shenai
Date: Fri, 3 Jul 2015 16:10:51 +0530
> Part of commit 49aa284fe64c4c1 ("cxgb4: Add support for devlog")
> change introduced a real bug where the Device Log Sequence Numbers are
> no longer being converted from firmware Big-Endian to local CPU-Endian
> format.
>
> This pa
From: Hermin Anggawijaya
Date: Fri, 3 Jul 2015 14:40:52 +1200
> Before commit daad151263cf ("ipv6: Make ipv6_is_mld() inline and use it
> from ip6_mc_input().") MLD packets were only processed locally. After the
> change, a copy of MLD packet goes through ip6_mr_input, causing
> MRT6MSG_NOCACHE
From: Lawrence Brakmo
Date: Thu, 2 Jul 2015 18:21:24 -0700
> This is a request for comments.
>
> TCP-NV (New Vegas) is a major update to TCP-Vegas. An earlier version of
> NV was presented at 2010's LPC (slides). It is a delayed based
> congestion avoidance for the data center. This version has
On Fri, 2015-07-03 at 07:51 -0400, Neil Horman wrote:
> On Thu, Jul 02, 2015 at 02:54:56PM -0700, Joe Perches wrote:
> > It's not clear to me that the sctp_fwdtsn_skip array is
> > always initialized when used.
> >
> > It is appropriate to initialize the array to 0?
> >
> > This patch initializes
On Fri, 2015-07-03 at 16:18 +, David Laight wrote:
> Even on x86 aligning the ethernet receive data on a 4n+2
> boundary is likely to give marginally better performance
> than aligning on a 4n boundary.
You are coming late to the party.
Intel guys decided to change NET_IP_ALIGN to 0 (it was
From: Eric Dumazet
Date: Fri, 03 Jul 2015 07:00:23 +0200
> tcp_skb_cb is currently 44 bytes, so even if you add one u32, it should
> not exceed cb[]
Please see sock_skb_cb, which consumes space in skb->cb[] in parallel
with things like tcp_skb_cb. The usage of skb->cb[] therefore really
is 48 b
From: SF Markus Elfring
Date: Thu, 02 Jul 2015 16:43:43 +0200
> From: Markus Elfring
> Date: Thu, 2 Jul 2015 16:30:24 +0200
>
> The free_percpu() function tests whether its argument is NULL and then
> returns immediately. Thus the test around the call is not needed.
>
> This issue was detected
From: SF Markus Elfring
Date: Thu, 02 Jul 2015 18:08:19 +0200
> From: Markus Elfring
> Date: Thu, 2 Jul 2015 17:58:21 +0200
>
> The module_put() function tests whether its argument is NULL and then
> returns immediately. Thus the test around the call is not needed.
>
> This issue was detected
From: SF Markus Elfring
Date: Thu, 02 Jul 2015 18:45:53 +0200
> From: Markus Elfring
> Date: Thu, 2 Jul 2015 18:38:12 +0200
>
> The module_put() function tests whether its argument is NULL and then
> returns immediately. Thus the test around the call is not needed.
>
> This issue was detected
6fe29354befe ("printk: implement support for extended console
drivers") implemented extended printk support for extended netconsole.
The code added was miniscule but it added static 8k buffer
unconditionally unnecessarily bloating the kernel for cases where
extended netconsole is not used.
This pa
From: Eric Dumazet
> Sent: 01 July 2015 23:14
> To: Joe Perches
...
> > > Then please use netdev_alloc_skb_ip_align(), so that you get rid of
> > > skb_reserve()
> >
> > It seems there are ~50 of these in the kernel tree
> > that could be converted.
> >
>
> Make sure the 2 is really NET_IP_ALIGN
>
From: Dan Carpenter
Date: Fri, 3 Jul 2015 14:28:47 +0300
> On Thu, Jul 02, 2015 at 01:17:35PM -0700, Haiyang Zhang wrote:
>> When packet encapsulation is in use, the MTU needs to be reduced for
>> headroom reservation.
>> The existing code takes the updated MTU value only from the host side.
>> B
Hi Sam,
On Fri, Jul 03, 2015 at 04:49:51PM +0300, Sam Protsenko wrote:
> Hi,
>
> I'm having issues running user-space code, which uses net/l2tp/l2tp_ppp.c.
> The code is supposed to be running in LAC mode (which is I believe is
> default).
> My server configuration described here: https://wiki.l
On Fri, Jul 03, 2015 at 04:07:34PM +0200, Petr Mladek wrote:
> > @@ -2561,9 +2591,11 @@ void register_console(struct console *newcon)
> > console_drivers->next = newcon;
> > }
> >
> > - if (newcon->flags & CON_EXTENDED)
> > - if (!nr_ext_console_drivers++)
> > + if (
Maxime,
On Fri, 3 Jul 2015 16:25:51 +0200, Maxime Ripard wrote:
> +static void mvneta_percpu_enable(void *arg)
> +{
> + struct mvneta_port *pp = arg;
> +
> + enable_percpu_irq(pp->dev->irq, IRQ_TYPE_NONE);
> +}
> +
> static int mvneta_open(struct net_device *dev)
> {
> struct mvn
Hi,
This patchset reworks the Marvell neta driver in order to really
support its per-CPU interrupts, instead of faking them as SPI, and
allow the use of any RX queue instead of the hardcoded RX queue 0 that
we have currently.
Let me know what you think,
Maxime
Maxime Ripard (6):
net: mvneta: F
The mvneta driver allows to change the default RX queue trough the rxq_def
kernel parameter.
However, the current code doesn't allow to have any value but 0. It is
actively checked for in the driver's probe because the drivers makes a
number of assumption and takes a number of shortcuts in order t
Since the switch to per-CPU interrupts, we lost the ability to set which
CPU was going to receive our RX interrupt, which was now only the CPU on
which the mvneta_open function was run.
We can now assign our queues to their respective CPUs, and make sure only
this CPU is going to handle our traffi
The CPU_MAP register is duplicated for each CPUs at different addresses,
each instance being at a different address.
However, the code so far was using CONFIG_NR_CPUS to initialise the CPU_MAP
registers for each registers, while the SoCs embed at most 4 CPUs.
This is especially an issue with mult
The documentation of request_percpu_irq is confusing and suggest that the
interrupt is not enabled at all, while it is actually enabled on the local
CPU.
Clarify that.
Signed-off-by: Maxime Ripard
---
kernel/irq/manage.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a
Now that our interrupt controller is allowing us to use per-CPU interrupts,
actually use it in the mvneta driver.
This involves obviously reworking the driver to have a CPU-local NAPI
structure, and report for incoming packet using that structure.
Signed-off-by: Maxime Ripard
---
drivers/net/et
The MPIC driver currently has a list of interrupts to handle as per-cpu.
Since the timer, fabric and neta interrupts were the only per-cpu
interrupts in the system, we can now remove the switch and just check for
the hardware irq number to determine whether a given interrupt is per-cpu
or not.
Si
On Thu 2015-07-02 12:21:41, Tejun Heo wrote:
> 6fe29354befe ("printk: implement support for extended console
> drivers") implemented extended printk support for extended netconsole.
> The code added was miniscule but it added static 8k buffer
> unconditionally unnecessarily bloating the kernel for
Hi,
I'm having issues running user-space code, which uses net/l2tp/l2tp_ppp.c.
The code is supposed to be running in LAC mode (which is I believe is default).
My server configuration described here: https://wiki.linaro.org/LMG/Kernel/PPP
I was trying to use next code snippets as user-space part:
They are unused after commit f631c44bbe15 ("ipvlan: Always set broadcast bit in
multicast filter").
Signed-off-by: Konstantin Khlebnikov
---
drivers/net/ipvlan/ipvlan.h |2 -
drivers/net/ipvlan/ipvlan_main.c | 65 +++---
2 files changed, 26 insertions(+
All structures used in traffic forwarding are rcu-protected:
ipvl_addr, ipvl_dev and ipvl_port. Thus we can unhash addresses
without synchronization. We'll anyway hash it back into the same
bucket, in worst case lockless lookup will scan hash once again.
Signed-off-by: Konstantin Khlebnikov
---
Inet6addr notifier is atomic and runs in bh context without RTNL when
ipv6 receives router advertisement packet and performs autoconfiguration.
This patch adds ipvl_port->addr_lock and helpers: ipvlan_addr_lock_bh,
ipvlan_addr_unlock_bh for protecting ipvlan addresses and hash table.
Signed-off-b
This patchset fixes ipvlan and its interaction with ipv6 RA. Now ipvlan l2
ports get dev_id and construct unique ipv6 addresses using one mac address.
Changes since v1 (http://comments.gmane.org/gmane.linux.network/363346)
* locking for ipv6 addresses fixed inside ipvlan
* rcu splat will be fixed
All ipvlan ports use one MAC address, this way ipv6 RA tries to assign
one ipv6 address to all of them. This patch assigns unique dev_id to each
ipvlan port. This field is used instead of common FF-FE in Modified EUI-64.
Signed-off-by: Konstantin Khlebnikov
---
Documentation/networking/ipvlan.tx
Add missing kfree_rcu(addr, rcu);
Signed-off-by: Konstantin Khlebnikov
---
drivers/net/ipvlan/ipvlan_main.c |1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ipvlan/ipvlan_main.c b/drivers/net/ipvlan/ipvlan_main.c
index 62577b3f01f2..4c3a0ac85381 100644
--- a/drivers/net/ipvlan/
On Fri, 2015-07-03 at 07:25 -0400, Jamal Hadi Salim wrote:
> On 07/02/15 16:59, Eric Dumazet wrote:
> > On Thu, 2015-07-02 at 09:35 -0700, John Fastabend wrote:
>
> >
> > Point is to not dirty cache line for every packet ?
> >
> > Doing the test means we attempt dirtying only ~HZ times per second,
On Thu, Jul 02, 2015 at 02:54:56PM -0700, Joe Perches wrote:
> It's not clear to me that the sctp_fwdtsn_skip array is
> always initialized when used.
>
> It is appropriate to initialize the array to 0?
>
> This patch initializes the array too 0 and moves the
> local variables into the blocks whe
On Thu, Jul 02, 2015 at 01:17:35PM -0700, Haiyang Zhang wrote:
> When packet encapsulation is in use, the MTU needs to be reduced for
> headroom reservation.
> The existing code takes the updated MTU value only from the host side.
> But vSwitch extensions, such as Open vSwitch, require the flexibil
On 07/02/15 16:59, Eric Dumazet wrote:
On Thu, 2015-07-02 at 09:35 -0700, John Fastabend wrote:
Point is to not dirty cache line for every packet ?
Doing the test means we attempt dirtying only ~HZ times per second,
which really matters to handle millions of packets per second.
My tests sho
On 07/02/15 09:07, Eric Dumazet wrote:
Final step for gact RCU operation :
1) Use percpu stats
2) update lastuse only every clock tick
3) Remove spinlock acquisition, as it is no longer needed.
Since this is the last contended lock in packet RX when tc gact is used,
this gives impressive gain.
On 07/02/15 09:07, Eric Dumazet wrote:
Third step for gact RCU operation :
Following patch will get rid of spinlock protection,
so we need to read tcfg_ptype once.
Signed-off-by: Eric Dumazet
Acked-by: Jamal Hadi Salim
cheers,
jamal
--
To unsubscribe from this list: send the line "unsubs
On 07/02/15 09:07, Eric Dumazet wrote:
Second step for gact RCU operation :
We want to get rid of the spinlock protecting gact operations.
Stats (packets/bytes) will soon be per cpu.
gact_determ() would not work without a central packet counter,
so lets add it for this mode.
Signed-off-by: Eri
On 07/02/15 09:07, Eric Dumazet wrote:
First step for gact RCU operation :
Instead of testing if tcfg_pval is zero or not, just make it 1.
No change in behavior, but slightly faster code.
Signed-off-by: Eric Dumazet
Acked-by: Jamal Hadi Salim
cheers,
jamal
--
To unsubscribe from this lis
On 07/02/15 09:07, Eric Dumazet wrote:
Reuse existing percpu infrastructure Jonh added for qdisc.
I am not big on typos - s/Jonh/John ? ;->
This patch adds a new cpustats parameter to tcf_hash_create() and all
actions pass false, meaning this patch should have no effect yet.
Signed-off-by:
On 07/02/15 09:07, Eric Dumazet wrote:
qdisc_bstats_update_cpu() and other helpers were added to support
percpu stats for qdisc.
We want to add percpu stats for tc action, so this patch add common
helpers.
qdisc_bstats_update_cpu() is renamed to qdisc_bstats_cpu_update()
qdisc_qstats_drop_cpu()
On 06/18/15 at 09:49pm, Roopa Prabhu wrote:
> +static inline struct lwtunnel_state *lwtunnel_skb_lwstate(struct sk_buff
> *skb)
> +{
> + struct rtable *rt = (struct rtable *)skb_dst(skb);
> +
> + return rt->rt_lwtstate;
> +}
Noticed while rebasing onto your patches. This needs an
ifdef CO
On 06/18/15 at 09:49pm, Roopa Prabhu wrote:
> +#ifdef CONFIG_LWTUNNEL
> + if (fi->fib_nh->nh_lwtstate) {
> + struct lwtunnel_state *lwtstate;
> +
> + lwtstate = fi->fib_nh->nh_lwtstate;
> + if (nla_put_u16(skb, RTA_ENCAP_TYPE,
Hi Jay,
On Friday 03 July 2015 02:12 AM, Jay Vosburgh wrote:
[ added netdev to cc ]
Mazhar Rana wrote:
When "primary_reselect" is set to "failure", primary interface should
not become active until current active slave is up. But if we set first
I think you mean "until curre
Hi Reyad,
> From: Reyad Attiyat [mailto:reyad.atti...@gmail.com]
> Sent: Monday, June 29, 2015 6:38 AM
> To: Amitkumar Karwar; pat...@marvell.com; kv...@codeaurora.org;
> bz...@marvell.com
> Cc: linux-wirel...@vger.kernel.org; netdev@vger.kernel.org; linux-
> ker...@vger.kernel.org; Reyad Attiyat
Hello,
On Thu, 2 Jul 2015, Alex Gartrell wrote:
> On Thu, Jul 2, 2015 at 2:18 PM, Alex Gartrell wrote:
> > If early demux was enabled, we'd use the route from the socket
>
> Actually now that I think about it, this is probably broken, because
> we don't reply to the packet but instead
On Thu, Jul 02, 2015 at 08:01:28AM +0200, Michael S. Tsirkin wrote:
> On Wed, Jul 01, 2015 at 12:02:50PM -0700, Linus Torvalds wrote:
> > On Wed, Jul 1, 2015 at 2:31 AM, Michael S. Tsirkin wrote:
> > > virtio/vhost: cross endian support
> >
> > Ugh. Does this really have to be dynamic?
> >
> > C
There are two duplicated xenvif_zerocopy_callback() definitions.
Remove one of them.
Signed-off-by: Liang Li
---
drivers/net/xen-netback/common.h | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/net/xen-netback/common.h b/drivers/net/xen-netback/common.h
index 8a495b3..c6cb85a 10064
Hello,
I would prefer to replace this line of code with returning of value, where any
non-negative value would indicate success, whereas negative values would
indicate some errors. It would mean, of course, no returning of any pointers.
BR
Marek
-Original Message-
From: Alexander Sver
Hi David,
On 02/07/15 21:12, ext David Miller wrote:
>> It's not allowed to assign data pointer of skbuff directly, this makes no
>> sense
>> > if the assigned pointer is the very same as already existing one, or it
>> > brakes
>> > all the pointer arithmetics in all other cases. We cannot do be
Hi,
Erik Kline wrote:
> Per RFC 6724, section 4, "Candidate Source Addresses":
>
> It is RECOMMENDED that the candidate source addresses be the set
> of unicast addresses assigned to the interface that will be used
> to send to the destination (the "outgoing" interface).
>
> Add a sy
I have three nits to pick...
On Thu, Jul 02, 2015 at 06:14:48PM -0700, Christopher Hall wrote:
> diff --git a/include/linux/ptp_clock_kernel.h
> b/include/linux/ptp_clock_kernel.h
> index b8b7306..344f129 100644
> --- a/include/linux/ptp_clock_kernel.h
> +++ b/include/linux/ptp_clock_kernel.h
> @
66 matches
Mail list logo