linux_dsm_epyc7002/drivers/net/ethernet/mellanox/mlxsw
Petr Machata c6b36bdd04 mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled
Spectrum systems have a configurable limit on how far into the packet they
parse. By default, the limit is 96 bytes.

An IPv6 PTP packet is layered as Ethernet/IPv6/UDP (14+40+8 bytes), and
sequence ID of a PTP event is only available 32 bytes into payload, for a
total of 94 bytes. When an additional 802.1q header is present as
well (such as when ptp4l is running on a VLAN port), the parsing limit is
exceeded. Such packets are not recognized as PTP, and are not timestamped.

Therefore generalize the current VXLAN-specific parsing depth setting to
allow reference-counted requests from other modules as well. Keep it in the
VXLAN module, because the MPRS register also configures UDP destination
port number used for VXLAN, and is thus closely tied to the VXLAN code
anyway.

Then invoke the new interfaces from both VXLAN (in obvious places), as well
as from PTP code, when the (global) timestamping configuration changes from
disabled to enabled or vice versa.

Fixes: 8748642751 ("mlxsw: spectrum: PTP: Support SIOCGHWTSTAMP, SIOCSHWTSTAMP ioctls")
Signed-off-by: Petr Machata <petrm@mellanox.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-07-29 13:55:05 -07:00
..
cmd.h mlxsw: cmd: Free running clock PCI BAR and offsets via query firmware 2019-06-13 22:34:55 -07:00
core_acl_flex_actions.c
core_acl_flex_actions.h
core_acl_flex_keys.c mlxsw: spectrum_acl: Avoid size check for RX_ACL_SYSTEM_PORT element 2019-06-19 10:09:22 -04:00
core_acl_flex_keys.h mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size 2019-06-19 10:09:22 -04:00
core_env.c mlxsw: core: Reduce buffer size in transactions for SFP modules temperature readout 2019-05-30 12:59:46 -07:00
core_env.h mlxsw: core: Move ethtool module callbacks to a common location 2019-03-03 22:23:00 -08:00
core_hwmon.c mlxsw: core: Add support for negative temperature readout 2019-06-24 08:15:42 -07:00
core_thermal.c mlxsw: core: Add support for negative temperature readout 2019-06-24 08:15:42 -07:00
core.c mlxsw: pci: PTP: Hook into packet transmit path 2019-07-01 18:58:34 -07:00
core.h mlxsw: pci: PTP: Hook into packet transmit path 2019-07-01 18:58:34 -07:00
emad.h
i2c.c mlxsw: i2c: Allow flexible setting of I2C transactions size 2019-05-30 12:59:46 -07:00
i2c.h
ib.h
item.h
Kconfig mlxsw: spectrum: PTP: Support timestamping on Spectrum-1 2019-07-01 18:58:34 -07:00
Makefile mlxsw: spectrum_ptp: Add implementation for physical hardware clock operations 2019-06-13 22:34:55 -07:00
minimal.c mlxsw: i2c: Extend initialization with querying firmware info 2019-05-30 12:59:46 -07:00
pci_hw.h mlxsw: pci: Query free running clock PCI BAR and offsets 2019-06-13 22:34:55 -07:00
pci.c ethernet: remove redundant memset 2019-07-15 11:06:27 -07:00
pci.h
port.h
reg.h mlxsw: reg: Add QoS PTP Shaper Configuration Register 2019-07-05 15:28:57 -07:00
resources.h mlxsw: resources: Add local_ports_in_{1x, 2x} 2019-05-04 01:21:36 -04:00
spectrum1_acl_tcam.c mlxsw: spectrum_acl: Pass hints priv all the way to ERP code 2019-02-08 15:02:50 -08:00
spectrum1_kvdl.c
spectrum1_mr_tcam.c
spectrum2_acl_tcam.c mlxsw: spectrum_acl: Pass hints priv all the way to ERP code 2019-02-08 15:02:50 -08:00
spectrum2_kvdl.c mlxsw: spectrum: Add a new type of KVD linear record 2018-10-11 10:08:22 -07:00
spectrum2_mr_tcam.c mlxsw: spectrum_router: Add Multicast routing support for Spectrum-2 2018-12-11 23:01:33 -08:00
spectrum_acl_atcam.c mlxsw: spectrum_acl: Pass hints priv all the way to ERP code 2019-02-08 15:02:50 -08:00
spectrum_acl_bloom_filter.c mlxsw: spectrum_acl: Introduce mutex to guard Bloom Filter updates 2019-02-24 20:25:29 -08:00
spectrum_acl_ctcam.c mlxsw: spectrum_acl: Remove unnecessary arg on action_replace call path 2019-01-28 10:43:15 -08:00
spectrum_acl_erp.c mlxsw: spectrum_acl: Avoid warning after identical rules insertion 2019-05-30 12:30:47 -07:00
spectrum_acl_flex_actions.c
spectrum_acl_flex_actions.h
spectrum_acl_flex_keys.c mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size 2019-06-19 10:09:22 -04:00
spectrum_acl_tcam.c mlxsw: spectrum_acl: Rename rehash_dis trace 2019-03-31 11:01:23 -07:00
spectrum_acl_tcam.h mlxsw: spectrum_acl: Don't take rtnl lock during vregion_rehash_intrvl_set() 2019-02-24 20:25:29 -08:00
spectrum_acl.c mlxsw: spectrum_flower: Implement support for ingress device matching 2019-06-19 10:09:22 -04:00
spectrum_buffers.c mlxsw: spectrum_buffers: Reduce pool size on Spectrum-2 2019-06-12 11:08:15 -07:00
spectrum_cnt.c
spectrum_cnt.h
spectrum_dcb.c mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed 2019-07-17 15:19:46 -07:00
spectrum_dpipe.c mlxsw: spectrum_router: Support RIF without device 2019-01-20 11:12:57 -08:00
spectrum_dpipe.h mlxsw: spectrum: Assume CONFIG_NET_DEVLINK is always enabled 2019-04-19 15:03:55 -07:00
spectrum_fid.c mlxsw: spectrum: Do not process learned records with a dummy FID 2019-07-17 15:19:46 -07:00
spectrum_flower.c net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload 2019-07-09 14:38:51 -07:00
spectrum_ipip.c mlxsw: spectrum_router: Update tunnel decap properties 2019-01-20 11:12:58 -08:00
spectrum_ipip.h
spectrum_kvdl.c
spectrum_mr_tcam.c
spectrum_mr_tcam.h
spectrum_mr.c
spectrum_mr.h
spectrum_nve_vxlan.c mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled 2019-07-29 13:55:05 -07:00
spectrum_nve.c mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled 2019-07-29 13:55:05 -07:00
spectrum_nve.h mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled 2019-07-29 13:55:05 -07:00
spectrum_ptp.c mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled 2019-07-29 13:55:05 -07:00
spectrum_ptp.h mlxsw: spectrum: Set up PTP shaper when port status has changed 2019-07-05 15:28:57 -07:00
spectrum_qdisc.c
spectrum_router.c ipv6: Stop sending in-kernel notifications for each nexthop 2019-06-18 09:45:37 -07:00
spectrum_router.h mlxsw: spectrum_router: Update tunnel decap properties 2019-01-20 11:12:58 -08:00
spectrum_span.c ipv4: Add support to rtable for ipv6 gateway 2019-04-08 15:22:40 -07:00
spectrum_span.h
spectrum_switchdev.c mlxsw: spectrum: Do not process learned records with a dummy FID 2019-07-17 15:19:46 -07:00
spectrum_switchdev.h
spectrum.c net: flow_offload: add flow_block structure and use it 2019-07-19 21:27:45 -07:00
spectrum.h mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled 2019-07-29 13:55:05 -07:00
switchib.c mlxsw: switch_ib: Pass valid HW id down to mlxsw_core_port_init() 2019-04-04 17:42:36 -07:00
switchx2.c mlxsw: core: Add support for using SKB control buffer 2019-07-01 18:58:34 -07:00
trap.h mlxsw: spectrum: PTP: Support timestamping on Spectrum-1 2019-07-01 18:58:34 -07:00
txheader.h