[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190228065850.7471-1-idosch@mellanox.com>
Date: Thu, 28 Feb 2019 06:59:15 +0000
From: Ido Schimmel <idosch@...lanox.com>
To: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC: "davem@...emloft.net" <davem@...emloft.net>,
Jiri Pirko <jiri@...lanox.com>, mlxsw <mlxsw@...lanox.com>,
Ido Schimmel <idosch@...lanox.com>
Subject: [PATCH net-next 00/14] mlxsw: spectrum_acl: Split rehash work into
chunks
Jiri says:
When rehash happens on a vregion with many rules and they are being
migrated, it might take significant time to finish the job. During that
time vregion->lock is taken which prevents rules from being
added/deleted from the vregion.
Aim of this patchset is to allow to interrupt migration of rules during
rehash, reschedule and give chance for rules to be added/deleted. Then
continue migration in another execution of scheduled work.
Jiri Pirko (14):
mlxsw: spectrum_acl: Push rehash dw struct into rehash sub-struct
mlxsw: spectrum_acl: Don't migrate already migrated entry
mlxsw: spectrum_acl: Introduce new rehash context struct and save
hint_priv there
mlxsw: spectrum_acl: Push rehash start/end code into separate
functions
mlxsw: spectrum_acl: Push code start/end from
mlxsw_sp_acl_tcam_vregion_migrate()
mlxsw: spectrum_acl: assign vregion->region by the newly created
region
mlxsw: spectrum_acl: assign vchunk->chunk by the newly created chunk
mlxsw: spectrum_acl: Rename variables in
mlxsw_sp_acl_tcam_ventry_migrate()
mlxsw: spectrum_acl: Put this_is_rollback to rehash context struct
mlxsw: spectrum_acl: Put vchunk migrate start/end code into separate
functions
mlxsw: spectrum_acl: Do rollback as another call to
mlxsw_sp_acl_tcam_vchunk_migrate_all()
mlxsw: spectrum_acl: Allow to interrupt/continue rehash work
mlxsw: spectrum_acl: Remember where to continue rehash migration
mlxsw: spectrum_acl: Make mlxsw_sp_acl_tcam_vregion_rehash() return
void
.../mellanox/mlxsw/spectrum_acl_tcam.c | 411 ++++++++++++------
1 file changed, 286 insertions(+), 125 deletions(-)
--
2.20.1
Powered by blists - more mailing lists