]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
net: bridge: don't cache ether dest pointer on input
authorNikolay Aleksandrov <nikolay@cumulusnetworks.com>
Tue, 2 Jul 2019 12:00:20 +0000 (15:00 +0300)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 14 Aug 2019 09:18:49 +0000 (11:18 +0200)
commit44fb787746acd5da395de18153d7c33cede6b855
tree387ded86b2b9c26a57c459f8a23fe9e124ae7071
parentee86ed49d2b74ab50437e0d1708382decf13c035
net: bridge: don't cache ether dest pointer on input

BugLink: https://bugs.launchpad.net/bugs/1839036
[ Upstream commit 3d26eb8ad1e9b906433903ce05f775cf038e747f ]

We would cache ether dst pointer on input in br_handle_frame_finish but
after the neigh suppress code that could lead to a stale pointer since
both ipv4 and ipv6 suppress code do pskb_may_pull. This means we have to
always reload it after the suppress code so there's no point in having
it cached just retrieve it directly.

Fixes: 057658cb33fbf ("bridge: suppress arp pkts on BR_NEIGH_SUPPRESS ports")
Fixes: ed842faeb2bd ("bridge: suppress nd pkts on BR_NEIGH_SUPPRESS ports")
Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
net/bridge/br_input.c