All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zhang Yi via Ocfs2-devel <ocfs2-devel@oss.oracle.com>
To: <linux-ext4@vger.kernel.org>, <linux-fsdevel@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <cluster-devel@redhat.com>,
	<ntfs3@lists.linux.dev>, <ocfs2-devel@oss.oracle.com>,
	<reiserfs-devel@vger.kernel.org>, <jack@suse.cz>
Cc: axboe@kernel.dk, hch@infradead.org, tytso@mit.edu,
	agruenba@redhat.com, yi.zhang@huawei.com,
	almaz.alexandrovich@paragon-software.com,
	viro@zeniv.linux.org.uk, yukuai3@huawei.com, rpeterso@redhat.com,
	dushistov@mail.ru, chengzhihao1@huawei.com
Subject: [Ocfs2-devel] [PATCH v2 08/14] ocfs2: replace ll_rw_block()
Date: Thu, 1 Sep 2022 21:34:59 +0800	[thread overview]
Message-ID: <20220901133505.2510834-9-yi.zhang@huawei.com> (raw)
In-Reply-To: <20220901133505.2510834-1-yi.zhang@huawei.com>

ll_rw_block() is not safe for the sync read path because it cannot
guarantee that submitting read IO if the buffer has been locked. We
could get false positive EIO after wait_on_buffer() if the buffer has
been locked by others. So stop using ll_rw_block() in ocfs2.

Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
---
 fs/ocfs2/aops.c  | 2 +-
 fs/ocfs2/super.c | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index af4157f61927..1d65f6ef00ca 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -636,7 +636,7 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
 			   !buffer_new(bh) &&
 			   ocfs2_should_read_blk(inode, page, block_start) &&
 			   (block_start < from || block_end > to)) {
-			ll_rw_block(REQ_OP_READ, 1, &bh);
+			bh_read_nowait(bh, 0);
 			*wait_bh++=bh;
 		}
 
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index e2cc9eec287c..26b4c2bfee49 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -1764,9 +1764,7 @@ static int ocfs2_get_sector(struct super_block *sb,
 	if (!buffer_dirty(*bh))
 		clear_buffer_uptodate(*bh);
 	unlock_buffer(*bh);
-	ll_rw_block(REQ_OP_READ, 1, bh);
-	wait_on_buffer(*bh);
-	if (!buffer_uptodate(*bh)) {
+	if (bh_read(*bh, 0) < 0) {
 		mlog_errno(-EIO);
 		brelse(*bh);
 		*bh = NULL;
-- 
2.31.1


_______________________________________________
Ocfs2-devel mailing list
Ocfs2-devel@oss.oracle.com
https://oss.oracle.com/mailman/listinfo/ocfs2-devel

WARNING: multiple messages have this Message-ID (diff)
From: Zhang Yi <yi.zhang@huawei.com>
To: <linux-ext4@vger.kernel.org>, <linux-fsdevel@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <cluster-devel@redhat.com>,
	<ntfs3@lists.linux.dev>, <ocfs2-devel@oss.oracle.com>,
	<reiserfs-devel@vger.kernel.org>, <jack@suse.cz>
Cc: <tytso@mit.edu>, <akpm@linux-foundation.org>, <axboe@kernel.dk>,
	<viro@zeniv.linux.org.uk>, <rpeterso@redhat.com>,
	<agruenba@redhat.com>, <almaz.alexandrovich@paragon-software.com>,
	<mark@fasheh.com>, <dushistov@mail.ru>, <hch@infradead.org>,
	<yi.zhang@huawei.com>, <chengzhihao1@huawei.com>,
	<yukuai3@huawei.com>
Subject: [PATCH v2 08/14] ocfs2: replace ll_rw_block()
Date: Thu, 1 Sep 2022 21:34:59 +0800	[thread overview]
Message-ID: <20220901133505.2510834-9-yi.zhang@huawei.com> (raw)
In-Reply-To: <20220901133505.2510834-1-yi.zhang@huawei.com>

ll_rw_block() is not safe for the sync read path because it cannot
guarantee that submitting read IO if the buffer has been locked. We
could get false positive EIO after wait_on_buffer() if the buffer has
been locked by others. So stop using ll_rw_block() in ocfs2.

Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
---
 fs/ocfs2/aops.c  | 2 +-
 fs/ocfs2/super.c | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index af4157f61927..1d65f6ef00ca 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -636,7 +636,7 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
 			   !buffer_new(bh) &&
 			   ocfs2_should_read_blk(inode, page, block_start) &&
 			   (block_start < from || block_end > to)) {
-			ll_rw_block(REQ_OP_READ, 1, &bh);
+			bh_read_nowait(bh, 0);
 			*wait_bh++=bh;
 		}
 
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index e2cc9eec287c..26b4c2bfee49 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -1764,9 +1764,7 @@ static int ocfs2_get_sector(struct super_block *sb,
 	if (!buffer_dirty(*bh))
 		clear_buffer_uptodate(*bh);
 	unlock_buffer(*bh);
-	ll_rw_block(REQ_OP_READ, 1, bh);
-	wait_on_buffer(*bh);
-	if (!buffer_uptodate(*bh)) {
+	if (bh_read(*bh, 0) < 0) {
 		mlog_errno(-EIO);
 		brelse(*bh);
 		*bh = NULL;
-- 
2.31.1


WARNING: multiple messages have this Message-ID (diff)
From: Zhang Yi <yi.zhang@huawei.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH v2 08/14] ocfs2: replace ll_rw_block()
Date: Thu, 1 Sep 2022 21:34:59 +0800	[thread overview]
Message-ID: <20220901133505.2510834-9-yi.zhang@huawei.com> (raw)
In-Reply-To: <20220901133505.2510834-1-yi.zhang@huawei.com>

ll_rw_block() is not safe for the sync read path because it cannot
guarantee that submitting read IO if the buffer has been locked. We
could get false positive EIO after wait_on_buffer() if the buffer has
been locked by others. So stop using ll_rw_block() in ocfs2.

Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
---
 fs/ocfs2/aops.c  | 2 +-
 fs/ocfs2/super.c | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index af4157f61927..1d65f6ef00ca 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -636,7 +636,7 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
 			   !buffer_new(bh) &&
 			   ocfs2_should_read_blk(inode, page, block_start) &&
 			   (block_start < from || block_end > to)) {
-			ll_rw_block(REQ_OP_READ, 1, &bh);
+			bh_read_nowait(bh, 0);
 			*wait_bh++=bh;
 		}
 
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index e2cc9eec287c..26b4c2bfee49 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -1764,9 +1764,7 @@ static int ocfs2_get_sector(struct super_block *sb,
 	if (!buffer_dirty(*bh))
 		clear_buffer_uptodate(*bh);
 	unlock_buffer(*bh);
-	ll_rw_block(REQ_OP_READ, 1, bh);
-	wait_on_buffer(*bh);
-	if (!buffer_uptodate(*bh)) {
+	if (bh_read(*bh, 0) < 0) {
 		mlog_errno(-EIO);
 		brelse(*bh);
 		*bh = NULL;
-- 
2.31.1


WARNING: multiple messages have this Message-ID (diff)
From: Zhang Yi <yi.zhang@huawei.com>
To: linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-kernel@vger.kernel.org, cluster-devel@redhat.com,
	ntfs3@lists.linux.dev, ocfs2-devel@oss.oracle.com,
	reiserfs-devel@vger.kernel.org, jack@suse.cz
Cc: tytso@mit.edu, akpm@linux-foundation.org, axboe@kernel.dk,
	viro@zeniv.linux.org.uk, rpeterso@redhat.com,
	agruenba@redhat.com, almaz.alexandrovich@paragon-software.com,
	mark@fasheh.com, dushistov@mail.ru, hch@infradead.org,
	yi.zhang@huawei.com, chengzhihao1@huawei.com, yukuai3@huawei.com
Subject: [PATCH v2 08/14] ocfs2: replace ll_rw_block()
Date: Thu, 1 Sep 2022 21:34:59 +0800	[thread overview]
Message-ID: <20220901133505.2510834-9-yi.zhang@huawei.com> (raw)
In-Reply-To: <20220901133505.2510834-1-yi.zhang@huawei.com>

ll_rw_block() is not safe for the sync read path because it cannot
guarantee that submitting read IO if the buffer has been locked. We
could get false positive EIO after wait_on_buffer() if the buffer has
been locked by others. So stop using ll_rw_block() in ocfs2.

Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
---
 fs/ocfs2/aops.c  | 2 +-
 fs/ocfs2/super.c | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index af4157f61927..1d65f6ef00ca 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -636,7 +636,7 @@ int ocfs2_map_page_blocks(struct page *page, u64 *p_blkno,
 			   !buffer_new(bh) &&
 			   ocfs2_should_read_blk(inode, page, block_start) &&
 			   (block_start < from || block_end > to)) {
-			ll_rw_block(REQ_OP_READ, 1, &bh);
+			bh_read_nowait(bh, 0);
 			*wait_bh++=bh;
 		}
 
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index e2cc9eec287c..26b4c2bfee49 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -1764,9 +1764,7 @@ static int ocfs2_get_sector(struct super_block *sb,
 	if (!buffer_dirty(*bh))
 		clear_buffer_uptodate(*bh);
 	unlock_buffer(*bh);
-	ll_rw_block(REQ_OP_READ, 1, bh);
-	wait_on_buffer(*bh);
-	if (!buffer_uptodate(*bh)) {
+	if (bh_read(*bh, 0) < 0) {
 		mlog_errno(-EIO);
 		brelse(*bh);
 		*bh = NULL;
-- 
2.31.1


  parent reply	other threads:[~2022-09-01 13:24 UTC|newest]

Thread overview: 165+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-01 13:34 [PATCH v2 00/14] fs/buffer: remove ll_rw_block() Zhang Yi
2022-09-01 13:34 ` Zhang Yi
2022-09-01 13:34 ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34 ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-01 13:34 ` [PATCH v2 01/14] fs/buffer: remove __breadahead_gfp() Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-05  5:52   ` Christoph Hellwig
2022-09-05  5:52     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:52     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:34 ` [PATCH v2 02/14] fs/buffer: add some new buffer read helpers Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-01 15:44   ` Jan Kara
2022-09-01 15:44     ` [Cluster-devel] " Jan Kara
2022-09-01 15:44     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:52   ` Christoph Hellwig
2022-09-05  5:52     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:52     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:34 ` [PATCH v2 03/14] fs/buffer: replace ll_rw_block() Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-01 15:45   ` Jan Kara
2022-09-01 15:45     ` [Cluster-devel] " Jan Kara
2022-09-01 15:45     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:53   ` Christoph Hellwig
2022-09-05  5:53     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:53     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:34 ` [PATCH v2 04/14] gfs2: " Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-01 15:46   ` Jan Kara
2022-09-01 15:46     ` [Cluster-devel] " Jan Kara
2022-09-01 15:46     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:54   ` Christoph Hellwig
2022-09-05  5:54     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:54     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-05 14:10   ` Andreas Gruenbacher
2022-09-05 14:10     ` [Cluster-devel] " Andreas Gruenbacher
2022-09-05 14:10     ` [Ocfs2-devel] " Andreas Gruenbacher via Ocfs2-devel
2022-09-01 13:34 ` [PATCH v2 05/14] isofs: " Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-05  5:54   ` Christoph Hellwig
2022-09-05  5:54     ` Christoph Hellwig
2022-09-05  5:54     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:54     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:34 ` [Ocfs2-devel] [PATCH v2 06/14] jbd2: " Zhang Yi via Ocfs2-devel
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 15:50   ` Jan Kara
2022-09-01 15:50     ` [Cluster-devel] " Jan Kara
2022-09-01 15:50     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:54   ` Christoph Hellwig
2022-09-05  5:54     ` Christoph Hellwig
2022-09-05  5:54     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:54     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-05  8:23   ` Theodore Ts'o
2022-09-05  8:23     ` [Cluster-devel] " Theodore Ts'o
2022-09-05  8:23     ` [Ocfs2-devel] " Theodore Ts'o via Ocfs2-devel
2022-09-01 13:34 ` [Ocfs2-devel] [PATCH v2 07/14] ntfs3: " Zhang Yi via Ocfs2-devel
2022-09-01 13:34   ` Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 15:47   ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-01 15:47     ` [Cluster-devel] " Jan Kara
2022-09-01 15:47     ` Jan Kara
2022-09-05  5:54   ` Christoph Hellwig
2022-09-05  5:54     ` Christoph Hellwig
2022-09-05  5:54     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:54     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:34 ` Zhang Yi via Ocfs2-devel [this message]
2022-09-01 13:34   ` [PATCH v2 08/14] ocfs2: " Zhang Yi
2022-09-01 13:34   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:34   ` Zhang Yi
2022-09-01 15:51   ` Jan Kara
2022-09-01 15:51     ` [Cluster-devel] " Jan Kara
2022-09-01 15:51     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:55   ` Christoph Hellwig
2022-09-05  5:55     ` Christoph Hellwig
2022-09-05  5:55     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:55     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-06  1:06   ` Joseph Qi
2022-09-06  1:06     ` [Cluster-devel] " Joseph Qi
2022-09-06  1:06     ` Joseph Qi via Ocfs2-devel
2022-09-01 13:35 ` [Ocfs2-devel] [PATCH v2 09/14] reiserfs: " Zhang Yi via Ocfs2-devel
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-01 15:52   ` Jan Kara
2022-09-01 15:52     ` [Cluster-devel] " Jan Kara
2022-09-01 15:52     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:55   ` Christoph Hellwig
2022-09-05  5:55     ` Christoph Hellwig
2022-09-05  5:55     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:55     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:35 ` [Ocfs2-devel] [PATCH v2 10/14] udf: " Zhang Yi via Ocfs2-devel
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-01 15:58   ` Jan Kara
2022-09-01 15:58     ` [Cluster-devel] " Jan Kara
2022-09-01 15:58     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:55   ` Christoph Hellwig
2022-09-05  5:55     ` Christoph Hellwig
2022-09-05  5:55     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:55     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:35 ` [PATCH v2 11/14] ufs: " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-01 15:59   ` Jan Kara
2022-09-01 15:59     ` [Cluster-devel] " Jan Kara
2022-09-01 15:59     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-05  5:56   ` Christoph Hellwig
2022-09-05  5:56     ` Christoph Hellwig
2022-09-05  5:56     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:56     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:35 ` [Ocfs2-devel] [PATCH v2 12/14] fs/buffer: remove ll_rw_block() helper Zhang Yi via Ocfs2-devel
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-05  5:56   ` Christoph Hellwig
2022-09-05  5:56     ` Christoph Hellwig
2022-09-05  5:56     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:56     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:35 ` [Ocfs2-devel] [PATCH v2 13/14] ext2: replace bh_submit_read() helper with bh_read_locked() Zhang Yi via Ocfs2-devel
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-01 15:59   ` Jan Kara
2022-09-01 15:59     ` [Cluster-devel] " Jan Kara
2022-09-01 15:59     ` [Ocfs2-devel] " Jan Kara via Ocfs2-devel
2022-09-02  0:30   ` Al Viro
2022-09-02  0:30     ` [Cluster-devel] " Al Viro
2022-09-02  0:30     ` [Ocfs2-devel] " Al Viro via Ocfs2-devel
2022-09-02  1:32     ` Zhang Yi
2022-09-02  1:32       ` Zhang Yi
2022-09-02  1:32       ` [Cluster-devel] " Zhang Yi
2022-09-02  1:32       ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-02  1:51       ` Al Viro
2022-09-02  1:51         ` [Cluster-devel] " Al Viro
2022-09-02  1:51         ` [Ocfs2-devel] " Al Viro via Ocfs2-devel
2022-09-02  1:58         ` Zhang Yi
2022-09-02  1:58           ` Zhang Yi
2022-09-02  1:58           ` [Cluster-devel] " Zhang Yi
2022-09-02  1:58           ` [Ocfs2-devel] " Zhang Yi via Ocfs2-devel
2022-09-05  5:56   ` Christoph Hellwig
2022-09-05  5:56     ` Christoph Hellwig
2022-09-05  5:56     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:56     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel
2022-09-01 13:35 ` [Ocfs2-devel] [PATCH v2 14/14] fs/buffer: remove bh_submit_read() helper Zhang Yi via Ocfs2-devel
2022-09-01 13:35   ` Zhang Yi
2022-09-01 13:35   ` [Cluster-devel] " Zhang Yi
2022-09-01 13:35   ` Zhang Yi
2022-09-05  5:57   ` Christoph Hellwig
2022-09-05  5:57     ` Christoph Hellwig
2022-09-05  5:57     ` [Cluster-devel] " Christoph Hellwig
2022-09-05  5:57     ` [Ocfs2-devel] " Christoph Hellwig via Ocfs2-devel

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=20220901133505.2510834-9-yi.zhang@huawei.com \
    --to=ocfs2-devel@oss.oracle.com \
    --cc=agruenba@redhat.com \
    --cc=almaz.alexandrovich@paragon-software.com \
    --cc=axboe@kernel.dk \
    --cc=chengzhihao1@huawei.com \
    --cc=cluster-devel@redhat.com \
    --cc=dushistov@mail.ru \
    --cc=hch@infradead.org \
    --cc=jack@suse.cz \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ntfs3@lists.linux.dev \
    --cc=reiserfs-devel@vger.kernel.org \
    --cc=rpeterso@redhat.com \
    --cc=tytso@mit.edu \
    --cc=viro@zeniv.linux.org.uk \
    --cc=yi.zhang@huawei.com \
    --cc=yukuai3@huawei.com \
    /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.