linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: <Henrik.Bjoernlund@microchip.com>
To: <nikolay@nvidia.com>, <stephen@networkplumber.org>,
	<Horatiu.Vultur@microchip.com>
Cc: <bridge@lists.linux-foundation.org>, <davem@davemloft.net>,
	<linux-kernel@vger.kernel.org>, <jiri@mellanox.com>,
	<netdev@vger.kernel.org>, <roopa@nvidia.com>,
	<idosch@mellanox.com>, <kuba@kernel.org>,
	<UNGLinuxDriver@microchip.com>
Subject: RE: [PATCH RFC 0/7] net: bridge: cfm: Add support for Connectivity Fault Management(CFM)
Date: Tue, 8 Sep 2020 11:04:40 +0000	[thread overview]
Message-ID: <BY5PR11MB3928DF9AC75B8AEC2FBD2256ED290@BY5PR11MB3928.namprd11.prod.outlook.com> (raw)
In-Reply-To: <b36a32dbf3b4b315fc4cbfdf06084b75a7c58729.camel@nvidia.com>

Hi Nik,

Thanks a lot for reviewing.

-----Original Message-----
From: Nikolay Aleksandrov <nikolay@nvidia.com> 
Sent: 7. september 2020 15:56
To: stephen@networkplumber.org; Horatiu Vultur - M31836 <Horatiu.Vultur@microchip.com>
Cc: bridge@lists.linux-foundation.org; Henrik Bjoernlund - M31679 <Henrik.Bjoernlund@microchip.com>; davem@davemloft.net; linux-kernel@vger.kernel.org; jiri@mellanox.com; netdev@vger.kernel.org; Roopa Prabhu <roopa@nvidia.com>; idosch@mellanox.com; kuba@kernel.org; UNGLinuxDriver <UNGLinuxDriver@microchip.com>
Subject: Re: [PATCH RFC 0/7] net: bridge: cfm: Add support for Connectivity Fault Management(CFM)

EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe

>On Sun, 2020-09-06 at 20:21 +0200, Horatiu Vultur wrote:
>> The 09/04/2020 15:44, Stephen Hemminger wrote:
>> > On Fri, 4 Sep 2020 09:15:20 +0000
>> > Henrik Bjoernlund <henrik.bjoernlund@microchip.com> wrote:
>> >
>> > > Connectivity Fault Management (CFM) is defined in 802.1Q section 12.14.
>> > >
>> > >
>[snip]
>> > > Currently this 'cfm' and 'cfm_server' programs are standalone 
>> > > placed in a cfm repository https://github.com/microchip-ung/cfm 
>> > > but it is considered to integrate this into 'iproute2'.
>> > >
>> > > Reviewed-by: Horatiu Vultur  <horatiu.vultur@microchip.com>
>> > > Signed-off-by: Henrik Bjoernlund  
>> > > <henrik.bjoernlund@microchip.com>
>>
>> Hi Stephen,
>>
>> > Could this be done in userspace? It is a control plane protocol.
>> > Could it be done by using eBPF?
>>
>> I might be able to answer this. We have not considered this approach 
>> of using eBPF. Because we want actually to push this in HW extending 
>> switchdev API. I know that this series doesn't cover the switchdev 
>> part but we posted like this because we wanted to get some feedback 
>> from community. We had a similar approach for MRP, where we extended 
>> the bridge and switchdev API, so we tought that is the way to go forward.
>>
>> Regarding eBPF, I can't say that it would work or not because I lack 
>> knowledge in this.
>>
>> > Adding more code in bridge impacts a large number of users of Linux distros.
>> > It creates bloat and potential security vulnerabilities.
>
>Hi,
>I also had the same initial thought - this really doesn't seem to affect the bridge in any way, it's only collecting and transmitting information. I get that you'd like to use the bridge as a passthrough device to switchdev to program your hw, could you share what would be offloaded more specifically ?
>

Yes.

The HW will offload the periodic sending of CCM frames, and the reception.

If CCM frames are not received as expected, it will raise an interrupt.

This means that all the functionality provided in this series will be offloaded to HW.

The offloading is very important on our HW where we have a small CPU, serving many ports, with a high frequency of CFM frames.

The HW also support Link-Trace and Loop-back, which we may come back to later.

>All you do - snooping and blocking these packets can easily be done from user- space with the help of ebtables, but since we need to have a software implementation/fallback of anything being offloaded via switchdev we might need this after all, I'd just prefer to push as much as possible to user-space.
>
>I plan to review the individual patches tomorrow.
>
>Thanks,
> Nik

  reply	other threads:[~2020-09-08 11:08 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-04  9:15 [PATCH RFC 0/7] net: bridge: cfm: Add support for Connectivity Fault Management(CFM) Henrik Bjoernlund
2020-09-04  9:15 ` [PATCH RFC 1/7] net: bridge: extend the process of special frames Henrik Bjoernlund
2020-09-08 12:12   ` Nikolay Aleksandrov
2020-09-15  8:23     ` henrik.bjoernlund
2020-09-04  9:15 ` [PATCH RFC 2/7] bridge: cfm: Add BRIDGE_CFM to Kconfig Henrik Bjoernlund
2020-09-08 12:18   ` Nikolay Aleksandrov
2020-09-15  8:26     ` henrik.bjoernlund
2020-09-04  9:15 ` [PATCH RFC 3/7] bridge: uapi: cfm: Added EtherType used by the CFM protocol Henrik Bjoernlund
2020-09-08 12:19   ` Nikolay Aleksandrov
2020-09-04  9:15 ` [PATCH RFC 4/7] bridge: cfm: Kernel space implementation of CFM Henrik Bjoernlund
2020-09-04 15:02   ` Jakub Kicinski
2020-09-15  8:51     ` Henrik Bjoernlund
2020-09-08 13:16   ` Nikolay Aleksandrov
2020-09-15  9:36     ` henrik.bjoernlund
2020-09-04  9:15 ` [PATCH RFC 5/7] bridge: cfm: Netlink Interface Henrik Bjoernlund
2020-09-08 13:47   ` Nikolay Aleksandrov
2020-09-15  9:49     ` henrik.bjoernlund
2020-09-04  9:15 ` [PATCH RFC 6/7] bridge: cfm: Netlink Notifications Henrik Bjoernlund
2020-09-08 13:54   ` Nikolay Aleksandrov
2020-09-15  9:59     ` henrik.bjoernlund
2020-09-15 10:24     ` henrik.bjoernlund
2020-09-04  9:15 ` [PATCH RFC 7/7] bridge: cfm: Bridge port remove Henrik Bjoernlund
2020-09-08 13:58   ` Nikolay Aleksandrov
2020-09-15 10:00     ` henrik.bjoernlund
2020-09-04 22:44 ` [PATCH RFC 0/7] net: bridge: cfm: Add support for Connectivity Fault Management(CFM) Stephen Hemminger
2020-09-06 18:21   ` Horatiu Vultur
2020-09-07 13:56     ` Nikolay Aleksandrov
2020-09-08 11:04       ` Henrik.Bjoernlund [this message]
2020-09-08 11:35         ` Allan W. Nielsen

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=BY5PR11MB3928DF9AC75B8AEC2FBD2256ED290@BY5PR11MB3928.namprd11.prod.outlook.com \
    --to=henrik.bjoernlund@microchip.com \
    --cc=Horatiu.Vultur@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=bridge@lists.linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=idosch@mellanox.com \
    --cc=jiri@mellanox.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@nvidia.com \
    --cc=roopa@nvidia.com \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).