[PATCH 30/28] kernel/user.c: add lock release annotation onfree_user()
From: Mike Galbraith
Date: Fri Feb 11 2011 - 01:07:13 EST
On Thu, 2011-02-10 at 19:35 +0100, Dhaval Giani wrote:
> >
> > There were a few more patches after this which cleaned up a few things
> > as well. Let me search them out and let you know the commit IDs.
> >
> 571428be550fbe37160596995e96ad398873fcbd
From: Namhyung Kim <namhyung@xxxxxxxxx>
Date: Tue, 26 Oct 2010 14:22:43 -0700
Subject: kernel/user.c: add lock release annotation on free_user()
commit 571428be550fbe37160596995e96ad398873fcbd upstream.
free_user() releases uidhash_lock but was missing annotation. Add it.
This removes following sparse warnings:
include/linux/spinlock.h:339:9: warning: context imbalance in 'free_user' - unexpected unlock
kernel/user.c:120:6: warning: context imbalance in 'free_uid' - wrong count at exit
Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Cc: Dhaval Giani <dhaval.giani@xxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Mike Galbraith <efault@xxxxxx>
---
kernel/user.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/kernel/user.c b/kernel/user.c
index 8e1c8c0..1b91701 100644
--- a/kernel/user.c
+++ b/kernel/user.c
@@ -91,6 +91,7 @@ static struct user_struct *uid_hash_find(uid_t uid, struct hlist_head *hashent)
* upon function exit.
*/
static void free_user(struct user_struct *up, unsigned long flags)
+ __releases(&uidhash_lock)
{
uid_hash_remove(up);
spin_unlock_irqrestore(&uidhash_lock, flags);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/