public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Hannes Frederic Sowa <hannes@stressinduktion•org>
To: Jiri Pirko <jiri@resnulli•us>, netdev@vger•kernel.org
Cc: davem@davemloft•net, idosch@mellanox•com, eladr@mellanox•com,
	yotamg@mellanox•com, ogerlitz@mellanox•com,
	roopa@cumulusnetworks•com, nikolay@cumulusnetworks•com,
	jhs@mojatatu•com, john.fastabend@gmail•com, rami.rosen@intel•com,
	gospo@cumulusnetworks•com, stephen@networkplumber•org,
	sfeldma@gmail•com, dsa@cumulusnetworks•com, f.fainelli@gmail•com,
	andrew@lunn•ch, vivien.didelot@savoirfairelinux•com,
	tgraf@suug•ch, aduyck@mirantis•com
Subject: Re: switchdev fib offload issues
Date: Mon, 18 Apr 2016 19:17:59 +0200	[thread overview]
Message-ID: <571516C7.6070301@stressinduktion.org> (raw)
In-Reply-To: <20160418154757.GA2059@nanopsycho.amit.cz>

Hi Jiri,

On 18.04.2016 17:47, Jiri Pirko wrote:
> Proposed solutions (ideas):
> 1) per-netns. Add a procfs file:
> 	/proc/sys/net/ipv4/route/fib_offload_error_policy
> 	  with values: "evict" - default, current behaviour
>                         "fail" - propagate offload error to user
> 	The policy value would be stored in struct net.
 >
> 2) per-VRF/table
> 	When user creates a VRF master, he specifies a table ID
> 	this VRF is going to use. I propose to extend this so
> 	he can pass a policy ("evict"/"fail").
> 	The policy value would be stored in struct fib_table or
> 	struct fib6_table. The problem is that vfr only saves
> 	table ID, allocates dst but does not actually create
> 	table. That might be created later. But I think this
> 	could be resolved.
>
> 3) per-VFR/master_netdev
> 	In this case, the policy would be also set during
> 	the creation of VFR master. From user perspective,
> 	this looks same as 2)
> 	The policy value would be stored in struct net_vrf (vrf private).

I agree that a fail policy is probably the way forward regarding the 
issues you outlined.

One question though:

Shouldn't the policy by an attribute of the switch, e.g. configurable by 
devlink (maybe also not the right place)? Not sure how user space can 
otherwise make correct assumptions about the state of the switch and 
initiate proper countermeasures (e.g. reducing the smallest prefix 
length installed to hardware).

Bye,
Hannes

  parent reply	other threads:[~2016-04-18 17:18 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-18 15:47 switchdev fib offload issues Jiri Pirko
2016-04-18 16:38 ` Ilan Tayari
2016-04-18 17:11   ` David Ahern
2016-04-18 16:59 ` David Ahern
2016-04-19  7:02   ` Jiri Pirko
2016-04-18 17:17 ` Hannes Frederic Sowa [this message]
2016-04-21 13:00   ` Roopa Prabhu
2016-04-18 17:52 ` David Miller
2016-04-19  7:21   ` 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=571516C7.6070301@stressinduktion.org \
    --to=hannes@stressinduktion$(echo .)org \
    --cc=aduyck@mirantis$(echo .)com \
    --cc=andrew@lunn$(echo .)ch \
    --cc=davem@davemloft$(echo .)net \
    --cc=dsa@cumulusnetworks$(echo .)com \
    --cc=eladr@mellanox$(echo .)com \
    --cc=f.fainelli@gmail$(echo .)com \
    --cc=gospo@cumulusnetworks$(echo .)com \
    --cc=idosch@mellanox$(echo .)com \
    --cc=jhs@mojatatu$(echo .)com \
    --cc=jiri@resnulli$(echo .)us \
    --cc=john.fastabend@gmail$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=nikolay@cumulusnetworks$(echo .)com \
    --cc=ogerlitz@mellanox$(echo .)com \
    --cc=rami.rosen@intel$(echo .)com \
    --cc=roopa@cumulusnetworks$(echo .)com \
    --cc=sfeldma@gmail$(echo .)com \
    --cc=stephen@networkplumber$(echo .)org \
    --cc=tgraf@suug$(echo .)ch \
    --cc=vivien.didelot@savoirfairelinux$(echo .)com \
    --cc=yotamg@mellanox$(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