mapping_read_folio_gfp() will return a folio, it should always be
uptodate, let's check folio uptodate status to detect any potenial
bug.

Signed-off-by: Chao Yu <c...@kernel.org>
---
 fs/f2fs/super.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 0ee783224953..ea207a9edc10 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -2973,6 +2973,17 @@ static ssize_t f2fs_quota_read(struct super_block *sb, 
int type, char *data,
                        goto repeat;
                }
 
+               /*
+                * should never happen, just leave f2fs_bug_on() here to catch
+                * any potential bug.
+                */
+               if (unlikely(!folio_test_uptodate(folio))) {
+                       f2fs_folio_put(folio, true);
+                       set_sbi_flag(F2FS_SB(sb), SBI_QUOTA_NEED_REPAIR);
+                       f2fs_bug_on(F2FS_SB(sb), 1);
+                       return -EIO;
+               }
+
                memcpy_from_folio(data, folio, offset, tocopy);
                f2fs_folio_put(folio, true);
 
-- 
2.49.0



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to