[PATCH 06/21] Unionfs: Provide more helpful info on branch leaks during unmount

From: Josef 'Jeff' Sipek
Date: Mon Apr 09 2007 - 10:57:01 EST


From: Erez Zadok <ezk@xxxxxxxxxxxxx>

Signed-off-by: Erez Zadok <ezk@xxxxxxxxxxxxx>
[jsipek: no need to take a read lock on the superblock private data]
Signed-off-by: Josef 'Jeff' Sipek <jsipek@xxxxxxxxxxxxx>
---
fs/unionfs/super.c | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/fs/unionfs/super.c b/fs/unionfs/super.c
index 571b589..037c47d 100644
--- a/fs/unionfs/super.c
+++ b/fs/unionfs/super.c
@@ -97,6 +97,7 @@ static void unionfs_put_super(struct super_block *sb)
{
int bindex, bstart, bend;
struct unionfs_sb_info *spd;
+ int leaks = 0;

spd = UNIONFS_SB(sb);
if (!spd)
@@ -107,7 +108,12 @@ static void unionfs_put_super(struct super_block *sb)

/* Make sure we have no leaks of branchget/branchput. */
for (bindex = bstart; bindex <= bend; bindex++)
- BUG_ON(branch_count(sb, bindex) != 0);
+ if (branch_count(sb, bindex) != 0) {
+ printk("unionfs: branch %d has %d references left!\n",
+ bindex, branch_count(sb,bindex));
+ leaks = 1;
+ }
+ BUG_ON(leaks != 0);

kfree(spd->data);
kfree(spd);
--
1.5.0.3.268.g3dda

-
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/