Message ID | 538D6FE7.80209@huawei.com |
---|---|
State | Accepted |
Headers | show |
On Tue, 2014-06-03 at 14:49 +0800, hujianyang wrote: > This patch adds a new ubifs_assert() in ubifs_tnc_close() to check > if there are any leaks of per-filesystem @clean_zn_cnt. This new > assert inspects whether the return value of ubifs_destroy_tnc_subtree() > is equal to @clean_zn_cnt or not while umount. Pushed to linux-ubifs.git, thanks!
diff --git a/fs/ubifs/tnc.c b/fs/ubifs/tnc.c index 9083bc7..61914f0 100644 --- a/fs/ubifs/tnc.c +++ b/fs/ubifs/tnc.c @@ -2859,10 +2859,11 @@ void ubifs_tnc_close(struct ubifs_info *c) { tnc_destroy_cnext(c); if (c->zroot.znode) { - long n; + long n, freed; - ubifs_destroy_tnc_subtree(c->zroot.znode); + freed = ubifs_destroy_tnc_subtree(c->zroot.znode); n = atomic_long_read(&c->clean_zn_cnt); + ubifs_assert(freed == n); atomic_long_sub(n, &ubifs_clean_zn_cnt); } kfree(c->gap_lebs);
This patch adds a new ubifs_assert() in ubifs_tnc_close() to check if there are any leaks of per-filesystem @clean_zn_cnt. This new assert inspects whether the return value of ubifs_destroy_tnc_subtree() is equal to @clean_zn_cnt or not while umount. Signed-off-by: hujianyang <hujianyang@huawei.com> --- fs/ubifs/tnc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)