lkml.org 
[lkml]   [2022]   [Aug]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2] scsi: target: Save a few cycles in transport_lookup_[cmd|tmr]_lun()
Date
Use percpu_ref_tryget_live_rcu() instead of percpu_ref_tryget_live() to
save a few cycles when it is known that the rcu lock is already
taken/released.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
Change in v2:
* sync with -next

v1:
* https://lore.kernel.org/all/e4a21bc607c39935cb98d4825cd63ba349820550.1635974637.git.christophe.jaillet@wanadoo.fr/
---
drivers/target/target_core_device.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/target/target_core_device.c b/drivers/target/target_core_device.c
index b7f16ee8aa0e..76c6613a1da7 100644
--- a/drivers/target/target_core_device.c
+++ b/drivers/target/target_core_device.c
@@ -77,7 +77,7 @@ transport_lookup_cmd_lun(struct se_cmd *se_cmd)

se_lun = deve->se_lun;

- if (!percpu_ref_tryget_live(&se_lun->lun_ref)) {
+ if (!percpu_ref_tryget_live_rcu(&se_lun->lun_ref)) {
se_lun = NULL;
goto out_unlock;
}
@@ -154,7 +154,7 @@ int transport_lookup_tmr_lun(struct se_cmd *se_cmd)
if (deve) {
se_lun = deve->se_lun;

- if (!percpu_ref_tryget_live(&se_lun->lun_ref)) {
+ if (!percpu_ref_tryget_live_rcu(&se_lun->lun_ref)) {
se_lun = NULL;
goto out_unlock;
}
--
2.34.1
\
 
 \ /
  Last update: 2022-08-16 06:58    [W:0.038 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site