aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/neterion
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2018-12-04 08:36:37 -0800
committerDavid S. Miller <davem@davemloft.net>2018-12-04 08:36:37 -0800
commit55827458e0586b1d4e84541bc015e37f507820ee (patch)
tree6715e3567587435f6ed9fa211a505faba06b1334 /drivers/net/ethernet/neterion
parentnet: marvell: convert to DEFINE_SHOW_ATTRIBUTE (diff)
parentselftests: mlxsw: Add one-armed router test (diff)
downloadlinux-dev-55827458e0586b1d4e84541bc015e37f507820ee.tar.xz
linux-dev-55827458e0586b1d4e84541bc015e37f507820ee.zip
Merge branch 'mlxsw-Add-one-armed-router-support'
Ido Schimmel says: ==================== mlxsw: Add one-armed router support Up until now, when a packet was routed by the ASIC through the same router interface (RIF) from which it ingressed from, the ASIC passed the sole copy of the packet to the kernel. This allowed the kernel to route the packet and also potentially generate an ICMP redirect. There are scenarios (e.g., "one-armed router") where packets are intentionally routed this way and are therefore not deemed as exceptions. In such scenarios the current method of trapping packets to the CPU is problematic, as it results in major packet loss. This patchset solves the problem by having the ASIC forward the packet, but also send a copy to the CPU, which gives the kernel the opportunity to generate required exceptions. To prevent the kernel from forwarding such packets again, the driver marks them with 'offload_l3_fwd_mark', which causes the kernel to consume them in ip{,6}_forward_finish(). Patch #1 renames 'offload_mr_fwd_mark' to 'offload_l3_fwd_mark'. When set, the field indicates that a packet was already forwarded in L3 (unicast / multicast) by a capable device. Patch #2 teaches the kernel to consume unicast packets that have 'offload_l3_fwd_mark' set. Patch #3 changes mlxsw to mirror loopbacked (iRIF == eRIF) packets, instead of trapping them. Patch #4 adds a test case for above mentioned scenario. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/neterion')
0 files changed, 0 insertions, 0 deletions