Forwarded: [PATCH] debug: log uptodate states for iomap bug

syzbot posted 1 patch 3 days ago
fs/iomap/buffered-io.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
Forwarded: [PATCH] debug: log uptodate states for iomap bug
Posted by syzbot 3 days ago
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com.

***

Subject: [PATCH] debug: log uptodate states for iomap bug
Author: nsvatoslav515@gmail.com

Signed-off-by: Svyatoslav Nikolenko <nsvatoslav515@gmail.com>
---
#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 238650ef6c7c

 fs/iomap/buffered-io.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c
index 0a5ebfda90f1..37596bae664d 100644
--- a/fs/iomap/buffered-io.c
+++ b/fs/iomap/buffered-io.c
@@ -291,8 +291,13 @@ static void ifs_free(struct folio *folio)
 		return;
 	WARN_ON_ONCE(ifs->read_bytes_pending != 0);
 	WARN_ON_ONCE(atomic_read(&ifs->write_bytes_pending));
-	WARN_ON_ONCE(ifs_is_fully_uptodate(folio, ifs) !=
-			folio_test_uptodate(folio));
+
+	bool ifs_up = ifs_is_fully_uptodate(folio, ifs);
+	bool folio_up = folio_test_uptodate(folio);
+
+	if (WARN_ON_ONCE(ifs_up != folio_up))
+		pr_err("IOMAP DEBUG: ifs_up=%d, folio_up=%d\n", ifs_up, folio_up);
+
 	kfree(ifs);
 }
 
-- 
2.47.3