https://github.com/torvalds/linux
Revision caebd1b389708bf3d0465be829480fc706a68720 authored by Nir Dotan on 03 August 2018, 12:57:44 UTC, committed by David S. Miller on 03 August 2018, 19:28:01 UTC
In previous patch mlxsw_afa_resource_del() was added to avoid a duplicate
resource detruction scenario.
For mirror actions, such duplicate destruction leads to a crash as in:

 # tc qdisc add dev swp49 ingress
 # tc filter add dev swp49 parent ffff: \
   protocol ip chain 100 pref 10 \
   flower skip_sw dst_ip 192.168.101.1 action drop
 # tc filter add dev swp49 parent ffff: \
   protocol ip pref 10 \
   flower skip_sw dst_ip 192.168.101.1 action goto chain 100 \
   action mirred egress mirror dev swp4

Therefore add a call to mlxsw_afa_resource_del() in
mlxsw_afa_mirror_destroy() in order to clear that resource
from rule's resources.

Fixes: d0d13c1858a1 ("mlxsw: spectrum_acl: Add support for mirror action")
Signed-off-by: Nir Dotan <nird@mellanox.com>
Reviewed-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 7cc6169
History
Tip revision: caebd1b389708bf3d0465be829480fc706a68720 authored by Nir Dotan on 03 August 2018, 12:57:44 UTC
mlxsw: core_acl_flex_actions: Remove redundant mirror resource destruction
Tip revision: caebd1b
File Mode Size
Kconfig -rw-r--r-- 1.2 KB
Makefile -rw-r--r-- 287 bytes
acl.c -rw-r--r-- 8.0 KB
acl.h -rw-r--r-- 1.7 KB
cache.c -rw-r--r-- 8.6 KB
cache.h -rw-r--r-- 4.4 KB
fid.c -rw-r--r-- 6.8 KB
fid.h -rw-r--r-- 1.3 KB
v9fs.c -rw-r--r-- 16.2 KB
v9fs.h -rw-r--r-- 7.3 KB
v9fs_vfs.h -rw-r--r-- 3.6 KB
vfs_addr.c -rw-r--r-- 8.2 KB
vfs_dentry.c -rw-r--r-- 3.1 KB
vfs_dir.c -rw-r--r-- 5.7 KB
vfs_file.c -rw-r--r-- 16.6 KB
vfs_inode.c -rw-r--r-- 34.0 KB
vfs_inode_dotl.c -rw-r--r-- 24.4 KB
vfs_super.c -rw-r--r-- 8.6 KB
xattr.c -rw-r--r-- 5.1 KB
xattr.h -rw-r--r-- 1.2 KB

back to top