mirror_ubuntu-kernels/drivers/net/ethernet/broadcom/bnxt
Michael Chan 2b3c688538 bnxt_en: Drop oversize TX packets to prevent errors.
There have been reports of oversize UDP packets being sent to the
driver to be transmitted, causing error conditions.  The issue is
likely caused by the dst of the SKB switching between 'lo' with
64K MTU and the hardware device with a smaller MTU.  Patches are
being proposed by Mahesh Bandewar <maheshb@google.com> to fix the
issue.

In the meantime, add a quick length check in the driver to prevent
the error.  The driver uses the TX packet size as index to look up an
array to setup the TX BD.  The array is large enough to support all MTU
sizes supported by the driver.  The oversize TX packet causes the
driver to index beyond the array and put garbage values into the
TX BD.  Add a simple check to prevent this.

Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-02-27 09:27:21 -08:00
..
bnxt_coredump.h bnxt_en: Add support for ethtool get dump. 2018-08-05 17:08:26 -07:00
bnxt_dcb.c cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
bnxt_dcb.h bnxt_en: Do not use the CNP CoS queue for networking traffic. 2018-08-05 17:08:26 -07:00
bnxt_debugfs.c bnxt_en: add debugfs support for DIM 2018-04-27 14:47:30 -04:00
bnxt_debugfs.h bnxt_en: add debugfs support for DIM 2018-04-27 14:47:30 -04:00
bnxt_devlink.c cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
bnxt_devlink.h bnxt_en: Add a driver specific gre_ver_check devlink parameter. 2018-10-04 13:49:43 -07:00
bnxt_dim.c net/dim: Rename *_get_profile() functions to *_get_rx_moderation() 2018-04-24 10:15:07 -04:00
bnxt_ethtool.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
bnxt_ethtool.h bnxt_en: Add support for ethtool get dump. 2018-08-05 17:08:26 -07:00
bnxt_fw_hdr.h bnxt_en: Added support for Secure Firmware Update 2016-09-19 21:32:24 -04:00
bnxt_hsi.h bnxt_en: Fix ring checking logic on 57500 chips. 2019-01-12 10:51:39 -08:00
bnxt_nvm_defs.h bnxt_en: Fix memory fault in bnxt_ethtool_init() 2018-04-19 16:35:09 -04:00
bnxt_sriov.c bnxt_en: Add SR-IOV support for 57500 chips. 2018-12-17 23:08:53 -08:00
bnxt_sriov.h bnxt_en: Fix VF mac address regression. 2018-09-17 07:56:35 -07:00
bnxt_tc.c bnxt_en: Support for 64-bit flow handle. 2018-12-20 08:26:16 -08:00
bnxt_tc.h bnxt_en: Support for 64-bit flow handle. 2018-12-20 08:26:16 -08:00
bnxt_ulp.c bnxt_en: Do not modify max_stat_ctxs after RDMA driver requests/frees stat_ctxs 2018-12-17 23:08:53 -08:00
bnxt_ulp.h bnxt_en: get rid of num_stat_ctxs variable 2018-12-17 23:08:53 -08:00
bnxt_vfr.c devlink: Add extack for eswitch operations 2018-10-03 16:17:58 -07:00
bnxt_vfr.h devlink: Add extack for eswitch operations 2018-10-03 16:17:58 -07:00
bnxt_xdp.c bnxt_en: get rid of num_stat_ctxs variable 2018-12-17 23:08:53 -08:00
bnxt_xdp.h net: bpf: rename ndo_xdp to ndo_bpf 2017-11-05 22:26:18 +09:00
bnxt.c bnxt_en: Drop oversize TX packets to prevent errors. 2019-02-27 09:27:21 -08:00
bnxt.h bnxt_en: Wait longer for the firmware message response to complete. 2019-02-22 15:16:56 -08:00
Makefile bnxt_en: add debugfs support for DIM 2018-04-27 14:47:30 -04:00