lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20231023230826.531858-4-jacob.e.keller@intel.com> Date: Mon, 23 Oct 2023 16:08:19 -0700 From: Jacob Keller <jacob.e.keller@...el.com> To: netdev@...r.kernel.org, David Miller <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org> Cc: Michal Schmidt <mschmidt@...hat.com>, Wojciech Drewek <wojciech.drewek@...el.com>, Rafal Romanowski <rafal.romanowski@...el.com>, Jacob Keller <jacob.e.keller@...el.com> Subject: [PATCH net-next 2/9] iavf: simplify mutex_trylock+sleep loops From: Michal Schmidt <mschmidt@...hat.com> This pattern appears in two places in the iavf source code: while (!mutex_trylock(...)) usleep_range(...); That's just mutex_lock with extra steps. The pattern is a leftover from when iavf used bit flags instead of mutexes for locking. Commit 5ac49f3c2702 ("iavf: use mutexes for locking of critical sections") replaced test_and_set_bit with !mutex_trylock, preserving the pattern. Simplify it to mutex_lock. Signed-off-by: Michal Schmidt <mschmidt@...hat.com> Reviewed-by: Wojciech Drewek <wojciech.drewek@...el.com> Tested-by: Rafal Romanowski <rafal.romanowski@...el.com> Signed-off-by: Jacob Keller <jacob.e.keller@...el.com> --- drivers/net/ethernet/intel/iavf/iavf_main.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/intel/iavf/iavf_main.c b/drivers/net/ethernet/intel/iavf/iavf_main.c index 8bfa928ab415..da9cd53afc24 100644 --- a/drivers/net/ethernet/intel/iavf/iavf_main.c +++ b/drivers/net/ethernet/intel/iavf/iavf_main.c @@ -3011,8 +3011,7 @@ static void iavf_reset_task(struct work_struct *work) return; } - while (!mutex_trylock(&adapter->client_lock)) - usleep_range(500, 1000); + mutex_lock(&adapter->client_lock); if (CLIENT_ENABLED(adapter)) { adapter->flags &= ~(IAVF_FLAG_CLIENT_NEEDS_OPEN | IAVF_FLAG_CLIENT_NEEDS_CLOSE | @@ -5064,8 +5063,7 @@ static int __maybe_unused iavf_suspend(struct device *dev_d) netif_device_detach(netdev); - while (!mutex_trylock(&adapter->crit_lock)) - usleep_range(500, 1000); + mutex_lock(&adapter->crit_lock); if (netif_running(netdev)) { rtnl_lock(); -- 2.41.0
Powered by blists - more mailing lists