summaryrefslogtreecommitdiffstats
path: root/fs/ubifs
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2008-10-31 11:17:42 +0100
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2008-12-03 12:14:34 +0100
commit787845bdeadd368eedeace92d5bf53f5aa1450ba (patch)
treee05cb97ba1827e67293758b1955a6372ac8daae6 /fs/ubifs
parentUBIFS: run debugging checks only if they are enabled (diff)
downloadlinux-787845bdeadd368eedeace92d5bf53f5aa1450ba.tar.xz
linux-787845bdeadd368eedeace92d5bf53f5aa1450ba.zip
UBIFS: dump stack in LPT check functions
It is useful to know how we got to the checking function when hunting the bugs. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'fs/ubifs')
-rw-r--r--fs/ubifs/lpt_commit.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/ubifs/lpt_commit.c b/fs/ubifs/lpt_commit.c
index 7bbf03518c7f..c5c07f9cd22c 100644
--- a/fs/ubifs/lpt_commit.c
+++ b/fs/ubifs/lpt_commit.c
@@ -320,6 +320,7 @@ no_space:
dbg_err("LPT out of space at LEB %d:%d needing %d, done_ltab %d, "
"done_lsave %d", lnum, offs, len, done_ltab, done_lsave);
dbg_dump_lpt_info(c);
+ dump_stack();
return err;
}
@@ -548,6 +549,7 @@ no_space:
dbg_err("LPT out of space mismatch at LEB %d:%d needing %d, done_ltab "
"%d, done_lsave %d", lnum, offs, len, done_ltab, done_lsave);
dbg_dump_lpt_info(c);
+ dump_stack();
return err;
}
@@ -1722,6 +1724,7 @@ int dbg_chk_lpt_free_spc(struct ubifs_info *c)
dbg_err("LPT space error: free %lld lpt_sz %lld",
free, c->lpt_sz);
dbg_dump_lpt_info(c);
+ dump_stack();
return -EINVAL;
}
return 0;
@@ -1803,8 +1806,10 @@ int dbg_chk_lpt_sz(struct ubifs_info *c, int action, int len)
d->chk_lpt_sz, d->chk_lpt_wastage, lpt_sz);
err = -EINVAL;
}
- if (err)
+ if (err) {
dbg_dump_lpt_info(c);
+ dump_stack();
+ }
d->chk_lpt_sz2 = d->chk_lpt_sz;
d->chk_lpt_sz = 0;
d->chk_lpt_wastage = 0;