Forwarded: Re: [syzbot] [nilfs?] INFO: task hung in find_inode (2)

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-kernel
Message-ID <[email protected]>
For archival purposes, forwarding an incoming command email to
[email protected].

***

Subject: Re: [syzbot] [nilfs?] INFO: task hung in find_inode (2)
Author: [email protected]


#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git c21bb4193868

Fix deadlock between find_inode() and nilfs_evict_inode()

diff --git a/fs/nilfs2/segment.c b/fs/nilfs2/segment.c
index 9332f5ac6083..6b2b7060f004 100644
--- a/fs/nilfs2/segment.c
+++ b/fs/nilfs2/segment.c
@@ -830,8 +830,11 @@ static void nilfs_iput_work_func(struct work_struct *work)
 	struct nilfs_sc_info *sci = container_of(work, struct nilfs_sc_info,
 						 sc_iput_work);
 	struct the_nilfs *nilfs = sci->sc_super->s_fs_info;
+	struct nilfs_transaction_info ti;
 
+	nilfs_transaction_begin(sci->sc_super, &ti, 0);
 	nilfs_dispose_list(nilfs, &sci->sc_iput_queue, 0);
+	nilfs_transaction_commit(sci->sc_super);
 }
 
 static int nilfs_test_metadata_dirty(struct the_nilfs *nilfs,
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.