mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] umh: Optimize 'proc_cap_handler()'
@ 2017-10-20 19:33 Christophe JAILLET
  2017-11-08  1:02 ` Luis R. Rodriguez
  2017-11-10 23:51 ` Luis R. Rodriguez
  0 siblings, 2 replies; 3+ messages in thread
From: Christophe JAILLET @ 2017-10-20 19:33 UTC (permalink / raw)
  To: mcgrof; +Cc: linux-kernel, kernel-janitors, Christophe JAILLET

If 'write' is 0, we can avoid a call to spin_lock/spin_unlock.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 kernel/umh.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/umh.c b/kernel/umh.c
index 6ff9905250ff..18e5fa4b0e71 100644
--- a/kernel/umh.c
+++ b/kernel/umh.c
@@ -537,14 +537,14 @@ static int proc_cap_handler(struct ctl_table *table, int write,
 	/*
 	 * Drop everything not in the new_cap (but don't add things)
 	 */
-	spin_lock(&umh_sysctl_lock);
 	if (write) {
+		spin_lock(&umh_sysctl_lock);
 		if (table->data == CAP_BSET)
 			usermodehelper_bset = cap_intersect(usermodehelper_bset, new_cap);
 		if (table->data == CAP_PI)
 			usermodehelper_inheritable = cap_intersect(usermodehelper_inheritable, new_cap);
+		spin_unlock(&umh_sysctl_lock);
 	}
-	spin_unlock(&umh_sysctl_lock);
 
 	return 0;
 }
-- 
2.14.1

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

end of thread, other threads:[~2017-11-10 23:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-20 19:33 [PATCH] umh: Optimize 'proc_cap_handler()' Christophe JAILLET
2017-11-08  1:02 ` Luis R. Rodriguez
2017-11-10 23:51 ` Luis R. Rodriguez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome