Reported verification errors to fsnotify through recently added fserror
interface.

Signed-off-by: Andrey Albershteyn <[email protected]>
---
 fs/verity/verify.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/fs/verity/verify.c b/fs/verity/verify.c
index 4004a1d42875..4ea494da694f 100644
--- a/fs/verity/verify.c
+++ b/fs/verity/verify.c
@@ -9,6 +9,7 @@
 
 #include <linux/bio.h>
 #include <linux/export.h>
+#include <linux/fserror.h>
 
 #define FS_VERITY_MAX_PENDING_BLOCKS 2
 
@@ -203,6 +204,8 @@ static bool verify_data_block(struct fsverity_info *vi,
                 * to verify that any data blocks fully past EOF are all zeroes.
                 */
                if (memchr_inv(dblock->data, 0, params->block_size)) {
+                       fserror_report_data_lost(inode, data_pos,
+                                                params->block_size, GFP_NOFS);
                        fsverity_err(inode,
                                     "FILE CORRUPTED!  Data past EOF is not 
zeroed");
                        return false;
@@ -312,6 +315,7 @@ static bool verify_data_block(struct fsverity_info *vi,
                data_pos, level - 1, params->hash_alg->name, hsize, want_hash,
                params->hash_alg->name, hsize,
                level == 0 ? dblock->real_hash : real_hash);
+       fserror_report_data_lost(inode, data_pos, params->block_size, GFP_NOFS);
 error:
        for (; level > 0; level--) {
                kunmap_local(hblocks[level - 1].addr);
-- 
2.51.2



_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to