Export symbol of writeback_single_inode() in order to call it from overlayfs' ->writepages when sync single inode. Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxxxxx> --- fs/fs-writeback.c | 3 ++- include/linux/writeback.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c index 657cceb..4fed058 100644 --- a/fs/fs-writeback.c +++ b/fs/fs-writeback.c @@ -1529,7 +1529,7 @@ static void requeue_inode(struct inode *inode, struct bdi_writeback *wb, * we go e.g. from filesystem. Flusher thread uses __writeback_single_inode() * and does more profound writeback list handling in writeback_sb_inodes(). */ -static int writeback_single_inode(struct inode *inode, +int writeback_single_inode(struct inode *inode, struct writeback_control *wbc) { struct bdi_writeback *wb; @@ -1585,6 +1585,7 @@ static int writeback_single_inode(struct inode *inode, spin_unlock(&inode->i_lock); return ret; } +EXPORT_SYMBOL(writeback_single_inode); static long writeback_chunk_size(struct bdi_writeback *wb, struct wb_writeback_work *work) diff --git a/include/linux/writeback.h b/include/linux/writeback.h index 8e5c5bb..78e3b10 100644 --- a/include/linux/writeback.h +++ b/include/linux/writeback.h @@ -403,4 +403,5 @@ void tag_pages_for_writeback(struct address_space *mapping, void sb_mark_inode_writeback(struct inode *inode); void sb_clear_inode_writeback(struct inode *inode); +int writeback_single_inode(struct inode *inode, struct writeback_control *wbc); #endif /* WRITEBACK_H */ -- 1.8.3.1