summaryrefslogtreecommitdiffstats
path: root/fs/locks.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2006-03-31 12:30:29 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-31 22:18:52 +0200
commit5ce29646ebe352587e3b3160d599010c5da1b9dd (patch)
treea4b080ded00de2264a4c94245da79488ea4d8a56 /fs/locks.c
parent[PATCH] Mark unwind info for signal trampolines in vDSOs (diff)
downloadlinux-5ce29646ebe352587e3b3160d599010c5da1b9dd.tar.xz
linux-5ce29646ebe352587e3b3160d599010c5da1b9dd.zip
[PATCH] locks: don't panic
Don't panic! Just BUG_ON(). Signed-off-by: Miklos Szeredi <miklos@szeredi.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/locks.c')
-rw-r--r--fs/locks.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/fs/locks.c b/fs/locks.c
index 4d9e71d43e7e..8fcfeb177a2a 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -168,18 +168,9 @@ static void locks_release_private(struct file_lock *fl)
/* Free a lock which is not in use. */
static void locks_free_lock(struct file_lock *fl)
{
- if (fl == NULL) {
- BUG();
- return;
- }
- if (waitqueue_active(&fl->fl_wait))
- panic("Attempting to free lock with active wait queue");
-
- if (!list_empty(&fl->fl_block))
- panic("Attempting to free lock with active block list");
-
- if (!list_empty(&fl->fl_link))
- panic("Attempting to free lock on active lock list");
+ BUG_ON(waitqueue_active(&fl->fl_wait));
+ BUG_ON(!list_empty(&fl->fl_block));
+ BUG_ON(!list_empty(&fl->fl_link));
locks_release_private(fl);
kmem_cache_free(filelock_cache, fl);