Re: [PATCH] ipv4: fix fib metrics
From: Alessandro Suardi
Date: Thu Mar 24 2011 - 14:15:08 EST
On Thu, Mar 24, 2011 at 6:01 PM, Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote:
> Le jeudi 24 mars 2011 à 17:15 +0100, Eric Dumazet a écrit :
>
>> I am testing following patch :
>>
>> diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
>> index 622ac4c..654ef5b 100644
>> --- a/net/ipv4/fib_semantics.c
>> +++ b/net/ipv4/fib_semantics.c
>> @@ -251,7 +251,7 @@ static struct fib_info *fib_find_info(const struct fib_info *nfi)
>> nfi->fib_prefsrc == fi->fib_prefsrc &&
>> nfi->fib_priority == fi->fib_priority &&
>> memcmp(nfi->fib_metrics, fi->fib_metrics,
>> - sizeof(fi->fib_metrics)) == 0 &&
>> + sizeof(u32) * RTAX_MAX) == 0 &&
>> ((nfi->fib_flags ^ fi->fib_flags) & ~RTNH_F_DEAD) == 0 &&
>> (nfi->fib_nhs == 0 || nh_comp(fi, nfi) == 0))
>> return fi;
>>
>>
>
> This works. Here is the formal submission :
>
> Thanks !
>
> [PATCH] ipv4: fix fib metrics
>
> Alessandro Suardi reported that we could not change route metrics :
>
> ip ro change default .... advmss 1400
>
> This regression came with commit 9c150e82ac50 (Allocate fib metrics
> dynamically). fib_metrics is no longer an array, but a pointer to an
> array.
>
> Reported-by: Alessandro Suardi <alessandro.suardi@xxxxxxxxx>
> Signed-off-by: Eric Dumazet <eric.dumazet@xxxxxxxxx>
> ---
> net/ipv4/fib_semantics.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
> index 622ac4c..75b9fb5 100644
> --- a/net/ipv4/fib_semantics.c
> +++ b/net/ipv4/fib_semantics.c
> @@ -251,7 +251,7 @@ static struct fib_info *fib_find_info(const struct fib_info *nfi)
> nfi->fib_prefsrc == fi->fib_prefsrc &&
> nfi->fib_priority == fi->fib_priority &&
> memcmp(nfi->fib_metrics, fi->fib_metrics,
> - sizeof(fi->fib_metrics)) == 0 &&
> + sizeof(u32) * RTAX_MAX) == 0 &&
> ((nfi->fib_flags ^ fi->fib_flags) & ~RTNH_F_DEAD) == 0 &&
> (nfi->fib_nhs == 0 || nh_comp(fi, nfi) == 0))
> return fi;
Tested-by: Alessandro Suardi <alessandro.suardi@xxxxxxxxx>
I will however make one more bug report, as vpnc is broken before
and after this patch - have to dig out what vpnc-script tries to do,
which results in
Error: either "to" is duplicate, or "ipid" is a garbage.
after establishing the VPN tunnel.
Thanks,
--alessandro
"There's always a siren singing you to shipwreck"
(Radiohead, "There There")
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/