Thread (37 messages) 37 messages, 4 authors, 2019-10-21

Re: [PATCH net v4 01/12] net: core: limit nested device depth

From: Johannes Berg <johannes@sipsolutions.net>
Date: 2019-10-01 07:11:22
Also in: linux-wireless

Hi,

Sorry for the delay.
These functions are used as a callback function of
netdev_walk_all_{upper/lower}_dev(). So these return types are needed.
Ah yes, I missed that, sorry.
Without storing level storing, a walking graph routine is needed only
once. The routine would work as a nesting depth validator.
So that the detach routine doesn't need to walk the graph.
Whereas, in this patch, both attach and detach routine need to
walk graph. So, storing nesting variable way is slower than without
storing nesting variable way because of the detach routine's updating
upper and lower level routine.
Right, that's what I thought.
But I'm sure that storing nesting variables is useful because other
modules already using nesting level values.
Please look at vlan_get_encap_level() and usecases.
Indeed, I noticed that later.
If we don't provide nesting level variables, they should calculate
every time when they need it and this way is easier way to get a
nesting level. There are use-cases of lower_level variable
in the 11th patch.
Yes, makes sense, agree. One could argue that you only ever need the
"lower_level" stored, not the "upper_level", but I guess that doesn't
really make a difference.

Placing these in a better position in the struct might make sense - a
cursory look suggested that they weren't filling any of the many holes
there, did you pay attention to that or was the placement more or less
random?

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