diff options
author | pfg <pfg@FreeBSD.org> | 2016-01-18 15:39:32 +0000 |
---|---|---|
committer | pfg <pfg@FreeBSD.org> | 2016-01-18 15:39:32 +0000 |
commit | e7a4f4fac24004ba950e92768c3874725616b678 (patch) | |
tree | 1d065d37db62d43c6e0ae1b4d9d20f38c21f8469 /sys/fs/ext2fs/ext2_extents.h | |
parent | 51120efe0753c7fb11ce9dab662dd9542cd41813 (diff) | |
download | FreeBSD-src-e7a4f4fac24004ba950e92768c3874725616b678.zip FreeBSD-src-e7a4f4fac24004ba950e92768c3874725616b678.tar.gz |
MFC r293680
ext4: add support for reading sparse files
Add support for sparse files in ext4. Also implement read-ahead, which
greatly increases the performance when transferring files from ext4.
The sparse file support has become very common in ext4.
Both features implemented by Damjan Jovanovic.
PR: 205816
Diffstat (limited to 'sys/fs/ext2fs/ext2_extents.h')
-rw-r--r-- | sys/fs/ext2fs/ext2_extents.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/fs/ext2fs/ext2_extents.h b/sys/fs/ext2fs/ext2_extents.h index 94ded83..4ce16f3 100644 --- a/sys/fs/ext2fs/ext2_extents.h +++ b/sys/fs/ext2fs/ext2_extents.h @@ -84,7 +84,11 @@ struct ext4_extent_cache { struct ext4_extent_path { uint16_t ep_depth; struct buf *ep_bp; - struct ext4_extent *ep_ext; + int ep_is_sparse; + union { + struct ext4_extent ep_sparse_ext; + struct ext4_extent *ep_ext; + }; struct ext4_extent_index *ep_index; struct ext4_extent_header *ep_header; }; |