summaryrefslogtreecommitdiff
path: root/kernel/user.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-02-25 16:40:10 +0100
committerIngo Molnar <mingo@elte.hu>2009-02-25 16:40:10 +0100
commit2e31add2a7e2a15d07f592c21ba35870fa9a1d1f (patch)
tree814e2c70fb5528f108114c0da6e5a1e219e6a0e1 /kernel/user.c
parentd639bab8da86d330493487e8c0fea8ca31f53427 (diff)
parent17581ad812a9abb0182260374ef2e52d4a808a64 (diff)
Merge branch 'x86/urgent' into x86/pat
Diffstat (limited to 'kernel/user.c')
-rw-r--r--kernel/user.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/user.c b/kernel/user.c
index 477b6660f447..3551ac742395 100644
--- a/kernel/user.c
+++ b/kernel/user.c
@@ -72,6 +72,7 @@ static void uid_hash_insert(struct user_struct *up, struct hlist_head *hashent)
static void uid_hash_remove(struct user_struct *up)
{
hlist_del_init(&up->uidhash_node);
+ put_user_ns(up->user_ns);
}
static struct user_struct *uid_hash_find(uid_t uid, struct hlist_head *hashent)
@@ -334,7 +335,6 @@ static void free_user(struct user_struct *up, unsigned long flags)
atomic_inc(&up->__count);
spin_unlock_irqrestore(&uidhash_lock, flags);
- put_user_ns(up->user_ns);
INIT_WORK(&up->work, remove_user_sysfs_dir);
schedule_work(&up->work);
}
@@ -357,7 +357,6 @@ static void free_user(struct user_struct *up, unsigned long flags)
sched_destroy_user(up);
key_put(up->uid_keyring);
key_put(up->session_keyring);
- put_user_ns(up->user_ns);
kmem_cache_free(uid_cachep, up);
}