[Devel] [PATCH rh7 1/2] ms/writeback: Export inode_io_list_del()

Konstantin Khorenko khorenko at virtuozzo.com
Wed Feb 3 19:22:42 MSK 2021


From: Jan Kara <jack at suse.cz>

Ext4 needs to remove inode from writeback lists after it is out of
visibility of its journalling machinery (which can still dirty the
inode). Export inode_io_list_del() for it.

Signed-off-by: Jan Kara <jack at suse.cz>
Link: https://lore.kernel.org/r/20200421085445.5731-3-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso at mit.edu>

(cherry picked from commit 4301efa4c7cca11556dd89899eee066d49b47bf7)
Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
 fs/fs-writeback.c         | 1 +
 fs/internal.h             | 2 --
 include/linux/writeback.h | 1 +
 3 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
index dd6b06ded3f4..c16a39f4f724 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
@@ -197,6 +197,7 @@ void inode_io_list_del(struct inode *inode)
 	list_del_init(&inode->i_io_list);
 	spin_unlock(&bdi->wb.list_lock);
 }
+EXPORT_SYMBOL(inode_io_list_del);
 
 /*
  * mark an inode as under writeback on the sb
diff --git a/fs/internal.h b/fs/internal.h
index 1c50f43eb786..e183eebb54af 100644
--- a/fs/internal.h
+++ b/fs/internal.h
@@ -133,8 +133,6 @@ extern bool atime_needs_update_rcu(const struct path *, struct inode *);
 /*
  * fs-writeback.c
  */
-extern void inode_io_list_del(struct inode *inode);
-
 extern long get_nr_dirty_inodes(void);
 extern void evict_inodes(struct super_block *);
 extern int invalidate_inodes(struct super_block *, bool);
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
index 12075c8e0415..fd12ba981135 100644
--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
@@ -116,6 +116,7 @@ void wakeup_flusher_threads(long nr_pages, enum wb_reason reason);
 void wakeup_flusher_threads_ub(long nr_pages, struct user_beancounter *ub,
 			enum wb_reason reason);
 void inode_wait_for_writeback(struct inode *inode);
+void inode_io_list_del(struct inode *inode);
 
 /* writeback.h requires fs.h; it, too, is not included from here. */
 static inline void wait_on_inode(struct inode *inode)
-- 
2.24.3



More information about the Devel mailing list