netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net 0/4] mlxsw: Fix ACL actions error condition handling
@ 2018-08-03 12:57 Ido Schimmel
  2018-08-03 12:57 ` [PATCH net 1/4] mlxsw: core_acl_flex_actions: Return error for conflicting actions Ido Schimmel
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Ido Schimmel @ 2018-08-03 12:57 UTC (permalink / raw)
  To: netdev; +Cc: davem, jiri, petrm, nird, mlxsw, Ido Schimmel

Nir says:

Two issues were lately noticed within mlxsw ACL actions error condition
handling. The first patch deals with conflicting actions such as:

 # 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 redirect dev swp4

The second action will never execute, however SW model allows this
configuration, while the mlxsw driver cannot allow for it as it
implements actions in sets of up to three actions per set with a single
termination marking. Conflicting actions create a contradiction over
this single marking and thus cannot be configured. The fix replaces a
misplaced warning with an error code to be returned.

Patches 2-4 fix a condition of duplicate destruction of resources. Some
actions require allocation of specific resource prior to setting the
action itself. On error condition this resource was destroyed twice,
leading to a crash when using mirror action, and to a redundant
destruction in other cases, since for error condition rule destruction
also takes care of resource destruction. In order to fix this state a
symmetry in behavior is added and resource destruction also takes care
of removing the resource from rule's resource list.

Nir Dotan (4):
  mlxsw: core_acl_flex_actions: Return error for conflicting actions
  mlxsw: core_acl_flex_actions: Remove redundant resource destruction
  mlxsw: core_acl_flex_actions: Remove redundant counter destruction
  mlxsw: core_acl_flex_actions: Remove redundant mirror resource
    destruction

 .../mellanox/mlxsw/core_acl_flex_actions.c    | 51 +++++++++++--------
 1 file changed, 29 insertions(+), 22 deletions(-)

-- 
2.17.1

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-08-03 21:33 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-03 12:57 [PATCH net 0/4] mlxsw: Fix ACL actions error condition handling Ido Schimmel
2018-08-03 12:57 ` [PATCH net 1/4] mlxsw: core_acl_flex_actions: Return error for conflicting actions Ido Schimmel
2018-08-03 13:03   ` Ido Schimmel
2018-08-03 12:57 ` [PATCH net 2/4] mlxsw: core_acl_flex_actions: Remove redundant resource destruction Ido Schimmel
2018-08-03 12:57 ` [PATCH net 3/4] mlxsw: core_acl_flex_actions: Remove redundant counter destruction Ido Schimmel
2018-08-03 12:57 ` [PATCH net 4/4] mlxsw: core_acl_flex_actions: Remove redundant mirror resource destruction Ido Schimmel
2018-08-03 19:35 ` [PATCH net 0/4] mlxsw: Fix ACL actions error condition handling David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).