32 lines
935 B
Diff
32 lines
935 B
Diff
From: Thomas Gleixner <tglx@linutronix.de>
|
|
Date: Tue, 21 Jul 2009 23:06:05 +0200
|
|
Subject: 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(-)
|
|
|
|
Index: linux-3.2/kernel/user.c
|
|
===================================================================
|
|
--- linux-3.2.orig/kernel/user.c
|
|
+++ linux-3.2/kernel/user.c
|
|
@@ -129,11 +129,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(struct user_namespace *ns, uid_t uid)
|