[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170221.122312.68917979585063893.davem@davemloft.net>
Date: Tue, 21 Feb 2017 12:23:12 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: brussell@...cade.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net] Don't allow overwrite of config src addr
From: Brian Russell <brussell@...cade.com>
Date: Mon, 20 Feb 2017 17:03:54 +0000
> When using IPv6 transport and a default dst, a pointer to the configured
> source address is passed into the route lookup. If no source address is
> configured, then the value is overwritten.
>
> IPv6 route lookup ignores egress ifindex match if the source adress is set,
> so if egress ifindex match is desired, the source address must be passed
> as any. The overwrite breaks this for subsequent lookups.
>
> Avoid this by copying the configured address to an existing stack variable
> and pass a pointer to that instead.
>
> Signed-off-by: Brian Russell <brussell@...cade.com>
I really would like you to try and find a way to avoid this address copy.
It means even with a cached route, we are going to copy a 128-bit address
onto the stack _every single_ packet vxlan transmits.
Powered by blists - more mailing lists