diff options
| author | Matthew Wilcox (Oracle) <willy@infradead.org> | 2025-11-24 01:05:15 +0300 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-11-25 12:07:42 +0300 |
| commit | 37d369fa97cc0774ea4eab726d16bcb5fbe3a104 (patch) | |
| tree | 6b5548ec93f0b63d897e3fbcc7f6d3b1a418f54c /include/linux/shmem_fs.h | |
| parent | a77a59592febd4179efa6b59f2ef5bdfe9a5b895 (diff) | |
| download | linux-37d369fa97cc0774ea4eab726d16bcb5fbe3a104.tar.xz | |
fs: Add uoff_t
In a recent commit, I inadvertently changed a comparison from being an
unsigned comparison (on 64-bit systems) to being a signed comparison
(which it had always been on 32-bit systems). This led to a sporadic
fstests failure.
To make sure this comparison is always unsigned, introduce a new type,
uoff_t which is the unsigned version of loff_t. Generally file sizes
are restricted to being a signed integer, but in these two places it is
convenient to pass -1 to indicate "up to the end of the file".
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Link: https://patch.msgid.link/20251123220518.1447261-1-willy@infradead.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'include/linux/shmem_fs.h')
| -rw-r--r-- | include/linux/shmem_fs.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/shmem_fs.h b/include/linux/shmem_fs.h index 0e47465ef0fd..774efe592a9a 100644 --- a/include/linux/shmem_fs.h +++ b/include/linux/shmem_fs.h @@ -111,7 +111,7 @@ struct page *shmem_read_mapping_page_gfp(struct address_space *mapping, pgoff_t index, gfp_t gfp_mask); int shmem_writeout(struct folio *folio, struct swap_iocb **plug, struct list_head *folio_list); -void shmem_truncate_range(struct inode *inode, loff_t start, loff_t end); +void shmem_truncate_range(struct inode *inode, loff_t start, uoff_t end); int shmem_unuse(unsigned int type); #ifdef CONFIG_TRANSPARENT_HUGEPAGE |
