[Devel] [PATCH RHEL7 COMMIT] ms/writeback: Export inode_io_list_del()

Vasily Averin vvs at virtuozzo.com
Fri Feb 5 14:30:24 MSK 2021


The commit is pushed to "branch-rh7-3.10.0-1160.11.1.vz7.172.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-1160.11.1.vz7.172.12
------>
commit dde6f74bad68a1c1a99cd88fc66f93988502a444
Author: Jan Kara <jack at suse.cz>
Date:   Fri Feb 5 14:30:24 2021 +0300

    ms/writeback: Export inode_io_list_del()
    
    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 dd6b06d..c16a39f 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 1c50f43..e183eeb 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 12075c8..fd12ba9 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)


More information about the Devel mailing list