* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
@ 2009-11-13 23:05 Patrick Mullaney
0 siblings, 0 replies; 7+ messages in thread
From: Patrick Mullaney @ 2009-11-13 23:05 UTC (permalink / raw)
To: shemminger; +Cc: arnd, bridge, alacrityvm-devel, kaber, linux-kernel, netdev
On Fri, 2009-11-13 at 13:27 -0800, Stephen Hemminger wrote:
> On Fri, 13 Nov 2009 14:55:06 -0500
> Patrick Mullaney <pmullaney@novell.com> wrote:
>
> > These patches allow other modules to override the receive
> > path of a macvlan. This is being done to support guest
> > VMs operating directly over a macvlan. Routines to allow
> > creation and deletion of macvlans from in-kernel modules
> > were also exposed/added.
>
> Which guest VM, how will it use it? The kernel is not in the business
> of providing infrastructure for out of tree patches.
Actually, any guest vm or container. macvtap was the first to suggest
a patch like this to provide this functionality. This infrastructure
is generic enough to allow others to use it. My interest is in
supporting kvm guests via vbus drivers which are being integrated
in the alacrityvm tree.
>
> Also, macvlan should really being calling netif_receive_skb()
> not going through another queue/softirq cycle.
I understand but you are talking about the current behavior of
macvlans - my goal wasn't to change the current behavior
of macvlans, as I didn't want to disturb what the original author
intended, just provide the ability to override the rx path and
provide for management of macvlans from other kernel modules(not
just via rtnl).
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-28 5:38 ` Stephen Hemminger
@ 2009-11-28 6:58 ` David Miller
0 siblings, 0 replies; 7+ messages in thread
From: David Miller @ 2009-11-28 6:58 UTC (permalink / raw)
To: shemminger
Cc: arnd, pmullaney, kaber, netdev, alacrityvm-devel, linux-kernel, bridge
From: Stephen Hemminger <shemminger@vyatta.com>
Date: Fri, 27 Nov 2009 21:38:24 -0800
> Maybe we should figure out a way for protocols to return new skb in netif_receive_skb
> to avoid extra softirq, but avoid stack overflow?
Eric Dumazet and I tried to find ways to handle this, please see the
archives. It's not an easy problem to solve and none of the patches
we came up with avoided crashes under high stress scenarios.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-28 0:19 ` David Miller
@ 2009-11-28 5:38 ` Stephen Hemminger
2009-11-28 6:58 ` David Miller
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Hemminger @ 2009-11-28 5:38 UTC (permalink / raw)
To: David Miller
Cc: arnd, pmullaney, kaber, netdev, alacrityvm-devel, linux-kernel, bridge
On Fri, 27 Nov 2009 16:19:57 -0800 (PST)
David Miller <davem@davemloft.net> wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> Date: Sat, 28 Nov 2009 00:43:58 +0100
>
> > On Friday 13 November 2009, Stephen Hemminger wrote:
> >> Also, macvlan should really being calling netif_receive_skb()
> >> not going through another queue/softirq cycle.
> >
> > I've added a patch for this in my experimental queue now.
> > When I last tried this, I saw a kernel stack overflow
> > but it seems fine now.
>
> I think it is unwise for any virtual device layer to use netif_receive_skb().
> Just like tunnels they should always use netif_rx().
>
> Otherwise stack overflow is a very real concern.
Maybe we should figure out a way for protocols to return new skb in netif_receive_skb
to avoid extra softirq, but avoid stack overflow?
--
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-27 23:43 ` Arnd Bergmann
@ 2009-11-28 0:19 ` David Miller
2009-11-28 5:38 ` Stephen Hemminger
0 siblings, 1 reply; 7+ messages in thread
From: David Miller @ 2009-11-28 0:19 UTC (permalink / raw)
To: arnd
Cc: shemminger, pmullaney, kaber, netdev, alacrityvm-devel,
linux-kernel, bridge
From: Arnd Bergmann <arnd@arndb.de>
Date: Sat, 28 Nov 2009 00:43:58 +0100
> On Friday 13 November 2009, Stephen Hemminger wrote:
>> Also, macvlan should really being calling netif_receive_skb()
>> not going through another queue/softirq cycle.
>
> I've added a patch for this in my experimental queue now.
> When I last tried this, I saw a kernel stack overflow
> but it seems fine now.
I think it is unwise for any virtual device layer to use netif_receive_skb().
Just like tunnels they should always use netif_rx().
Otherwise stack overflow is a very real concern.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-13 21:27 ` Stephen Hemminger
@ 2009-11-27 23:43 ` Arnd Bergmann
2009-11-28 0:19 ` David Miller
0 siblings, 1 reply; 7+ messages in thread
From: Arnd Bergmann @ 2009-11-27 23:43 UTC (permalink / raw)
To: Stephen Hemminger
Cc: Patrick Mullaney, kaber, netdev, alacrityvm-devel, linux-kernel, bridge
On Friday 13 November 2009, Stephen Hemminger wrote:
> Also, macvlan should really being calling netif_receive_skb()
> not going through another queue/softirq cycle.
I've added a patch for this in my experimental queue now.
When I last tried this, I saw a kernel stack overflow
but it seems fine now.
I wonder if we can also return from the macvlan hook with
skb->dev changed to netif_receive_skb rather than calling it
recursively.
Arnd <><
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-13 19:55 ` [PATCH 0/3] macvlan: support for guest vm direct rx/tx Patrick Mullaney
@ 2009-11-13 21:27 ` Stephen Hemminger
2009-11-27 23:43 ` Arnd Bergmann
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Hemminger @ 2009-11-13 21:27 UTC (permalink / raw)
To: Patrick Mullaney
Cc: kaber, netdev, alacrityvm-devel, linux-kernel, arnd, bridge
On Fri, 13 Nov 2009 14:55:06 -0500
Patrick Mullaney <pmullaney@novell.com> wrote:
> These patches allow other modules to override the receive
> path of a macvlan. This is being done to support guest
> VMs operating directly over a macvlan. Routines to allow
> creation and deletion of macvlans from in-kernel modules
> were also exposed/added.
Which guest VM, how will it use it? The kernel is not in the business
of providing infrastructure for out of tree patches.
Also, macvlan should really being calling netif_receive_skb()
not going through another queue/softirq cycle.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 0/3] macvlan: support for guest vm direct rx/tx
2009-11-11 15:29 [PATCH 2/4] macvlan: allow in-kernel modules to create and manage macvlan devices Patrick McHardy
@ 2009-11-13 19:55 ` Patrick Mullaney
2009-11-13 21:27 ` Stephen Hemminger
0 siblings, 1 reply; 7+ messages in thread
From: Patrick Mullaney @ 2009-11-13 19:55 UTC (permalink / raw)
To: kaber, netdev; +Cc: alacrityvm-devel, linux-kernel, arnd, bridge
(Applies to net-2.6.git/master:1dfc5827)
These patches allow other modules to override the receive
path of a macvlan. This is being done to support guest
VMs operating directly over a macvlan. Routines to allow
creation and deletion of macvlans from in-kernel modules
were also exposed/added.
---
Patrick Mullaney (3):
macvlan: allow in-kernel modules to create and manage macvlan devices
macvlan: derived from Arnd Bergmann's patch for macvtap
netdevice: provide common routine for macvlan and vlan operstate management
drivers/net/macvlan.c | 135 ++++++++++++++++++++++-----------------------
include/linux/macvlan.h | 41 ++++++++++++++
include/linux/netdevice.h | 3 +
net/8021q/vlan.c | 29 +---------
net/core/dev.c | 27 +++++++++
5 files changed, 142 insertions(+), 93 deletions(-)
create mode 100644 include/linux/macvlan.h
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-11-28 6:58 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-11-13 23:05 [PATCH 0/3] macvlan: support for guest vm direct rx/tx Patrick Mullaney
-- strict thread matches above, loose matches on Subject: below --
2009-11-11 15:29 [PATCH 2/4] macvlan: allow in-kernel modules to create and manage macvlan devices Patrick McHardy
2009-11-13 19:55 ` [PATCH 0/3] macvlan: support for guest vm direct rx/tx Patrick Mullaney
2009-11-13 21:27 ` Stephen Hemminger
2009-11-27 23:43 ` Arnd Bergmann
2009-11-28 0:19 ` David Miller
2009-11-28 5:38 ` Stephen Hemminger
2009-11-28 6:58 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®