From: Simon Horman <simon.horman@netronome•com>
To: Jamal Hadi Salim <jhs@mojatatu•com>
Cc: Jiri Pirko <jiri@resnulli•us>,
netdev@vger•kernel.org, davem@davemloft•net,
nhorman@tuxdriver•com, andy@greyhouse•net, tgraf@suug•ch,
dborkman@redhat•com, ogerlitz@mellanox•com, jesse@nicira•com,
pshelar@nicira•com, azhou@nicira•com, ben@decadent•org.uk,
stephen@networkplumber•org, jeffrey.t.kirsher@intel•com,
vyasevic@redhat•com, xiyou.wangcong@gmail•com,
john.r.fastabend@intel•com, edumazet@google•com,
sfeldma@gmail•com, f.fainelli@gmail•com,
roopa@cumulusnetworks•com, linville@tuxdriver•com,
jasowang@redhat•com, ebiederm@xmission•com,
nicolas.dichtel@6wind•com, ryazanov.s.a@gmail•com,
buytenh@wantstofly•org, aviadr@mellanox•com, nbd@openwrt•org,
alexei.starovoitov@gmail•com, Neil.Jerram@metaswitch•com,
ronye@mellanox•com, alexander.h.duyck@redhat•com,
john.ronciak@intel•com, mleitner@redhat•com, shrijeet@gmail•com,
gospo@cumulusnetworks•com, bcrl@kvack•org
Subject: Re: [patch net-next v2 00/10] introduce rocker switch driver with hardware accelerated datapath api - phase 1: bridge fdb offload
Date: Mon, 10 Nov 2014 12:46:14 +0900 [thread overview]
Message-ID: <20141110034612.GB17246@vergenet.net> (raw)
In-Reply-To: <5460319B.2010605@mojatatu.com>
Hi Jamal, Hi Jiri,
On a somewhat related note I am also wondering what if any progress has
been made regarding discussions of (and code for) the following:
1. Exposing flow tables to user-space
- I realise that this is Open vSwitch specific to some extent
but I am in no way implying that it should be done instead of
non-Open vSwitch specific work.
- Jiri, IIRC this was part ~v2 of your earlier offload patchset
2. Describing Switch Hardware
- I see John Fastabend moving forwards on this in his git repository
https://github.com/jrfastab/flow-net-next
The way that I see things is that both of the above could be exposed via
netlink. And that the first at least could be backed by NDOs. As such I
see this work as complementary and perhaps applying on top of this
patchset. If I am mistaken in this regards it would be good to know :)
I am of course also interested to know if the above are moving forwards.
To be clear I am very interested in being able to use these APIs to
perform Open vSwitch offloads and I am very happy to help.
(Jamal: I'm also interested in non-Open vSwitch offloads :)
On Sun, Nov 09, 2014 at 10:31:39PM -0500, Jamal Hadi Salim wrote:
> Jiri,
>
> I am hoping you have considered what Ben Lahaise's, John Fastabend's,
> and Roopa's patches after all those discussions and
> meetings we have had (in which you promised you will merge patches
> in). I am not seeing much of that here or mention of anything of that
> sort.
> At least please get their sign on - this is such an important piece of
> new work that you should make sure you get consensus.
> Otherwise we are back to square one and everyone is going their way with
> their patches;
>
> Ben/Roopa/John - please issue either a signed-off as well
> if you agree with this approach otherwise i am hoping none of these
> patches are merged in.
>
> I will look at the patches and comment.
>
> cheers,
> jamal
>
> On 11/09/14 05:51, Jiri Pirko wrote:
> >Hi all.
> >
> >This patchset is just the first phase of switch and switch-ish device
> >support api in kernel. Note that the api will extend (our complete work
> >can be pulled from https://github.com/jpirko/net-next-rocker).
> >
> >So what this patchset includes:
> >- introduce switchdev api for implementing switch drivers (so far
> > only linux bridge fdb offload is covered)
> >- introduce rocker switch driver which implements switchdev api
> >
> >As to the discussion if there is need to have specific class of device
> >representing the switch itself, so far we found no need to introduce that.
> >But we are generally ok with the idea and when the time comes and it will
> >be needed, it can be easily introduced without any disturbance.
> >
> >This patchset introduces switch id export through rtnetlink and sysfs,
> >which is similar to what we have for port id in SR-IOV. I will send iproute2
> >patchset for showing the switch id for port netdevs once this is applied.
> >
> >For detailed description, please see individual patches.
> >
> >v1->v2:
> >- addressed all DaveM's comments
> >
> >Jiri Pirko (5):
> > net: rename netdev_phys_port_id to more generic name
> > net: introduce generic switch devices support
> > rtnl: expose physical switch id for particular device
> > net-sysfs: expose physical switch id for particular device
> > rocker: introduce rocker switch driver
> >
> >Scott Feldman (5):
> > bridge: introduce fdb offloading via switchdev
> > bridge: call netdev_sw_port_stp_update when bridge port STP status
> > changes
> > bridge: add API to notify bridge driver of learned FBD on offloaded
> > device
> > rocker: implement rocker ofdpa flow table manipulation
> > rocker: implement L2 bridge offloading
> >
> > Documentation/networking/switchdev.txt | 59 +
> > MAINTAINERS | 14 +
> > drivers/net/ethernet/Kconfig | 1 +
> > drivers/net/ethernet/Makefile | 1 +
> > drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 2 +-
> > drivers/net/ethernet/intel/i40e/i40e_main.c | 2 +-
> > drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 2 +-
> > drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c | 2 +-
> > drivers/net/ethernet/rocker/Kconfig | 27 +
> > drivers/net/ethernet/rocker/Makefile | 5 +
> > drivers/net/ethernet/rocker/rocker.c | 4182 ++++++++++++++++++++++
> > drivers/net/ethernet/rocker/rocker.h | 427 +++
> > include/linux/if_bridge.h | 18 +
> > include/linux/netdevice.h | 48 +-
> > include/net/switchdev.h | 53 +
> > include/uapi/linux/if_link.h | 1 +
> > net/Kconfig | 1 +
> > net/Makefile | 3 +
> > net/bridge/br_fdb.c | 94 +-
> > net/bridge/br_netlink.c | 2 +
> > net/bridge/br_stp.c | 4 +
> > net/bridge/br_stp_if.c | 3 +
> > net/bridge/br_stp_timer.c | 2 +
> > net/core/dev.c | 2 +-
> > net/core/net-sysfs.c | 26 +-
> > net/core/rtnetlink.c | 30 +-
> > net/switchdev/Kconfig | 13 +
> > net/switchdev/Makefile | 5 +
> > net/switchdev/switchdev.c | 93 +
> > 29 files changed, 5104 insertions(+), 18 deletions(-)
> > create mode 100644 Documentation/networking/switchdev.txt
> > create mode 100644 drivers/net/ethernet/rocker/Kconfig
> > create mode 100644 drivers/net/ethernet/rocker/Makefile
> > create mode 100644 drivers/net/ethernet/rocker/rocker.c
> > create mode 100644 drivers/net/ethernet/rocker/rocker.h
> > create mode 100644 include/net/switchdev.h
> > create mode 100644 net/switchdev/Kconfig
> > create mode 100644 net/switchdev/Makefile
> > create mode 100644 net/switchdev/switchdev.c
> >
>
next prev parent reply other threads:[~2014-11-10 3:46 UTC|newest]
Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-09 10:51 [patch net-next v2 00/10] introduce rocker switch driver with hardware accelerated datapath api - phase 1: bridge fdb offload Jiri Pirko
2014-11-09 10:51 ` [patch net-next v2 01/10] net: rename netdev_phys_port_id to more generic name Jiri Pirko
2014-11-10 3:35 ` Jamal Hadi Salim
2014-11-10 5:23 ` David Miller
2014-11-10 12:06 ` Jamal Hadi Salim
2014-11-10 12:33 ` Daniel Borkmann
2014-11-10 12:56 ` Jamal Hadi Salim
2014-11-10 16:28 ` David Miller
2014-11-10 7:43 ` Jiri Pirko
2014-11-10 12:17 ` Jamal Hadi Salim
2014-11-10 13:16 ` Jiri Pirko
2014-11-10 13:20 ` Jamal Hadi Salim
2014-11-10 16:28 ` David Miller
2014-11-10 19:03 ` Jamal Hadi Salim
2014-11-10 21:57 ` John Fastabend
2014-11-09 10:51 ` [patch net-next v2 02/10] net: introduce generic switch devices support Jiri Pirko
2014-11-10 21:59 ` John Fastabend
2014-11-11 15:11 ` Jiri Pirko
2014-11-11 9:49 ` M. Braun
2014-11-11 10:04 ` Jiri Pirko
2014-11-19 13:28 ` Roopa Prabhu
2014-11-19 13:46 ` Jiri Pirko
2014-11-19 13:59 ` Roopa Prabhu
2014-11-20 15:55 ` Andy Gospodarek
2014-11-21 7:16 ` Jiri Pirko
2014-11-09 10:51 ` [patch net-next v2 03/10] rtnl: expose physical switch id for particular device Jiri Pirko
2014-11-10 3:43 ` Jamal Hadi Salim
2014-11-10 7:45 ` Jiri Pirko
2014-11-10 17:58 ` Roopa Prabhu
2014-11-10 20:02 ` Scott Feldman
2014-11-11 13:55 ` Roopa Prabhu
2014-11-10 22:14 ` Jiri Pirko
2014-11-10 22:31 ` John Fastabend
2014-11-10 22:01 ` John Fastabend
2014-11-09 10:51 ` [patch net-next v2 04/10] net-sysfs: " Jiri Pirko
2014-11-10 22:01 ` John Fastabend
2014-11-09 10:51 ` [patch net-next v2 05/10] rocker: introduce rocker switch driver Jiri Pirko
2014-11-10 22:04 ` John Fastabend
2014-11-11 14:29 ` Thomas Graf
2014-11-11 15:19 ` Jiri Pirko
2014-11-11 15:32 ` Thomas Graf
2014-11-11 15:40 ` Jiri Pirko
2014-11-11 16:10 ` Thomas Graf
2014-11-27 14:09 ` Florian Fainelli
2014-11-11 15:41 ` Roopa Prabhu
2014-11-11 15:44 ` John Fastabend
2014-11-11 15:28 ` Jiri Pirko
2014-11-09 10:51 ` [patch net-next v2 06/10] bridge: introduce fdb offloading via switchdev Jiri Pirko
2014-11-10 3:47 ` Jamal Hadi Salim
2014-11-10 8:15 ` Jiri Pirko
2014-11-10 9:30 ` Scott Feldman
2014-11-10 12:47 ` Jamal Hadi Salim
2014-11-10 13:47 ` Jiri Pirko
2014-11-10 19:13 ` Jamal Hadi Salim
2014-11-10 13:51 ` Thomas Graf
2014-11-10 17:30 ` Andy Gospodarek
2014-11-10 19:03 ` Roopa Prabhu
2014-11-12 13:43 ` Jiri Pirko
2014-11-09 10:51 ` [patch net-next v2 07/10] bridge: call netdev_sw_port_stp_update when bridge port STP status changes Jiri Pirko
2014-11-10 13:11 ` Jamal Hadi Salim
2014-11-10 14:04 ` Thomas Graf
2014-11-10 19:20 ` Jamal Hadi Salim
2014-11-10 15:59 ` Roopa Prabhu
2014-11-09 10:51 ` [patch net-next v2 08/10] bridge: add API to notify bridge driver of learned FBD on offloaded device Jiri Pirko
2014-11-11 14:21 ` Roopa Prabhu
2014-11-11 17:38 ` Scott Feldman
2014-11-11 21:43 ` Roopa Prabhu
2014-11-09 10:51 ` [patch net-next v2 09/10] rocker: implement rocker ofdpa flow table manipulation Jiri Pirko
2014-11-09 10:51 ` [patch net-next v2 10/10] rocker: implement L2 bridge offloading Jiri Pirko
2014-11-10 3:53 ` Jamal Hadi Salim
2014-11-10 8:18 ` Jiri Pirko
2014-11-10 9:10 ` Nicolas Dichtel
2014-11-10 8:46 ` Scott Feldman
2014-11-10 12:27 ` Jamal Hadi Salim
2014-11-10 16:12 ` Roopa Prabhu
2014-11-10 17:36 ` Scott Feldman
2014-11-10 18:35 ` Roopa Prabhu
2014-11-10 19:27 ` Jamal Hadi Salim
2014-11-10 19:47 ` Scott Feldman
2014-11-10 21:14 ` Jamal Hadi Salim
2014-11-10 19:25 ` Jamal Hadi Salim
2014-11-10 17:22 ` Scott Feldman
2014-11-09 16:40 ` [patch net-next] bridge: rename fdb_*_hw to fdb_*_hw_addr to avoid confusion Jiri Pirko
2014-11-11 2:33 ` David Miller
2014-11-11 7:20 ` Jiri Pirko
2014-11-10 3:31 ` [patch net-next v2 00/10] introduce rocker switch driver with hardware accelerated datapath api - phase 1: bridge fdb offload Jamal Hadi Salim
2014-11-10 3:46 ` Simon Horman [this message]
2014-11-10 4:03 ` Jamal Hadi Salim
2014-11-10 4:58 ` Simon Horman
2014-11-10 22:23 ` John Fastabend
2014-11-11 8:51 ` Simon Horman
2014-11-13 5:44 ` Simon Horman
2014-11-13 6:31 ` John Fastabend
2014-11-21 2:01 ` Simon Horman
2014-11-21 7:20 ` John Fastabend
2014-11-10 7:23 ` Jiri Pirko
2014-11-10 12:16 ` Jamal Hadi Salim
2014-11-10 13:12 ` Jiri Pirko
2014-11-10 16:48 ` Thomas Graf
2014-11-12 13:44 ` Jiri Pirko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20141110034612.GB17246@vergenet.net \
--to=simon.horman@netronome$(echo .)com \
--cc=Neil.Jerram@metaswitch$(echo .)com \
--cc=alexander.h.duyck@redhat$(echo .)com \
--cc=alexei.starovoitov@gmail$(echo .)com \
--cc=andy@greyhouse$(echo .)net \
--cc=aviadr@mellanox$(echo .)com \
--cc=azhou@nicira$(echo .)com \
--cc=bcrl@kvack$(echo .)org \
--cc=ben@decadent$(echo .)org.uk \
--cc=buytenh@wantstofly$(echo .)org \
--cc=davem@davemloft$(echo .)net \
--cc=dborkman@redhat$(echo .)com \
--cc=ebiederm@xmission$(echo .)com \
--cc=edumazet@google$(echo .)com \
--cc=f.fainelli@gmail$(echo .)com \
--cc=gospo@cumulusnetworks$(echo .)com \
--cc=jasowang@redhat$(echo .)com \
--cc=jeffrey.t.kirsher@intel$(echo .)com \
--cc=jesse@nicira$(echo .)com \
--cc=jhs@mojatatu$(echo .)com \
--cc=jiri@resnulli$(echo .)us \
--cc=john.r.fastabend@intel$(echo .)com \
--cc=john.ronciak@intel$(echo .)com \
--cc=linville@tuxdriver$(echo .)com \
--cc=mleitner@redhat$(echo .)com \
--cc=nbd@openwrt$(echo .)org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=nhorman@tuxdriver$(echo .)com \
--cc=nicolas.dichtel@6wind$(echo .)com \
--cc=ogerlitz@mellanox$(echo .)com \
--cc=pshelar@nicira$(echo .)com \
--cc=ronye@mellanox$(echo .)com \
--cc=roopa@cumulusnetworks$(echo .)com \
--cc=ryazanov.s.a@gmail$(echo .)com \
--cc=sfeldma@gmail$(echo .)com \
--cc=shrijeet@gmail$(echo .)com \
--cc=stephen@networkplumber$(echo .)org \
--cc=tgraf@suug$(echo .)ch \
--cc=vyasevic@redhat$(echo .)com \
--cc=xiyou.wangcong@gmail$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox