freebsd-nq/sys/fs/ext2fs
Konstantin Belousov 1c4ca77890 Add d_off support for multiple filesystems.
The d_off field has been added to the dirent structure recently.
Currently filesystems don't support this feature.  Support has been
added and tested for zfs, ufs, ext2fs, fdescfs, msdosfs and unionfs.
A stub implementation is available for cd9660, nandfs, udf and
pseudofs but hasn't been tested.

Motivation for this feature: our usecase is for a userspace nfs server
(nfs-ganesha) with zfs.  At the moment we cache direntry offsets by
calling lseek once per entry, with this patch we can get the offset
directly from getdirentries(2) calls which provides a significant
speedup.

Submitted by:	Jack Halford <jack@gandi.net>
Reviewed by:	mckusick, pfg, rmacklem (previous versions)
Sponsored by:	Gandi.net
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D17917
2018-11-14 14:18:35 +00:00
..
ext2_acl.c SPDX: Complete license IDs for ext2fs. 2017-12-02 17:22:55 +00:00
ext2_acl.h SPDX: Complete license IDs for ext2fs. 2017-12-02 17:22:55 +00:00
ext2_alloc.c Change unused inodes counters behavior in the cylinder groups. 2018-08-21 18:39:29 +00:00
ext2_balloc.c Add 64bit feature support. 2018-01-05 10:04:01 +00:00
ext2_bmap.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_csum.c Fix directory blocks checksum updating logic. 2018-08-21 18:39:02 +00:00
ext2_dinode.h Revert r313780 (UFS_ prefix) 2018-03-17 12:59:55 +00:00
ext2_dir.h Split the dir_index and dir_nlink features. 2018-08-08 12:08:46 +00:00
ext2_extattr.c Add metadata_csum feature support. 2018-01-14 20:46:39 +00:00
ext2_extattr.h Add metadata_csum feature support. 2018-01-14 20:46:39 +00:00
ext2_extents.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_extents.h Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_extern.h Fix directory blocks checksum updating logic. 2018-08-21 18:39:02 +00:00
ext2_hash.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_htree.c Fix directory blocks checksum updating logic. 2018-08-08 12:07:45 +00:00
ext2_inode_cnv.c Fix directory blocks checksumming. 2018-05-13 19:48:30 +00:00
ext2_inode.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_lookup.c Add d_off support for multiple filesystems. 2018-11-14 14:18:35 +00:00
ext2_mount.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
ext2_subr.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_vfsops.c Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
ext2_vnops.c Make vop_symlink take a const target path. 2018-11-02 14:42:36 +00:00
ext2fs.h ext2fs: remove EXT4F_RO_INCOMPAT_SUPP 2018-02-05 15:14:01 +00:00
fs.h Fix EXT2FS_DEBUG definition usage. 2018-05-13 19:19:10 +00:00
htree.h Add metadata_csum feature support. 2018-01-14 20:46:39 +00:00
inode.h Revert r313780 (UFS_ prefix) 2018-03-17 12:59:55 +00:00