Messages in this thread |  | | Date | Sat, 16 Apr 2022 12:40:00 -0700 | Subject | Re: [PATCH net-next v4 02/18] net: dsa: sja1105: remove use of iterator after list_for_each_entry() loop | From | Florian Fainelli <> |
| |
On 4/15/2022 5:29 AM, Jakob Koschel wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The link below explains that there is a desire to syntactically change > list_for_each_entry() and list_for_each() such that it becomes > impossible to use the iterator variable outside the scope of the loop. > > Although sja1105_insert_gate_entry() makes legitimate use of the > iterator pointer when it breaks out, the pattern it uses may become > illegal, so it needs to change. > > It is deemed acceptable to use a copy of the loop iterator, and > sja1105_insert_gate_entry() only needs to know the list_head element > before which the list insertion should be made. So let's profit from the > occasion and refactor the list iteration to a dedicated function. > > An additional benefit is given by the fact that with the helper function > in place, we no longer need to special-case the empty list, since it is > equivalent to not having found any gating entry larger than the > specified interval in the list. We just need to insert at the tail of > that list (list_add vs list_add_tail on an empty list does the same > thing). > > Link: https://patchwork.kernel.org/project/netdevbpf/patch/20220407102900.3086255-3-jakobkoschel@gmail.com/#24810127 > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > Signed-off-by: Jakob Koschel <jakobkoschel@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> -- Florian
|  |