]> git.baikalelectronics.ru Git - kernel.git/commit
gro: Make GRO aware of lightweight tunnels.
authorJesse Gross <jesse@kernel.org>
Thu, 21 Jan 2016 01:59:49 +0000 (17:59 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Jan 2016 02:48:38 +0000 (18:48 -0800)
commit05898f69021e25be8506036f895b16db852c866e
tree02d13d67cc1113935a5a3b738a51bb70c8b20cad
parentef8cb8133a223d897c12085dd823298264dbffcf
gro: Make GRO aware of lightweight tunnels.

GRO is currently not aware of tunnel metadata generated by lightweight
tunnels and stored in the dst. This leads to two possible problems:
 * Incorrectly merging two frames that have different metadata.
 * Leaking of allocated metadata from merged frames.

This avoids those problems by comparing the tunnel information before
merging, similar to how we handle other metadata (such as vlan tags),
and releasing any state when we are done.

Reported-by: John <john.phillips5@hpe.com>
Fixes: 5a9e833d ("ip_gre: Add support to collect tunnel metadata.")
Signed-off-by: Jesse Gross <jesse@kernel.org>
Acked-by: Eric Dumazet <edumazet@google.com>
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/dst_metadata.h
net/core/dev.c