On 2/26/18 12:27 PM, David Miller wrote: > From: David Ahern <dsah...@gmail.com> > Date: Sun, 25 Feb 2018 11:47:26 -0800 > >> IPv6 FIB will only contain FIB entries with exception routes added to >> the FIB entry. Remove CACHE and dst checks from fib6 add and delete since >> they can never happen once the data type changes. >> >> Fixup the lookup functions to use a f6i name for fib lookups and retain >> the current rt name for return variables. >> >> Signed-off-by: David Ahern <dsah...@gmail.com> > > Hard to interpret what you mean in that second paragraph. > > Do you mean that this invariant holds after patch #19 only? Then you > really can't make these simplifications until then in order to keep > the patch series bisectable. > > Otherwise you mean something else and I'd like to know what that is. > > Either way, the commit message wording could be improved since even > a dolt like me got confused :-) >
By the 20th iteration the description of the last few patches got a little thin. ;-) The point of patches 1-18 is to make as small a change per patch that leads up to patch 19 being nothing more than s/rt6_info/fib6_info/ is select data paths. A struct rename and all of the related code paths makes for a huge patch. Anyways, because rt6_info is used for both FIB and dst the lookup functions can overload the rt6_info variable usually called 'rt'. This patch introduces a new 'f6i' variable name for the result of the FIB lookup and keeps 'rt' as the dst based return variable. 'f6i' becomes a fib6_info in patch 19 which is why it is introduced as 'struct rt6_info *f6i' now; avoids the additional churn in patch 19.