Subject: Re: [net-next v1] net: ipv6: avoid overhead when no custom FIB rules are installed

From: Vincent Bernat <[email-masked]>
Date: Tue, 08 Aug 2017 16:50:37 +0200

❦  8 août 2017 08:46 -0600, David Ahern <[email-masked]> :

>> diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c
>> index 2f29e4e33bd3..693c27ede40e 100644
>> --- a/net/ipv6/fib6_rules.c
>> +++ b/net/ipv6/fib6_rules.c
>> @@ -63,19 +63,32 @@ unsigned int fib6_rules_seq_read(struct net *net)
>>  struct dst_entry *fib6_rule_lookup(struct net *net, struct flowi6 *fl6,
>>  				   int flags, pol_lookup_t lookup)
>>  {
>> -	struct fib_lookup_arg arg = {
>> -		.lookup_ptr = lookup,
>> -		.flags = FIB_LOOKUP_NOREF,
>> -	};
>> -
>>  	/* update flow if oif or iif point to device enslaved to l3mdev */
>>  	l3mdev_update_flow(net, flowi6_to_flowi(fl6));
>
> The l3mdev_update_flow can be moved to the has_custom_rules block.
> l3mdev requires FIB rules for the lookups to work, so no rules means no
> l3mdev configured.
>
> Rest looks good to me.

I suspected that it could be moved. I'll update the patch tomorrow.
-- 
Choose variable names that won't be confused.
            - The Elements of Programming Style (Kernighan & Plauger)