On 4/5/18 2:25 AM, Miguel Fadon Perlines wrote:
> arp_filter performs an ip_route_output search for arp source address and
> checks if output device is the same where the arp request was received,
> if it is not, the arp request is not answered.
> 
> This route lookup is always done on main route table so l3slave devices
> never find the proper route and arp is not answered.
> 
> Passing l3mdev_master_ifindex_rcu(dev) return value as oif fixes the
> lookup for l3slave devices while maintaining same behavior for non
> l3slave devices as this function returns 0 in that case.
> 
> Signed-off-by: Miguel Fadon Perlines <mfa...@teldat.com>
> ---
>  net/ipv4/arp.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Acked-by: David Ahern <d...@cumulusnetworks.com>

DaveM: this is a day 1 bug for VRF. Best guess at a Fixes tag would be:

Fixes: 613d09b30f8b ("net: Use VRF device index for lookups on TX")

It would be good to get this into stable releases 4.9 and up. Thanks,

Reply via email to