mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 16:44:58 +02:00
fscrypt: pass a byte offset to fscrypt_zeroout_range_inline_crypt
Logical offsets into an inode are usually expressed as bytes in the VFS. Switch fscrypt_zeroout_range_inline_crypt to that convention. Signed-off-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/r/20260302141922.370070-10-hch@lst.de Signed-off-by: Eric Biggers <ebiggers@kernel.org>
This commit is contained in:
parent
3c7eaa775d
commit
090c5c1597
|
|
@ -70,12 +70,11 @@ static void fscrypt_zeroout_range_end_io(struct bio *bio)
|
|||
}
|
||||
|
||||
static int fscrypt_zeroout_range_inline_crypt(const struct inode *inode,
|
||||
pgoff_t lblk, sector_t sector,
|
||||
loff_t pos, sector_t sector,
|
||||
unsigned int len)
|
||||
{
|
||||
const unsigned int blockbits = inode->i_blkbits;
|
||||
const unsigned int blocks_per_page = 1 << (PAGE_SHIFT - blockbits);
|
||||
loff_t pos = (loff_t)lblk << blockbits;
|
||||
struct fscrypt_zero_done done = {
|
||||
.pending = ATOMIC_INIT(1),
|
||||
.done = COMPLETION_INITIALIZER_ONSTACK(done.done),
|
||||
|
|
@ -142,6 +141,7 @@ int fscrypt_zeroout_range(const struct inode *inode, pgoff_t lblk,
|
|||
const unsigned int du_per_page = 1U << du_per_page_bits;
|
||||
u64 du_index = (u64)lblk << (inode->i_blkbits - du_bits);
|
||||
u64 du_remaining = (u64)len << (inode->i_blkbits - du_bits);
|
||||
loff_t pos = (loff_t)lblk << inode->i_blkbits;
|
||||
sector_t sector = pblk << (inode->i_blkbits - SECTOR_SHIFT);
|
||||
struct page *pages[16]; /* write up to 16 pages at a time */
|
||||
unsigned int nr_pages;
|
||||
|
|
@ -154,7 +154,7 @@ int fscrypt_zeroout_range(const struct inode *inode, pgoff_t lblk,
|
|||
return 0;
|
||||
|
||||
if (fscrypt_inode_uses_inline_crypto(inode))
|
||||
return fscrypt_zeroout_range_inline_crypt(inode, lblk, sector,
|
||||
return fscrypt_zeroout_range_inline_crypt(inode, pos, sector,
|
||||
len);
|
||||
|
||||
BUILD_BUG_ON(ARRAY_SIZE(pages) > BIO_MAX_VECS);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user