Commit 380347e9 authored by hujianyang's avatar hujianyang Committed by Artem Bityutskiy

UBIFS: Add an assertion for clean_zn_cnt

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.

Artem: a minor amendment
Signed-off-by: default avatarhujianyang <hujianyang@huawei.com>
Signed-off-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
parent 90bea5a3
...@@ -2859,10 +2859,11 @@ void ubifs_tnc_close(struct ubifs_info *c) ...@@ -2859,10 +2859,11 @@ void ubifs_tnc_close(struct ubifs_info *c)
{ {
tnc_destroy_cnext(c); tnc_destroy_cnext(c);
if (c->zroot.znode) { if (c->zroot.znode) {
long n; long n, freed;
ubifs_destroy_tnc_subtree(c->zroot.znode);
n = atomic_long_read(&c->clean_zn_cnt); n = atomic_long_read(&c->clean_zn_cnt);
freed = ubifs_destroy_tnc_subtree(c->zroot.znode);
ubifs_assert(freed == n);
atomic_long_sub(n, &ubifs_clean_zn_cnt); atomic_long_sub(n, &ubifs_clean_zn_cnt);
} }
kfree(c->gap_lebs); kfree(c->gap_lebs);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment