From: Yury Norov <ynorov@nvidia•com>
To: Andrew Morton <akpm@linux-foundation•org>,
"David S. Miller" <davem@davemloft•net>,
"Michael S. Tsirkin" <mst@redhat•com>,
"Theodore Ts'o" <tytso@mit•edu>,
Albert Ou <aou@eecs•berkeley.edu>,
Alexander Duyck <alexanderduyck@fb•com>,
Alexander Gordeev <agordeev@linux•ibm.com>,
Alexander Viro <viro@zeniv•linux.org.uk>,
Alexandra Winter <wintera@linux•ibm.com>,
Andreas Dilger <adilger.kernel@dilger•ca>,
Andrew Lunn <andrew+netdev@lunn•ch>,
Anna Schumaker <anna@kernel•org>,
Anton Yakovlev <anton.yakovlev@opensynergy•com>,
Arnaldo Carvalho de Melo <acme@kernel•org>,
Aswin Karuvally <aswin@linux•ibm.com>,
Borislav Petkov <bp@alien8•de>, Carlos Maiolino <cem@kernel•org>,
Catalin Marinas <catalin.marinas@arm•com>,
Chao Yu <chao@kernel•org>,
Christian Borntraeger <borntraeger@linux•ibm.com>,
Christian Brauner <brauner@kernel•org>,
Claudio Imbrenda <imbrenda@linux•ibm.com>,
Dave Hansen <dave.hansen@linux•intel.com>,
David Airlie <airlied@gmail•com>,
Dominique Martinet <asmadeus@codewreck•org>,
Dongsheng Yang <dongsheng.yang@linux•dev>,
Eric Dumazet <edumazet@google•com>,
Eric Van Hensbergen <ericvh@kernel•org>,
Heiko Carstens <hca@linux•ibm.com>,
Herbert Xu <herbert@gondor•apana.org.au>,
Ingo Molnar <mingo@redhat•com>, Jaegeuk Kim <jaegeuk@kernel•org>,
Jakub Kicinski <kuba@kernel•org>,
Jani Nikula <jani.nikula@linux•intel.com>,
Janosch Frank <frankja@linux•ibm.com>,
Jaroslav Kysela <perex@perex•cz>, Jens Axboe <axboe@kernel•dk>,
Joonas Lahtinen <joonas.lahtinen@linux•intel.com>,
Latchesar Ionkov <lucho@ionkov•net>,
Linus Walleij <linusw@kernel•org>,
Madhavan Srinivasan <maddy@linux•ibm.com>,
Mark Brown <broonie@kernel•org>,
Michael Ellerman <mpe@ellerman•id.au>,
Miklos Szeredi <miklos@szeredi•hu>,
Namhyung Kim <namhyung@kernel•org>,
Palmer Dabbelt <palmer@dabbelt•com>,
Paolo Abeni <pabeni@redhat•com>,
Paolo Bonzini <pbonzini@redhat•com>,
Paul Walmsley <pjw@kernel•org>,
Peter Zijlstra <peterz@infradead•org>,
Rodrigo Vivi <rodrigo.vivi@intel•com>,
Sean Christopherson <seanjc@google•com>,
Simona Vetter <simona@ffwll•ch>, Takashi Iwai <tiwai@suse•com>,
Thomas Gleixner <tglx@kernel•org>,
Trond Myklebust <trondmy@kernel•org>,
Tvrtko Ursulin <tursulin@ursulin•net>,
Vasily Gorbik <gor@linux•ibm.com>, Will Deacon <will@kernel•org>,
Yury Norov <yury.norov@gmail•com>, Zheng Gu <cengku@gmail•com>
Cc: Yury Norov <ynorov@nvidia•com>,
linux-kernel@vger•kernel.org, x86@kernel•org,
linux-arm-kernel@lists•infradead.org,
linuxppc-dev@lists•ozlabs.org, linux-riscv@lists•infradead.org,
kvm@vger•kernel.org, linux-s390@vger•kernel.org,
linux-block@vger•kernel.org, intel-gfx@lists•freedesktop.org,
dri-devel@lists•freedesktop.org, dm-devel@lists•linux.dev,
netdev@vger•kernel.org, linux-spi@vger•kernel.org,
linux-ext4@vger•kernel.org,
linux-f2fs-devel@lists•sourceforge.net,
linux-fsdevel@vger•kernel.org, linux-xfs@vger•kernel.org,
linux-nfs@vger•kernel.org, linux-crypto@vger•kernel.org,
linux-mm@kvack•org, linux-perf-users@vger•kernel.org,
v9fs@lists•linux.dev, virtualization@lists•linux.dev,
linux-sound@vger•kernel.org
Subject: [PATCH 2/8] fs: use rest_of_page() macro where appropriate
Date: Tue, 3 Mar 2026 20:27:10 -0500 [thread overview]
Message-ID: <20260304012717.201797-3-ynorov@nvidia.com> (raw)
In-Reply-To: <20260304012717.201797-1-ynorov@nvidia.com>
Switch filesystem codebase to using the macro. No functional changes
intended.
Signed-off-by: Yury Norov <ynorov@nvidia•com>
---
fs/ext4/verity.c | 3 +--
fs/f2fs/verity.c | 6 ++----
fs/fuse/dev.c | 4 ++--
fs/iomap/buffered-io.c | 2 +-
fs/nfs/pagelist.c | 2 +-
fs/remap_range.c | 3 +--
fs/xfs/scrub/xfile.c | 3 +--
7 files changed, 9 insertions(+), 14 deletions(-)
diff --git a/fs/ext4/verity.c b/fs/ext4/verity.c
index ca61da53f313..3dc95581e4b1 100644
--- a/fs/ext4/verity.c
+++ b/fs/ext4/verity.c
@@ -74,8 +74,7 @@ static int pagecache_write(struct inode *inode, const void *buf, size_t count,
return -EFBIG;
while (count) {
- size_t n = min_t(size_t, count,
- PAGE_SIZE - offset_in_page(pos));
+ size_t n = min_t(size_t, count, rest_of_page(pos));
struct folio *folio;
void *fsdata = NULL;
int res;
diff --git a/fs/f2fs/verity.c b/fs/f2fs/verity.c
index 92ebcc19cab0..1c3403fbf2a8 100644
--- a/fs/f2fs/verity.c
+++ b/fs/f2fs/verity.c
@@ -44,8 +44,7 @@ static int pagecache_read(struct inode *inode, void *buf, size_t count,
loff_t pos)
{
while (count) {
- size_t n = min_t(size_t, count,
- PAGE_SIZE - offset_in_page(pos));
+ size_t n = min_t(size_t, count, rest_of_page(pos));
struct page *page;
page = read_mapping_page(inode->i_mapping, pos >> PAGE_SHIFT,
@@ -78,8 +77,7 @@ static int pagecache_write(struct inode *inode, const void *buf, size_t count,
return -EFBIG;
while (count) {
- size_t n = min_t(size_t, count,
- PAGE_SIZE - offset_in_page(pos));
+ size_t n = min_t(size_t, count, rest_of_page(pos));
struct folio *folio;
void *fsdata = NULL;
int res;
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
index 0b0241f47170..efd7e6ca929e 100644
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
@@ -1157,8 +1157,8 @@ static int fuse_copy_folio(struct fuse_copy_state *cs, struct folio **foliop,
unsigned int copy = count;
unsigned int bytes_copied;
- if (folio_test_highmem(folio) && count > PAGE_SIZE - offset_in_page(offset))
- copy = PAGE_SIZE - offset_in_page(offset);
+ if (folio_test_highmem(folio) && count > rest_of_page(offset))
+ copy = rest_of_page(offset);
bytes_copied = fuse_copy_do(cs, &buf, ©);
kunmap_local(mapaddr);
diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c
index bc82083e420a..99e56ee6c3d6 100644
--- a/fs/iomap/buffered-io.c
+++ b/fs/iomap/buffered-io.c
@@ -852,7 +852,7 @@ static struct folio *__iomap_get_folio(struct iomap_iter *iter,
loff_t pos = iter->pos;
if (!mapping_large_folio_support(iter->inode->i_mapping))
- len = min_t(size_t, len, PAGE_SIZE - offset_in_page(pos));
+ len = min_t(size_t, len, rest_of_page(pos));
if (iter->iomap.flags & IOMAP_F_FOLIO_BATCH) {
struct folio *folio = folio_batch_next(iter->fbatch);
diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c
index a9373de891c9..221a90f57812 100644
--- a/fs/nfs/pagelist.c
+++ b/fs/nfs/pagelist.c
@@ -60,7 +60,7 @@ static struct page *nfs_page_iter_page_get(struct nfs_page_iter_page *i)
if (i->count != req->wb_bytes) {
size_t base = i->count + req->wb_pgbase;
- size_t len = PAGE_SIZE - offset_in_page(base);
+ size_t len = rest_of_page(base);
page = nfs_page_to_page(req, base);
nfs_page_iter_page_advance(i, len);
diff --git a/fs/remap_range.c b/fs/remap_range.c
index 26afbbbfb10c..83f325e7f96b 100644
--- a/fs/remap_range.c
+++ b/fs/remap_range.c
@@ -199,8 +199,7 @@ static int vfs_dedupe_file_range_compare(struct file *src, loff_t srcoff,
while (len) {
struct folio *src_folio, *dst_folio;
void *src_addr, *dst_addr;
- loff_t cmp_len = min(PAGE_SIZE - offset_in_page(srcoff),
- PAGE_SIZE - offset_in_page(dstoff));
+ loff_t cmp_len = min(rest_of_page(srcoff), rest_of_page(dstoff));
cmp_len = min(cmp_len, len);
if (cmp_len <= 0)
diff --git a/fs/xfs/scrub/xfile.c b/fs/xfs/scrub/xfile.c
index 05581571854d..95707407aa6b 100644
--- a/fs/xfs/scrub/xfile.c
+++ b/fs/xfs/scrub/xfile.c
@@ -135,8 +135,7 @@ xfile_load(
* No data stored at this offset, just zero the output
* buffer until the next page boundary.
*/
- len = min_t(ssize_t, count,
- PAGE_SIZE - offset_in_page(pos));
+ len = min_t(ssize_t, count, rest_of_page(pos));
memset(buf, 0, len);
} else {
if (filemap_check_wb_err(inode->i_mapping, 0)) {
--
2.43.0
next prev parent reply other threads:[~2026-03-04 1:27 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-04 1:27 [PATCH 0/8] mm: globalize rest_of_page() macro Yury Norov
2026-03-04 1:27 ` [PATCH 1/8] mm: add " Yury Norov
2026-03-04 1:27 ` Yury Norov [this message]
2026-03-04 1:27 ` [PATCH 3/8] net: use rest_of_page() macro where appropriate Yury Norov
2026-03-04 1:27 ` [PATCH 4/8] core: " Yury Norov
2026-03-04 1:27 ` [PATCH 5/8] spi: " Yury Norov
2026-03-04 11:10 ` Mark Brown
2026-03-04 1:27 ` [PATCH 6/8] KVM: " Yury Norov
2026-03-04 1:27 ` [PATCH 7/8] drivers: ALSA: " Yury Norov
2026-03-04 1:27 ` [PATCH 8/8] arch: " Yury Norov
2026-04-02 21:58 ` Paul Walmsley
2026-03-04 2:28 ` [PATCH 0/8] mm: globalize rest_of_page() macro Jakub Kicinski
2026-03-04 2:42 ` Jens Axboe
2026-03-04 2:49 ` Sean Christopherson
2026-03-04 3:32 ` Yury Norov
2026-03-04 3:35 ` Jens Axboe
2026-03-04 12:48 ` Peter Zijlstra
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=20260304012717.201797-3-ynorov@nvidia.com \
--to=ynorov@nvidia$(echo .)com \
--cc=acme@kernel$(echo .)org \
--cc=adilger.kernel@dilger$(echo .)ca \
--cc=agordeev@linux$(echo .)ibm.com \
--cc=airlied@gmail$(echo .)com \
--cc=akpm@linux-foundation$(echo .)org \
--cc=alexanderduyck@fb$(echo .)com \
--cc=andrew+netdev@lunn$(echo .)ch \
--cc=anna@kernel$(echo .)org \
--cc=anton.yakovlev@opensynergy$(echo .)com \
--cc=aou@eecs$(echo .)berkeley.edu \
--cc=asmadeus@codewreck$(echo .)org \
--cc=aswin@linux$(echo .)ibm.com \
--cc=axboe@kernel$(echo .)dk \
--cc=borntraeger@linux$(echo .)ibm.com \
--cc=bp@alien8$(echo .)de \
--cc=brauner@kernel$(echo .)org \
--cc=broonie@kernel$(echo .)org \
--cc=catalin.marinas@arm$(echo .)com \
--cc=cem@kernel$(echo .)org \
--cc=cengku@gmail$(echo .)com \
--cc=chao@kernel$(echo .)org \
--cc=dave.hansen@linux$(echo .)intel.com \
--cc=davem@davemloft$(echo .)net \
--cc=dm-devel@lists$(echo .)linux.dev \
--cc=dongsheng.yang@linux$(echo .)dev \
--cc=dri-devel@lists$(echo .)freedesktop.org \
--cc=edumazet@google$(echo .)com \
--cc=ericvh@kernel$(echo .)org \
--cc=frankja@linux$(echo .)ibm.com \
--cc=gor@linux$(echo .)ibm.com \
--cc=hca@linux$(echo .)ibm.com \
--cc=herbert@gondor$(echo .)apana.org.au \
--cc=imbrenda@linux$(echo .)ibm.com \
--cc=intel-gfx@lists$(echo .)freedesktop.org \
--cc=jaegeuk@kernel$(echo .)org \
--cc=jani.nikula@linux$(echo .)intel.com \
--cc=joonas.lahtinen@linux$(echo .)intel.com \
--cc=kuba@kernel$(echo .)org \
--cc=kvm@vger$(echo .)kernel.org \
--cc=linusw@kernel$(echo .)org \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
--cc=linux-block@vger$(echo .)kernel.org \
--cc=linux-crypto@vger$(echo .)kernel.org \
--cc=linux-ext4@vger$(echo .)kernel.org \
--cc=linux-f2fs-devel@lists$(echo .)sourceforge.net \
--cc=linux-fsdevel@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-mm@kvack$(echo .)org \
--cc=linux-nfs@vger$(echo .)kernel.org \
--cc=linux-perf-users@vger$(echo .)kernel.org \
--cc=linux-riscv@lists$(echo .)infradead.org \
--cc=linux-s390@vger$(echo .)kernel.org \
--cc=linux-sound@vger$(echo .)kernel.org \
--cc=linux-spi@vger$(echo .)kernel.org \
--cc=linux-xfs@vger$(echo .)kernel.org \
--cc=linuxppc-dev@lists$(echo .)ozlabs.org \
--cc=lucho@ionkov$(echo .)net \
--cc=maddy@linux$(echo .)ibm.com \
--cc=miklos@szeredi$(echo .)hu \
--cc=mingo@redhat$(echo .)com \
--cc=mpe@ellerman$(echo .)id.au \
--cc=mst@redhat$(echo .)com \
--cc=namhyung@kernel$(echo .)org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=pabeni@redhat$(echo .)com \
--cc=palmer@dabbelt$(echo .)com \
--cc=pbonzini@redhat$(echo .)com \
--cc=perex@perex$(echo .)cz \
--cc=peterz@infradead$(echo .)org \
--cc=pjw@kernel$(echo .)org \
--cc=rodrigo.vivi@intel$(echo .)com \
--cc=seanjc@google$(echo .)com \
--cc=simona@ffwll$(echo .)ch \
--cc=tglx@kernel$(echo .)org \
--cc=tiwai@suse$(echo .)com \
--cc=trondmy@kernel$(echo .)org \
--cc=tursulin@ursulin$(echo .)net \
--cc=tytso@mit$(echo .)edu \
--cc=v9fs@lists$(echo .)linux.dev \
--cc=viro@zeniv$(echo .)linux.org.uk \
--cc=virtualization@lists$(echo .)linux.dev \
--cc=will@kernel$(echo .)org \
--cc=wintera@linux$(echo .)ibm.com \
--cc=x86@kernel$(echo .)org \
--cc=yury.norov@gmail$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox