All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chengguang Xu <cgxu519@mykernel.net>
To: miklos@szeredi.hu, jack@suse.cz, amir73il@gmail.com
Cc: linux-unionfs@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	Chengguang Xu <cgxu519@mykernel.net>
Subject: [RFC PATCH v4 8/9] fs: export wait_sb_inodes()
Date: Fri, 13 Nov 2020 14:55:54 +0800	[thread overview]
Message-ID: <20201113065555.147276-9-cgxu519@mykernel.net> (raw)
In-Reply-To: <20201113065555.147276-1-cgxu519@mykernel.net>

In order to wait syncing upper inodes we need to call wait_sb_inodes()
in overlayfs' ->sync_fs.

Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
---
 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 149227160ff0..55dafdc72661 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
@@ -2365,7 +2365,7 @@ EXPORT_SYMBOL(__mark_inode_dirty);
  * completed by the time we have gained the lock and waited for all IO that is
  * in progress regardless of the order callers are granted the lock.
  */
-static void wait_sb_inodes(struct super_block *sb)
+void wait_sb_inodes(struct super_block *sb)
 {
 	LIST_HEAD(sync_list);
 
@@ -2449,6 +2449,7 @@ static void wait_sb_inodes(struct super_block *sb)
 	rcu_read_unlock();
 	mutex_unlock(&sb->s_sync_lock);
 }
+EXPORT_SYMBOL(wait_sb_inodes);
 
 static void __writeback_inodes_sb_nr(struct super_block *sb, unsigned long nr,
 				     enum wb_reason reason, bool skip_if_busy)
diff --git a/include/linux/writeback.h b/include/linux/writeback.h
index 8e5c5bb16e2d..53e826af33b6 100644
--- a/include/linux/writeback.h
+++ b/include/linux/writeback.h
@@ -198,6 +198,7 @@ void wakeup_flusher_threads_bdi(struct backing_dev_info *bdi,
 				enum wb_reason reason);
 void inode_wait_for_writeback(struct inode *inode);
 void inode_io_list_del(struct inode *inode);
+void wait_sb_inodes(struct super_block *sb);
 
 /* writeback.h requires fs.h; it, too, is not included from here. */
 static inline void wait_on_inode(struct inode *inode)
-- 
2.26.2



  parent reply	other threads:[~2020-11-13  6:57 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-13  6:55 [RFC PATCH v4 0/9] implement containerized syncfs for overlayfs Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 1/9] ovl: setup overlayfs' private bdi Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 2/9] ovl: implement ->writepages operation Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 3/9] ovl: implement overlayfs' ->evict_inode operation Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 4/9] ovl: mark overlayfs' inode dirty on modification Chengguang Xu
2021-04-09 13:45   ` Miklos Szeredi
2021-04-12 11:58     ` Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 5/9] ovl: mark overlayfs' inode dirty on shared mmap Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 6/9] ovl: implement overlayfs' ->write_inode operation Chengguang Xu
2021-04-09 13:49   ` Miklos Szeredi
2021-04-14  6:14     ` Chengguang Xu
2020-11-13  6:55 ` [RFC PATCH v4 7/9] ovl: cache dirty overlayfs' inode Chengguang Xu
2021-04-09 13:50   ` Miklos Szeredi
2021-04-13  2:14     ` Chengguang Xu
2021-04-13  8:43       ` Miklos Szeredi
2021-04-14  5:53         ` Chengguang Xu
2020-11-13  6:55 ` Chengguang Xu [this message]
2020-11-13  6:55 ` [RFC PATCH v4 9/9] ovl: implement containerized syncfs for overlayfs Chengguang Xu
2021-04-09 13:51   ` Miklos Szeredi
2021-04-12 12:24     ` Chengguang Xu
2021-04-12 14:22       ` Miklos Szeredi
2020-12-04 14:49 ` 回复:[RFC PATCH v4 0/9] " Chengguang Xu
2020-12-04 15:02   ` [RFC " Miklos Szeredi
2020-12-04 16:40   ` 回复:[RFC " Jan Kara

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201113065555.147276-9-cgxu519@mykernel.net \
    --to=cgxu519@mykernel.net \
    --cc=amir73il@gmail.com \
    --cc=jack@suse.cz \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-unionfs@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.