Revision a11dcd6497915ba79d95ef4fe2541aaac27f6201 authored by Nir Dotan on 18 January 2019, 15:57:59 UTC, committed by David S. Miller on 18 January 2019, 23:12:16 UTC
When using a tc flower action of egress mirred redirect, the driver adds
an implicit FID setting action. This implicit action sets a dummy FID to
the packet and is used as part of a design for trapping unmatched flows
in OVS.  While this implicit FID setting action is supposed to be a NOP
when a redirect action is added, in Spectrum-2 the FID record is
consulted as the dummy FID index is an 802.1D FID index and the packet
is dropped instead of being redirected.

Set the dummy FID index value to be within 802.1Q range. This satisfies
both Spectrum-1 which ignores the FID and Spectrum-2 which identifies it
as an 802.1Q FID and will then follow the redirect action.

Fixes: c3ab435466d5 ("mlxsw: spectrum: Extend to support Spectrum-2 ASIC")
Signed-off-by: Nir Dotan <nird@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 67c14cc
History
File Mode Size
kasan
Kconfig -rw-r--r-- 24.6 KB
Kconfig.debug -rw-r--r-- 3.8 KB
Makefile -rw-r--r-- 3.5 KB
backing-dev.c -rw-r--r-- 26.9 KB
balloon_compaction.c -rw-r--r-- 5.5 KB
cleancache.c -rw-r--r-- 9.9 KB
cma.c -rw-r--r-- 14.1 KB
cma.h -rw-r--r-- 573 bytes
cma_debug.c -rw-r--r-- 4.5 KB
compaction.c -rw-r--r-- 58.8 KB
debug.c -rw-r--r-- 5.9 KB
debug_page_ref.c -rw-r--r-- 1.4 KB
dmapool.c -rw-r--r-- 13.7 KB
early_ioremap.c -rw-r--r-- 6.8 KB
fadvise.c -rw-r--r-- 5.3 KB
failslab.c -rw-r--r-- 1.4 KB
filemap.c -rw-r--r-- 91.9 KB
frame_vector.c -rw-r--r-- 6.4 KB
frontswap.c -rw-r--r-- 14.2 KB
gup.c -rw-r--r-- 51.2 KB
gup_benchmark.c -rw-r--r-- 2.8 KB
highmem.c -rw-r--r-- 11.7 KB
hmm.c -rw-r--r-- 33.2 KB
huge_memory.c -rw-r--r-- 81.7 KB
hugetlb.c -rw-r--r-- 132.6 KB
hugetlb_cgroup.c -rw-r--r-- 10.9 KB
hwpoison-inject.c -rw-r--r-- 3.2 KB
init-mm.c -rw-r--r-- 1.2 KB
internal.h -rw-r--r-- 16.9 KB
interval_tree.c -rw-r--r-- 3.1 KB
khugepaged.c -rw-r--r-- 48.0 KB
kmemleak-test.c -rw-r--r-- 3.2 KB
kmemleak.c -rw-r--r-- 60.0 KB
ksm.c -rw-r--r-- 88.3 KB
list_lru.c -rw-r--r-- 14.6 KB
maccess.c -rw-r--r-- 3.3 KB
madvise.c -rw-r--r-- 22.9 KB
memblock.c -rw-r--r-- 56.4 KB
memcontrol.c -rw-r--r-- 169.7 KB
memfd.c -rw-r--r-- 7.8 KB
memory-failure.c -rw-r--r-- 52.1 KB
memory.c -rw-r--r-- 123.6 KB
memory_hotplug.c -rw-r--r-- 48.1 KB
mempolicy.c -rw-r--r-- 71.7 KB
mempool.c -rw-r--r-- 15.5 KB
memtest.c -rw-r--r-- 2.8 KB
migrate.c -rw-r--r-- 76.2 KB
mincore.c -rw-r--r-- 4.9 KB
mlock.c -rw-r--r-- 22.6 KB
mm_init.c -rw-r--r-- 4.8 KB
mmap.c -rw-r--r-- 100.0 KB
mmu_context.c -rw-r--r-- 1.3 KB
mmu_gather.c -rw-r--r-- 6.3 KB
mmu_notifier.c -rw-r--r-- 11.5 KB
mmzone.c -rw-r--r-- 2.4 KB
mprotect.c -rw-r--r-- 15.6 KB
mremap.c -rw-r--r-- 18.5 KB
msync.c -rw-r--r-- 2.6 KB
nommu.c -rw-r--r-- 47.6 KB
oom_kill.c -rw-r--r-- 31.1 KB
page-writeback.c -rw-r--r-- 84.2 KB
page_alloc.c -rw-r--r-- 230.6 KB
page_counter.c -rw-r--r-- 6.6 KB
page_ext.c -rw-r--r-- 11.1 KB
page_idle.c -rw-r--r-- 5.5 KB
page_io.c -rw-r--r-- 10.5 KB
page_isolation.c -rw-r--r-- 8.7 KB
page_owner.c -rw-r--r-- 15.1 KB
page_poison.c -rw-r--r-- 2.8 KB
page_vma_mapped.c -rw-r--r-- 7.6 KB
pagewalk.c -rw-r--r-- 8.7 KB
percpu-internal.h -rw-r--r-- 5.9 KB
percpu-km.c -rw-r--r-- 3.0 KB
percpu-stats.c -rw-r--r-- 5.7 KB
percpu-vm.c -rw-r--r-- 10.3 KB
percpu.c -rw-r--r-- 84.6 KB
pgtable-generic.c -rw-r--r-- 5.3 KB
process_vm_access.c -rw-r--r-- 10.0 KB
quicklist.c -rw-r--r-- 2.4 KB
readahead.c -rw-r--r-- 16.4 KB
rmap.c -rw-r--r-- 53.7 KB
rodata_test.c -rw-r--r-- 1.4 KB
shmem.c -rw-r--r-- 104.0 KB
slab.c -rw-r--r-- 110.6 KB
slab.h -rw-r--r-- 14.6 KB
slab_common.c -rw-r--r-- 38.9 KB
slob.c -rw-r--r-- 16.2 KB
slub.c -rw-r--r-- 142.3 KB
sparse-vmemmap.c -rw-r--r-- 6.6 KB
sparse.c -rw-r--r-- 21.0 KB
swap.c -rw-r--r-- 28.6 KB
swap_cgroup.c -rw-r--r-- 5.2 KB
swap_slots.c -rw-r--r-- 9.4 KB
swap_state.c -rw-r--r-- 21.7 KB
swapfile.c -rw-r--r-- 95.8 KB
truncate.c -rw-r--r-- 26.3 KB
usercopy.c -rw-r--r-- 9.5 KB
userfaultfd.c -rw-r--r-- 16.0 KB
util.c -rw-r--r-- 19.5 KB
vmacache.c -rw-r--r-- 2.7 KB
vmalloc.c -rw-r--r-- 69.7 KB
vmpressure.c -rw-r--r-- 13.9 KB
vmscan.c -rw-r--r-- 123.9 KB
vmstat.c -rw-r--r-- 51.8 KB
workingset.c -rw-r--r-- 19.2 KB
z3fold.c -rw-r--r-- 30.6 KB
zbud.c -rw-r--r-- 18.2 KB
zpool.c -rw-r--r-- 10.7 KB
zsmalloc.c -rw-r--r-- 60.4 KB
zswap.c -rw-r--r-- 34.7 KB

back to top