Thread (34 messages) flat view 34 messages, 8 authors, 2016-02-19

Re: [net-next PATCH v3 3/8] net: sched: add cls_u32 offload hooks for netdevs

From: Jamal Hadi Salim <jhs@mojatatu.com>
Date: 2016-02-19 12:52:35

On 16-02-18 10:24 AM, John Fastabend wrote:
On 16-02-18 04:14 AM, Jamal Hadi Salim wrote:
quoted
On 16-02-17 06:07 PM, John Fastabend wrote:
quoted
[...]
quoted
IMO, it would be better at this early stage to enforce the correct
behavior for future generations.
To follow the netlink semantics which a lot of people are already
trained to think in.

Current netlink behavior is supposed to be:

1) NEW ==> "Create".
Ambigous - could mean a)"create if it doesnt exist" or b) "fail if it
exists otherwise create"
Unfortunately different parts of the kernel often assume some
default from either #a or #b.
But this is already handled by the core cls_api.c code. We never
get to u32_change if the flags are not correct.

Look at the block right above the op call into the classifiers
change() code in cls_api.c. Starting at line 287.
Indeed that would cover s/ware filters but not h/ware. That will
depend on what hardware can do. Really,
all you need is to propagate those flags. Your
driver ndo can ignore them. I know i will need them.

Alternatively: If we say all filters are going to be stored in
s/ware as well i.e the tri-state we talked about then the cls_api
checks will work as well. But when you are talking millions
of filters (such as i deal with) - that may become impractical
(and then you are going to have all kind of clever things to find
whether an EXCLUSIVE will work or not etc).

cheers,
jamal
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help