We observed a case where a packet received on an ibmveth device had a
GSO size of around 10kB. This was forwarded by Open vSwitch to a bnx2x
device, where it caused a firmware assert. This is described in detail
at [0].

Ultimately we want a fix in the core, but that is very tricky to
backport. So for now, just stop the bnx2x driver from crashing.

When net-next re-opens I will send the fix to the core and a revert
for this.

v4 changes:
  - fix compilation error with EXPORTs (patch 1)
  - only do slow test if gso_size is greater than 9000 bytes (patch 2)

Thanks,
Daniel
   
[0]: https://patchwork.ozlabs.org/patch/859410/

Cc: Eric Dumazet <eric.duma...@gmail.com>
Cc: manish.cho...@cavium.com
Cc: Jason Wang <jasow...@redhat.com>
Cc: Pravin Shelar <pshe...@ovn.org>
Cc: Marcelo Ricardo Leitner <marcelo.leit...@gmail.com>

Daniel Axtens (2):
  net: create skb_gso_validate_mac_len()
  bnx2x: disable GSO where gso_size is too big for hardware

 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 18 +++++++
 include/linux/skbuff.h                           | 16 ++++++
 net/core/skbuff.c                                | 63 +++++++++++++++++++-----
 net/sched/sch_tbf.c                              | 10 ----
 4 files changed, 84 insertions(+), 23 deletions(-)

-- 
2.14.1

Reply via email to