All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yu Kuai <yukuai1@huaweicloud.com>
To: axboe@kernel.dk, roger.pau@citrix.com, colyli@suse.de,
	kent.overstreet@gmail.com, joern@lazybastard.org,
	miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
	sth@linux.ibm.com, hoeppner@linux.ibm.com, hca@linux.ibm.com,
	gor@linux.ibm.com, agordeev@linux.ibm.com, jejb@linux.ibm.com,
	martin.petersen@oracle.com, clm@fb.com, josef@toxicpanda.com,
	dsterba@suse.com, viro@zeniv.linux.org.uk, brauner@kernel.org,
	nico@fluxnic.net, xiang@kernel.org, chao@kernel.org,
	tytso@mit.edu, adilger.kernel@dilger.ca, jack@suse.com,
	konishi.ryusuke@gmail.com, willy@infradead.org,
	akpm@linux-foundation.org, hare@suse.de, p.raghav@samsung.com
Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org, linux-bcache@vger.kernel.org,
	linux-mtd@lists.infradead.org, linux-s390@vger.kernel.org,
	linux-scsi@vger.kernel.org, linux-bcachefs@vger.kernel.org,
	linux-btrfs@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org,
	linux-nilfs@vger.kernel.org, yukuai3@huawei.com,
	yukuai1@huaweicloud.com, yi.zhang@huawei.com,
	yangerkun@huawei.com
Subject: [PATCH RFC v3 for-6.8/block 10/17] cramfs: use bdev apis in cramfs_blkdev_read()
Date: Thu, 21 Dec 2023 16:57:05 +0800	[thread overview]
Message-ID: <20231221085712.1766333-11-yukuai1@huaweicloud.com> (raw)
In-Reply-To: <20231221085712.1766333-1-yukuai1@huaweicloud.com>

From: Yu Kuai <yukuai3@huawei.com>

On the one hand covert to use folio while reading bdev inode, on the
other hand prevent to access bd_inode directly.

Also do some cleanup that there is no need for two for loop, and remove
local array pages.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
---
 fs/cramfs/inode.c | 36 +++++++++++++-----------------------
 1 file changed, 13 insertions(+), 23 deletions(-)

diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 60dbfa0f8805..fad95d683d97 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -183,9 +183,6 @@ static int next_buffer;
 static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 				unsigned int len)
 {
-	struct address_space *mapping = sb->s_bdev->bd_inode->i_mapping;
-	struct file_ra_state ra = {};
-	struct page *pages[BLKS_PER_BUF];
 	unsigned i, blocknr, buffer;
 	unsigned long devsize;
 	char *data;
@@ -214,37 +211,30 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 	devsize = bdev_nr_bytes(sb->s_bdev) >> PAGE_SHIFT;
 
 	/* Ok, read in BLKS_PER_BUF pages completely first. */
-	file_ra_state_init(&ra, mapping);
-	page_cache_sync_readahead(mapping, &ra, NULL, blocknr, BLKS_PER_BUF);
-
-	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = NULL;
-
-		if (blocknr + i < devsize) {
-			page = read_mapping_page(mapping, blocknr + i, NULL);
-			/* synchronous error? */
-			if (IS_ERR(page))
-				page = NULL;
-		}
-		pages[i] = page;
-	}
+	bdev_sync_readahead(sb->s_bdev, NULL, NULL, blocknr, BLKS_PER_BUF);
 
 	buffer = next_buffer;
 	next_buffer = NEXT_BUFFER(buffer);
 	buffer_blocknr[buffer] = blocknr;
 	buffer_dev[buffer] = sb;
-
 	data = read_buffers[buffer];
+
 	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = pages[i];
+		struct folio *folio = NULL;
+
+		if (blocknr + i < devsize)
+			folio = bdev_read_folio(sb->s_bdev,
+						(blocknr + i) << PAGE_SHIFT);
 
-		if (page) {
-			memcpy_from_page(data, page, 0, PAGE_SIZE);
-			put_page(page);
-		} else
+		if (IS_ERR_OR_NULL(folio)) {
 			memset(data, 0, PAGE_SIZE);
+		} else {
+			memcpy_from_folio(data, folio, 0, PAGE_SIZE);
+			folio_put(folio);
+		}
 		data += PAGE_SIZE;
 	}
+
 	return read_buffers[buffer] + offset;
 }
 
-- 
2.39.2


WARNING: multiple messages have this Message-ID (diff)
From: Yu Kuai <yukuai1@huaweicloud.com>
To: axboe@kernel.dk, roger.pau@citrix.com, colyli@suse.de,
	kent.overstreet@gmail.com, joern@lazybastard.org,
	miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
	sth@linux.ibm.com, hoeppner@linux.ibm.com, hca@linux.ibm.com,
	gor@linux.ibm.com, agordeev@linux.ibm.com, jejb@linux.ibm.com,
	martin.petersen@oracle.com, clm@fb.com, josef@toxicpanda.com,
	dsterba@suse.com, viro@zeniv.linux.org.uk, brauner@kernel.org,
	nico@fluxnic.net, xiang@kernel.org, chao@kernel.org,
	tytso@mit.edu, adilger.kernel@dilger.ca, jack@suse.com,
	konishi.ryusuke@gmail.com, willy@infradead.org,
	akpm@linux-foundation.org, hare@suse.de, p.raghav@samsung.com
Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org,
	xen-devel@lists.xenproject.org, linux-bcache@vger.kernel.org,
	linux-mtd@lists.infradead.org, linux-s390@vger.kernel.org,
	linux-scsi@vger.kernel.org, linux-bcachefs@vger.kernel.org,
	linux-btrfs@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-erofs@lists.ozlabs.org, linux-ext4@vger.kernel.org,
	linux-nilfs@vger.kernel.org, yukuai3@huawei.com,
	yukuai1@huaweicloud.com, yi.zhang@huawei.com,
	yangerkun@huawei.com
Subject: [PATCH RFC v3 for-6.8/block 10/17] cramfs: use bdev apis in cramfs_blkdev_read()
Date: Thu, 21 Dec 2023 16:57:05 +0800	[thread overview]
Message-ID: <20231221085712.1766333-11-yukuai1@huaweicloud.com> (raw)
In-Reply-To: <20231221085712.1766333-1-yukuai1@huaweicloud.com>

From: Yu Kuai <yukuai3@huawei.com>

On the one hand covert to use folio while reading bdev inode, on the
other hand prevent to access bd_inode directly.

Also do some cleanup that there is no need for two for loop, and remove
local array pages.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
---
 fs/cramfs/inode.c | 36 +++++++++++++-----------------------
 1 file changed, 13 insertions(+), 23 deletions(-)

diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 60dbfa0f8805..fad95d683d97 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -183,9 +183,6 @@ static int next_buffer;
 static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 				unsigned int len)
 {
-	struct address_space *mapping = sb->s_bdev->bd_inode->i_mapping;
-	struct file_ra_state ra = {};
-	struct page *pages[BLKS_PER_BUF];
 	unsigned i, blocknr, buffer;
 	unsigned long devsize;
 	char *data;
@@ -214,37 +211,30 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 	devsize = bdev_nr_bytes(sb->s_bdev) >> PAGE_SHIFT;
 
 	/* Ok, read in BLKS_PER_BUF pages completely first. */
-	file_ra_state_init(&ra, mapping);
-	page_cache_sync_readahead(mapping, &ra, NULL, blocknr, BLKS_PER_BUF);
-
-	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = NULL;
-
-		if (blocknr + i < devsize) {
-			page = read_mapping_page(mapping, blocknr + i, NULL);
-			/* synchronous error? */
-			if (IS_ERR(page))
-				page = NULL;
-		}
-		pages[i] = page;
-	}
+	bdev_sync_readahead(sb->s_bdev, NULL, NULL, blocknr, BLKS_PER_BUF);
 
 	buffer = next_buffer;
 	next_buffer = NEXT_BUFFER(buffer);
 	buffer_blocknr[buffer] = blocknr;
 	buffer_dev[buffer] = sb;
-
 	data = read_buffers[buffer];
+
 	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = pages[i];
+		struct folio *folio = NULL;
+
+		if (blocknr + i < devsize)
+			folio = bdev_read_folio(sb->s_bdev,
+						(blocknr + i) << PAGE_SHIFT);
 
-		if (page) {
-			memcpy_from_page(data, page, 0, PAGE_SIZE);
-			put_page(page);
-		} else
+		if (IS_ERR_OR_NULL(folio)) {
 			memset(data, 0, PAGE_SIZE);
+		} else {
+			memcpy_from_folio(data, folio, 0, PAGE_SIZE);
+			folio_put(folio);
+		}
 		data += PAGE_SIZE;
 	}
+
 	return read_buffers[buffer] + offset;
 }
 
-- 
2.39.2


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

WARNING: multiple messages have this Message-ID (diff)
From: Yu Kuai <yukuai1@huaweicloud.com>
To: axboe@kernel.dk, roger.pau@citrix.com, colyli@suse.de,
	kent.overstreet@gmail.com, joern@lazybastard.org,
	miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com,
	sth@linux.ibm.com, hoeppner@linux.ibm.com, hca@linux.ibm.com,
	gor@linux.ibm.com, agordeev@linux.ibm.com, jejb@linux.ibm.com,
	martin.petersen@oracle.com, clm@fb.com, josef@toxicpanda.com,
	dsterba@suse.com, viro@zeniv.linux.org.uk, brauner@kernel.org,
	nico@fluxnic.net, xiang@kernel.org, chao@kernel.org,
	tytso@mit.edu, adilger.kernel@dilger.ca, jack@suse.com,
	konishi.ryusuke@gmail.com, willy@infradead.org,
	akpm@linux-foundation.org, hare@suse.de, p.raghav@samsung.com
Cc: linux-s390@vger.kernel.org, linux-nilfs@vger.kernel.org,
	linux-scsi@vger.kernel.org, yukuai1@huaweicloud.com,
	yangerkun@huawei.com, yi.zhang@huawei.com,
	linux-kernel@vger.kernel.org, linux-block@vger.kernel.org,
	linux-bcachefs@vger.kernel.org, linux-bcache@vger.kernel.org,
	linux-mtd@lists.infradead.org, yukuai3@huawei.com,
	linux-fsdevel@vger.kernel.org, xen-devel@lists.xenproject.org,
	linux-ext4@vger.kernel.org, linux-erofs@lists.ozlabs.org,
	linux-btrfs@vger.kernel.org
Subject: [PATCH RFC v3 for-6.8/block 10/17] cramfs: use bdev apis in cramfs_blkdev_read()
Date: Thu, 21 Dec 2023 16:57:05 +0800	[thread overview]
Message-ID: <20231221085712.1766333-11-yukuai1@huaweicloud.com> (raw)
In-Reply-To: <20231221085712.1766333-1-yukuai1@huaweicloud.com>

From: Yu Kuai <yukuai3@huawei.com>

On the one hand covert to use folio while reading bdev inode, on the
other hand prevent to access bd_inode directly.

Also do some cleanup that there is no need for two for loop, and remove
local array pages.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
---
 fs/cramfs/inode.c | 36 +++++++++++++-----------------------
 1 file changed, 13 insertions(+), 23 deletions(-)

diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 60dbfa0f8805..fad95d683d97 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -183,9 +183,6 @@ static int next_buffer;
 static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 				unsigned int len)
 {
-	struct address_space *mapping = sb->s_bdev->bd_inode->i_mapping;
-	struct file_ra_state ra = {};
-	struct page *pages[BLKS_PER_BUF];
 	unsigned i, blocknr, buffer;
 	unsigned long devsize;
 	char *data;
@@ -214,37 +211,30 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
 	devsize = bdev_nr_bytes(sb->s_bdev) >> PAGE_SHIFT;
 
 	/* Ok, read in BLKS_PER_BUF pages completely first. */
-	file_ra_state_init(&ra, mapping);
-	page_cache_sync_readahead(mapping, &ra, NULL, blocknr, BLKS_PER_BUF);
-
-	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = NULL;
-
-		if (blocknr + i < devsize) {
-			page = read_mapping_page(mapping, blocknr + i, NULL);
-			/* synchronous error? */
-			if (IS_ERR(page))
-				page = NULL;
-		}
-		pages[i] = page;
-	}
+	bdev_sync_readahead(sb->s_bdev, NULL, NULL, blocknr, BLKS_PER_BUF);
 
 	buffer = next_buffer;
 	next_buffer = NEXT_BUFFER(buffer);
 	buffer_blocknr[buffer] = blocknr;
 	buffer_dev[buffer] = sb;
-
 	data = read_buffers[buffer];
+
 	for (i = 0; i < BLKS_PER_BUF; i++) {
-		struct page *page = pages[i];
+		struct folio *folio = NULL;
+
+		if (blocknr + i < devsize)
+			folio = bdev_read_folio(sb->s_bdev,
+						(blocknr + i) << PAGE_SHIFT);
 
-		if (page) {
-			memcpy_from_page(data, page, 0, PAGE_SIZE);
-			put_page(page);
-		} else
+		if (IS_ERR_OR_NULL(folio)) {
 			memset(data, 0, PAGE_SIZE);
+		} else {
+			memcpy_from_folio(data, folio, 0, PAGE_SIZE);
+			folio_put(folio);
+		}
 		data += PAGE_SIZE;
 	}
+
 	return read_buffers[buffer] + offset;
 }
 
-- 
2.39.2


  parent reply	other threads:[~2023-12-21  8:59 UTC|newest]

Thread overview: 110+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-21  8:56 [PATCH RFC v3 for-6.8/block 00/17] block: don't access bd_inode directly from other modules Yu Kuai
2023-12-21  8:56 ` Yu Kuai
2023-12-21  8:56 ` Yu Kuai
2023-12-21  8:56 ` [PATCH RFC v3 for-6.8/block 01/17] block: add some bdev apis Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-24 20:20   ` kernel test robot
2023-12-21  8:56 ` [PATCH RFC v3 for-6.8/block 02/17] xen/blkback: use bdev api in xen_update_blkif_status() Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2024-01-04 11:06   ` Jan Kara
2024-01-04 11:06     ` Jan Kara
2024-01-04 11:06     ` Jan Kara
2024-01-04 12:19     ` Yu Kuai
2024-01-04 12:19       ` Yu Kuai
2024-01-04 12:19       ` Yu Kuai
2024-01-04 15:16       ` Jan Kara
2024-01-04 15:16         ` Jan Kara
2024-01-04 15:16         ` Jan Kara
2024-01-05  6:08     ` Christoph Hellwig
2024-01-05  6:08       ` Christoph Hellwig
2024-01-05  6:08       ` Christoph Hellwig
2023-12-21  8:56 ` [PATCH RFC v3 for-6.8/block 03/17] bcache: use bdev api in read_super() Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-21  8:56 ` [PATCH RFC v3 for-6.8/block 04/17] mtd: block2mtd: use bdev apis Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2023-12-21  8:56   ` Yu Kuai
2024-01-04 11:28   ` Jan Kara
2024-01-04 11:28     ` Jan Kara
2024-01-04 11:28     ` Jan Kara
2024-01-04 12:22     ` Yu Kuai
2024-01-04 12:22       ` Yu Kuai
2024-01-04 12:22       ` Yu Kuai
2024-01-05  6:10     ` Christoph Hellwig
2024-01-05  6:10       ` Christoph Hellwig
2024-01-05  6:10       ` Christoph Hellwig
2024-01-05 10:31       ` Yu Kuai
2024-01-05 10:31         ` Yu Kuai
2024-01-05 10:31         ` Yu Kuai
2023-12-21  8:57 ` [PATCH RFC v3 for-6.8/block 05/17] s390/dasd: use bdev api in dasd_format() Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57 ` [PATCH RFC v3 for-6.8/block 06/17] scsicam: use bdev api in scsi_bios_ptable() Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57 ` [PATCH RFC v3 for-6.8/block 07/17] bcachefs: remove dead function bdev_sectors() Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2024-04-11 17:49   ` Kent Overstreet
2024-04-11 17:49     ` Kent Overstreet
2023-12-21  8:57 ` [PATCH RFC v3 for-6.8/block 08/17] bio: export bio_add_folio_nofail() Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57 ` [PATCH RFC v3 for-6.8/block 09/17] btrfs: use bdev apis Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-23 17:31   ` Matthew Wilcox
2023-12-23 17:31     ` Matthew Wilcox
2023-12-23 17:31     ` Matthew Wilcox
2023-12-23 18:39     ` Kent Overstreet
2023-12-23 18:39       ` Kent Overstreet
2023-12-23 18:39       ` Kent Overstreet
2024-01-04 11:49     ` Jan Kara
2024-01-04 11:49       ` Jan Kara
2024-01-04 11:49       ` Jan Kara
2024-04-10 17:28       ` David Sterba
2024-04-10 17:28         ` David Sterba
2023-12-21  8:57 ` Yu Kuai [this message]
2023-12-21  8:57   ` [PATCH RFC v3 for-6.8/block 10/17] cramfs: use bdev apis in cramfs_blkdev_read() Yu Kuai
2023-12-21  8:57   ` Yu Kuai
2023-12-21  8:58 ` [PATCH RFC v3 for-6.8/block 11/17] erofs: use bdev api Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2024-01-04 12:02   ` Jan Kara
2024-01-04 12:02     ` Jan Kara
2024-01-04 12:02     ` Jan Kara
2024-01-04 12:32     ` Yu Kuai
2024-01-04 12:32       ` Yu Kuai
2024-01-04 12:32       ` Yu Kuai
2024-01-05  4:43       ` Gao Xiang
2024-01-05  4:43         ` Gao Xiang
2024-01-05  4:43         ` Gao Xiang
2023-12-21  8:58 ` [PATCH RFC v3 for-6.8/block 12/17] nilfs2: use bdev api in nilfs_attach_log_writer() Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21 14:54   ` Ryusuke Konishi
2023-12-21 14:54     ` Ryusuke Konishi
2023-12-21 14:54     ` Ryusuke Konishi
2023-12-21  8:58 ` [PATCH RFC v3 for-6.8/block 13/17] jbd2: use bdev apis Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2024-01-04 12:11   ` Jan Kara
2024-01-04 12:11     ` Jan Kara
2024-01-04 12:11     ` Jan Kara
2023-12-21  8:58 ` [PATCH RFC v3 for-6.8/block 14/17] buffer: add a new helper to read sb block Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2024-01-04 12:22   ` Jan Kara
2024-01-04 12:22     ` Jan Kara
2024-01-04 12:22     ` Jan Kara
2023-12-21  8:58 ` [PATCH RFC v3 for-6.8/block 15/17] ext4: use " Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:58   ` Yu Kuai
2023-12-21  8:59 ` [PATCH RFC v3 for-6.8/block 16/17] ext4: remove block_device_ejected() Yu Kuai
2023-12-21  8:59   ` Yu Kuai
2023-12-21  8:59   ` Yu Kuai
2023-12-21  8:59 ` [PATCH RFC v3 for-6.8/block 17/17] ext4: use bdev apis Yu Kuai
2023-12-21  8:59   ` Yu Kuai
2023-12-21  8:59   ` Yu Kuai

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=20231221085712.1766333-11-yukuai1@huaweicloud.com \
    --to=yukuai1@huaweicloud.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=agordeev@linux.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=brauner@kernel.org \
    --cc=chao@kernel.org \
    --cc=clm@fb.com \
    --cc=colyli@suse.de \
    --cc=dsterba@suse.com \
    --cc=gor@linux.ibm.com \
    --cc=hare@suse.de \
    --cc=hca@linux.ibm.com \
    --cc=hoeppner@linux.ibm.com \
    --cc=jack@suse.com \
    --cc=jejb@linux.ibm.com \
    --cc=joern@lazybastard.org \
    --cc=josef@toxicpanda.com \
    --cc=kent.overstreet@gmail.com \
    --cc=konishi.ryusuke@gmail.com \
    --cc=linux-bcache@vger.kernel.org \
    --cc=linux-bcachefs@vger.kernel.org \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-erofs@lists.ozlabs.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-nilfs@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=miquel.raynal@bootlin.com \
    --cc=nico@fluxnic.net \
    --cc=p.raghav@samsung.com \
    --cc=richard@nod.at \
    --cc=roger.pau@citrix.com \
    --cc=sth@linux.ibm.com \
    --cc=tytso@mit.edu \
    --cc=vigneshr@ti.com \
    --cc=viro@zeniv.linux.org.uk \
    --cc=willy@infradead.org \
    --cc=xen-devel@lists.xenproject.org \
    --cc=xiang@kernel.org \
    --cc=yangerkun@huawei.com \
    --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.