[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170901.101200.1178632155073906923.davem@davemloft.net>
Date: Fri, 01 Sep 2017 10:12:00 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: idosch@...lanox.com
Cc: netdev@...r.kernel.org, stephen@...workplumber.org,
nikolay@...ulusnetworks.com, jiri@...lanox.com,
yotamg@...lanox.com, mlxsw@...lanox.com,
bridge@...ts.linux-foundation.org
Subject: Re: [PATCH net] bridge: switchdev: Clear forward mark when
transmitting packet
From: Ido Schimmel <idosch@...lanox.com>
Date: Fri, 1 Sep 2017 12:22:25 +0300
> Commit 6bc506b4fb06 ("bridge: switchdev: Add forward mark support for
> stacked devices") added the 'offload_fwd_mark' bit to the skb in order
> to allow drivers to indicate to the bridge driver that they already
> forwarded the packet in L2.
>
> In case the bit is set, before transmitting the packet from each port,
> the port's mark is compared with the mark stored in the skb's control
> block. If both marks are equal, we know the packet arrived from a switch
> device that already forwarded the packet and it's not re-transmitted.
>
> However, if the packet is transmitted from the bridge device itself
> (e.g., br0), we should clear the 'offload_fwd_mark' bit as the mark
> stored in the skb's control block isn't valid.
>
> This scenario can happen in rare cases where a packet was trapped during
> L3 forwarding and forwarded by the kernel to a bridge device.
>
> Fixes: 6bc506b4fb06 ("bridge: switchdev: Add forward mark support for stacked devices")
> Signed-off-by: Ido Schimmel <idosch@...lanox.com>
> Reported-by: Yotam Gigi <yotamg@...lanox.com>
> Tested-by: Yotam Gigi <yotamg@...lanox.com>
> Reviewed-by: Jiri Pirko <jiri@...lanox.com>
Applied and queued up for -stable, thanks.
Powered by blists - more mailing lists