diff options
author | Jean-Christophe DUBOIS <jcd@tribudubois.net> | 2012-05-10 11:14:03 -0400 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2012-05-14 00:32:36 -0400 |
commit | 8c5a0366403f5dbca9d4ccf50f95bafbaddc2844 (patch) | |
tree | 6955c7e9b1520ab89dc26f62fc9e11997c31078c /fs/jffs2/readinode.c | |
parent | 9824f75d56298e5fe4f9f57d9f3abd5fbf3d472c (diff) |
jffs2: allow to complete xattr integrity check on first GC scan
Unlike file data integrity the xattr data integrity was not checked
before some explicit access to the attribute was made.
This could leave in the system a number of corrupted extended attributes
which will be detected only at access time and possibly at a very late
time compared to the time the corruption actually happened.
This patch adds the ability to check for extended attribute integrity
on first GC scan pass (similar to file data integrity check). This allows
for all present attributes to be completly verified before any use of them.
In order to work correctly this patch also needs the patch allowing
JFFS2 to discriminate between recoverable and non recoverable errors
on extended attributes.
Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'fs/jffs2/readinode.c')
-rw-r--r-- | fs/jffs2/readinode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/jffs2/readinode.c b/fs/jffs2/readinode.c index 3833d74f2305..1ea349fff68b 100644 --- a/fs/jffs2/readinode.c +++ b/fs/jffs2/readinode.c | |||
@@ -1421,6 +1421,7 @@ int jffs2_do_crccheck_inode(struct jffs2_sb_info *c, struct jffs2_inode_cache *i | |||
1421 | mutex_unlock(&f->sem); | 1421 | mutex_unlock(&f->sem); |
1422 | jffs2_do_clear_inode(c, f); | 1422 | jffs2_do_clear_inode(c, f); |
1423 | } | 1423 | } |
1424 | jffs2_xattr_do_crccheck_inode(c, ic); | ||
1424 | kfree (f); | 1425 | kfree (f); |
1425 | return ret; | 1426 | return ret; |
1426 | } | 1427 | } |