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
WARNING: multiple messages have this Message-ID (diff)
From: Yury Norov via Linux-f2fs-devel <linux-f2fs-devel@lists.sourceforge.net>
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: kvm@vger.kernel.org, dri-devel@lists.freedesktop.org,
linux-mm@kvack.org, linux-riscv@lists.infradead.org,
linux-spi@vger.kernel.org, linux-s390@vger.kernel.org,
x86@kernel.org, Yury Norov <ynorov@nvidia.com>,
linux-ext4@vger.kernel.org, dm-devel@lists.linux.dev,
intel-gfx@lists.freedesktop.org, virtualization@lists.linux.dev,
linux-sound@vger.kernel.org, linux-block@vger.kernel.org,
linux-xfs@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-nfs@vger.kernel.org, netdev@vger.kernel.org,
v9fs@lists.linux.dev, linux-kernel@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
linux-perf-users@vger.kernel.org, linux-crypto@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: [f2fs-dev] [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
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
WARNING: multiple messages have this Message-ID (diff)
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
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2026-03-04 1:27 UTC|newest]
Thread overview: 52+ 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 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 1/8] mm: add " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` Yury Norov [this message]
2026-03-04 1:27 ` [PATCH 2/8] fs: use rest_of_page() macro where appropriate Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 3/8] net: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 4/8] core: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 5/8] spi: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 11:10 ` Mark Brown
2026-03-04 11:10 ` Mark Brown
2026-03-04 1:27 ` [PATCH 6/8] KVM: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 7/8] drivers: ALSA: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 1:27 ` [PATCH 8/8] arch: " Yury Norov
2026-03-04 1:27 ` Yury Norov
2026-03-04 1:27 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-04-02 21:58 ` Paul Walmsley
2026-04-02 21:58 ` Paul Walmsley
2026-04-02 21:58 ` [f2fs-dev] " Paul Walmsley via Linux-f2fs-devel
2026-03-04 2:21 ` ✓ i915.CI.BAT: success for mm: globalize rest_of_page() macro Patchwork
2026-03-04 2:28 ` [PATCH 0/8] " Jakub Kicinski
2026-03-04 2:28 ` Jakub Kicinski
2026-03-04 2:28 ` [f2fs-dev] " Jakub Kicinski via Linux-f2fs-devel
2026-03-04 2:42 ` Jens Axboe
2026-03-04 2:42 ` Jens Axboe
2026-03-04 2:42 ` [f2fs-dev] " Jens Axboe
2026-03-04 2:49 ` Sean Christopherson
2026-03-04 2:49 ` Sean Christopherson
2026-03-04 2:49 ` [f2fs-dev] " Sean Christopherson via Linux-f2fs-devel
2026-03-04 3:32 ` Yury Norov
2026-03-04 3:32 ` Yury Norov
2026-03-04 3:32 ` [f2fs-dev] " Yury Norov via Linux-f2fs-devel
2026-03-04 3:35 ` Jens Axboe
2026-03-04 3:35 ` Jens Axboe
2026-03-04 3:35 ` [f2fs-dev] " Jens Axboe
2026-03-04 12:48 ` Peter Zijlstra
2026-03-04 12:48 ` Peter Zijlstra
2026-03-04 12:48 ` [f2fs-dev] " Peter Zijlstra
2026-03-05 4:19 ` ✓ i915.CI.Full: success for " Patchwork
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.com \
--cc=acme@kernel.org \
--cc=adilger.kernel@dilger.ca \
--cc=agordeev@linux.ibm.com \
--cc=airlied@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=alexanderduyck@fb.com \
--cc=andrew+netdev@lunn.ch \
--cc=anna@kernel.org \
--cc=anton.yakovlev@opensynergy.com \
--cc=aou@eecs.berkeley.edu \
--cc=asmadeus@codewreck.org \
--cc=aswin@linux.ibm.com \
--cc=axboe@kernel.dk \
--cc=borntraeger@linux.ibm.com \
--cc=bp@alien8.de \
--cc=brauner@kernel.org \
--cc=broonie@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=cem@kernel.org \
--cc=cengku@gmail.com \
--cc=chao@kernel.org \
--cc=dave.hansen@linux.intel.com \
--cc=davem@davemloft.net \
--cc=dm-devel@lists.linux.dev \
--cc=dongsheng.yang@linux.dev \
--cc=dri-devel@lists.freedesktop.org \
--cc=edumazet@google.com \
--cc=ericvh@kernel.org \
--cc=frankja@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=herbert@gondor.apana.org.au \
--cc=imbrenda@linux.ibm.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jaegeuk@kernel.org \
--cc=jani.nikula@linux.intel.com \
--cc=joonas.lahtinen@linux.intel.com \
--cc=kuba@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linusw@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lucho@ionkov.net \
--cc=maddy@linux.ibm.com \
--cc=miklos@szeredi.hu \
--cc=mingo@redhat.com \
--cc=mpe@ellerman.id.au \
--cc=mst@redhat.com \
--cc=namhyung@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=palmer@dabbelt.com \
--cc=pbonzini@redhat.com \
--cc=perex@perex.cz \
--cc=peterz@infradead.org \
--cc=pjw@kernel.org \
--cc=rodrigo.vivi@intel.com \
--cc=seanjc@google.com \
--cc=simona@ffwll.ch \
--cc=tglx@kernel.org \
--cc=tiwai@suse.com \
--cc=trondmy@kernel.org \
--cc=tursulin@ursulin.net \
--cc=tytso@mit.edu \
--cc=v9fs@lists.linux.dev \
--cc=viro@zeniv.linux.org.uk \
--cc=virtualization@lists.linux.dev \
--cc=will@kernel.org \
--cc=wintera@linux.ibm.com \
--cc=x86@kernel.org \
--cc=yury.norov@gmail.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.