| #
89eebc9b |
| 13-Aug-2026 |
Viacheslav Dubeyko <slava@dubeyko.com> |
nilfs2: add iomap operations for direct I/O
The patch adds iomap.h with declaration of iomaps operations and iomap.c with implementation of nilfs_iomap_begin(). This method is based on calling the n
nilfs2: add iomap operations for direct I/O
The patch adds iomap.h with declaration of iomaps operations and iomap.c with implementation of nilfs_iomap_begin(). This method is based on calling the nilfs_bmap_lookup_contig() method. It resolves the file's block-mapping to find the sequence of physically-contiguous blocks starting at starting block. Offsets at or beyond i_size are reported as a hole. For offsets within i_size, the requested length is first clamped to the block-aligned end of the file. Both the hole and mapped cases then report iomap->offset aligned to the containing block (blkoff << i_blkbits) rather than the raw request offset.
Co-developed-by: Linmao Li <lilinmao@kylinos.cn> Signed-off-by: Linmao Li <lilinmao@kylinos.cn> cc: Christoph Hellwig <hch@lst.de> cc: Ryusuke Konishi <konishi.ryusuke@gmail.com> cc: linux-nilfs@vger.kernel.org cc: linux-fsdevel@vger.kernel.org Acked-by: Ryusuke Konishi <konishi.ryusuke@gmail.com> Signed-off-by: Viacheslav Dubeyko <slava@dubeyko.com>
show more ...
|