[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230915095042.1320180-1-da.gomez@samsung.com>
Date: Fri, 15 Sep 2023 09:51:21 +0000
From: Daniel Gomez <da.gomez@...sung.com>
To: "minchan@...nel.org" <minchan@...nel.org>,
"senozhatsky@...omium.org" <senozhatsky@...omium.org>,
"axboe@...nel.dk" <axboe@...nel.dk>,
"djwong@...nel.org" <djwong@...nel.org>,
"willy@...radead.org" <willy@...radead.org>,
"hughd@...gle.com" <hughd@...gle.com>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
"mcgrof@...nel.org" <mcgrof@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-block@...r.kernel.org" <linux-block@...r.kernel.org>,
"linux-xfs@...r.kernel.org" <linux-xfs@...r.kernel.org>,
"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>
CC: "gost.dev@...sung.com" <gost.dev@...sung.com>,
Pankaj Raghav <p.raghav@...sung.com>,
Daniel Gomez <da.gomez@...sung.com>
Subject: [PATCH 0/6] shmem: high order folios support in write path
This series add support for high order folios in shmem write
path.
This is a continuation of the shmem work from Luis here [1]
following Matthew Wilcox's suggestion [2] regarding the path to take
for the folio allocation order calculation.
[1] RFC v2 add support for blocksize > PAGE_SIZE
https://lore.kernel.org/all/ZHBowMEDfyrAAOWH@bombadil.infradead.org/T/#md3e93ab46ce2ad9254e1eb54ffe71211988b5632
[2] https://lore.kernel.org/all/ZHD9zmIeNXICDaRJ@casper.infradead.org/
Patches have been tested and sent from next-230911. They do apply
cleanly to the latest next-230914.
fsx and fstests has been performed on tmpfs with noswap with the
following results:
- fsx: 2d test, 21,5B
- fstests: Same result as baseline for next-230911 [3][4][5]
[3] Baseline next-230911 failures are: generic/080 generic/126
generic/193 generic/633 generic/689
[4] fstests logs baseline: https://gitlab.com/-/snippets/3598621
[5] fstests logs patches: https://gitlab.com/-/snippets/3598628
There are at least 2 cases/topics to handle that I'd appreciate
feedback.
1. With the new strategy, you might end up with a folio order matching
HPAGE_PMD_ORDER. However, we won't respect the 'huge' flag anymore if
THP is enabled.
2. When the above (1.) occurs, the code skips the huge path, so
xa_find with hindex is skipped.
Daniel
Daniel Gomez (5):
filemap: make the folio order calculation shareable
shmem: drop BLOCKS_PER_PAGE macro
shmem: add order parameter support to shmem_alloc_folio
shmem: add file length in shmem_get_folio path
shmem: add large folios support to the write path
Luis Chamberlain (1):
shmem: account for large order folios
fs/iomap/buffered-io.c | 6 ++-
include/linux/pagemap.h | 42 ++++++++++++++++---
include/linux/shmem_fs.h | 2 +-
mm/filemap.c | 8 ----
mm/khugepaged.c | 2 +-
mm/shmem.c | 91 +++++++++++++++++++++++++---------------
6 files changed, 100 insertions(+), 51 deletions(-)
--
2.39.2
Powered by blists - more mailing lists