36 lines
968 B
Diff
36 lines
968 B
Diff
|
From 16208cc431f27694df9fd0347c3360b169aa7c2a Mon Sep 17 00:00:00 2001
|
||
|
From: Thomas Gleixner <tglx@linutronix.de>
|
||
|
Date: Tue, 21 Jul 2009 23:06:05 +0200
|
||
|
Subject: [PATCH 084/365] core: Do not disable interrupts on RT in
|
||
|
kernel/users.c
|
||
|
|
||
|
Use the local_irq_*_nort variants to reduce latencies in RT. The code
|
||
|
is serialized by the locks. No need to disable interrupts.
|
||
|
|
||
|
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
||
|
---
|
||
|
kernel/user.c | 4 ++--
|
||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/kernel/user.c b/kernel/user.c
|
||
|
index 41e94e453836..8780af77ee7e 100644
|
||
|
--- a/kernel/user.c
|
||
|
+++ b/kernel/user.c
|
||
|
@@ -162,11 +162,11 @@ void free_uid(struct user_struct *up)
|
||
|
if (!up)
|
||
|
return;
|
||
|
|
||
|
- local_irq_save(flags);
|
||
|
+ local_irq_save_nort(flags);
|
||
|
if (atomic_dec_and_lock(&up->__count, &uidhash_lock))
|
||
|
free_user(up, flags);
|
||
|
else
|
||
|
- local_irq_restore(flags);
|
||
|
+ local_irq_restore_nort(flags);
|
||
|
}
|
||
|
|
||
|
struct user_struct *alloc_uid(kuid_t uid)
|
||
|
--
|
||
|
2.28.0
|
||
|
|