freebsd-skq/lib
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
..
atf DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
clang libllvm: Move SampleProfWriter to SRCS_MIN 2018-11-09 19:51:26 +00:00
csu Run __cxa_finalize in shared objects in the destructor path. 2018-11-13 15:28:27 +00:00
geom geli init with multiple providers - fix init and fix -B "none" 2018-09-10 14:50:34 +00:00
lib80211 Move regdomain.xml to lib/lib80211/ 2018-09-19 09:29:06 +00:00
libalias Move libalias.conf to lib/libalias/libalias/ 2018-09-18 20:54:37 +00:00
libarchive MFV r339640,339641,339644: 2018-10-25 21:44:17 +00:00
libauditd Disable -Wcast-align in libbsm and libauditd 2018-07-28 20:04:39 +00:00
libbe libbe(3): Set canmount properly when activating a new BE 2018-11-10 20:42:29 +00:00
libbegemot DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libblacklist DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libblocksruntime DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libbluetooth Move all bluetooth related config files out of etc 2018-08-21 19:28:53 +00:00
libbsdstat lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libbsm Disable -Wcast-align in libbsm and libauditd 2018-07-28 20:04:39 +00:00
libbsnmp Update bsnmp to version 1.13. This does not bring user-visible changes. 2018-07-03 08:44:40 +00:00
libbz2 DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libc Add d_off support for multiple filesystems. 2018-11-14 14:18:35 +00:00
libc_nonshared lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libc++ DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libc++experimental DIRDEPS_BUILD: Connect more libraries. 2017-07-11 00:32:48 +00:00
libcalendar lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libcam SPDX: Small for a license ID tags. 2017-12-27 21:36:37 +00:00
libcapsicum Fix a recusive call introduce in the r340130. 2018-11-04 18:52:59 +00:00
libcasper Fix typo in the comparison. 2018-11-12 18:37:31 +00:00
libclang_rt Install the 32-bit compat sanitizer libraries. 2018-08-03 18:52:51 +00:00
libcom_err DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libcompat ftime appeared in 7th Edition Unix to replace gtime. 2018-10-28 02:58:15 +00:00
libcompiler_rt The routines defined in comparedf2 and comparesf2 are defined in libc 2018-02-02 05:04:43 +00:00
libcrypt libcrypt: There is no need to clear message digest context after they 2018-07-20 07:16:28 +00:00
libcuse DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libcxxrt libcxxrt: Move mangled symbols out of extern "C++" in Version.map 2018-01-23 22:41:13 +00:00
libdevctl Forgot to bump .Dd in r338233 like I promised in the review. Doh! 2018-08-23 05:08:38 +00:00
libdevdctl zfsd: Allow zfsd to work on any type of GEOM provider 2018-02-14 23:52:39 +00:00
libdevinfo Update to device enumeration protocol 2 2018-05-31 02:58:03 +00:00
libdevstat lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libdl Add libdl to clibs package 2018-03-29 19:43:29 +00:00
libdpv Fix comparison between pointer and char literal 2018-06-16 20:00:41 +00:00
libdwarf DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libedit libedit: sort the Makefile in line with NetBSD's version. 2018-01-29 22:38:23 +00:00
libefivar Ensure that the device path is sane before trying to decode and print 2018-10-26 22:49:36 +00:00
libelf Add gelf_mips64el.c to the list of files to include in libelf. 2018-09-05 21:47:22 +00:00
libelftc Update ELF Tool Chain to r3614 2018-04-27 13:59:24 +00:00
libevent DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libexecinfo DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libexpat Update expat to 2.2.6 2018-11-04 16:08:59 +00:00
libfetch Make libfetch buildable. 2018-09-19 07:04:15 +00:00
libfigpar Bump copyright following recent changes 2018-03-14 20:55:28 +00:00
libgcc_eh In r308100, an explicit -fexceptions flag was added for the C sources 2018-08-10 19:57:55 +00:00
libgcc_s Fix build by escaping a line break. 2018-01-31 21:41:42 +00:00
libgeom lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libgpio DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libgssapi lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libiconv_modules libiconv: correct undefined behavior. 2018-07-08 23:22:04 +00:00
libifconfig Finish removing FDDI and tokenring media support. 2018-04-23 21:10:33 +00:00
libipsec Update pfkey_open() function to set socket's write buffer size to 2018-03-11 19:26:34 +00:00
libipt Add new shared library -- libipt. 2018-03-21 14:37:04 +00:00
libjail libjail: fix handling of allow.mount.fusefs in jailparam_init 2018-11-10 03:10:22 +00:00
libkiconv lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libkvm Make cache coherency attributes definitions available in machine/vm.h on MIPS. 2018-08-01 18:35:17 +00:00
libldns Add libssl to libldns for DANE. 2018-10-12 05:27:58 +00:00
liblzma MFV r333779: xz 5.2.4. 2018-05-18 06:10:16 +00:00
libmagic Don't use CCACHE for linking. 2018-06-27 19:29:15 +00:00
libmd r338270 had the side effect of no longer installing libmd.so into /lib. 2018-08-26 17:05:43 +00:00
libmemstat libmemstat: adjust for per-cpu stats after r338899 2018-10-11 23:25:14 +00:00
libmilter DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libmp Make libmp(3) buildable. 2018-09-19 07:05:31 +00:00
libmt Add the LTO-8 Type M density code (0x5d, LTO-8M) to libmt and the 2017-11-03 21:04:22 +00:00
libnandfs lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libnetbsd Make timespecadd(3) and friends public 2018-07-30 15:46:40 +00:00
libnetgraph s/NgSendMsgReply/NgSendReplyMsg/ in man to match the code. 2017-11-08 12:34:47 +00:00
libngatm DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libnv Ensure that libnv can be used when kern.trap_enotcap=1. 2018-11-13 20:07:55 +00:00
libopenbsd Fix a few more speelling errors 2017-12-28 01:31:28 +00:00
libopencsd Add new shared library -- libopencsd. 2018-04-04 14:31:56 +00:00
libopie Move opieaccess to lib/libopie/ 2018-09-20 09:26:10 +00:00
libpam Really fix pam install. Don't commit late at night or you make simple mistakes. 2018-09-13 16:14:33 +00:00
libpathconv Disconnect libpathconv tests since they require external perl and do not work with kyua. 2017-10-31 19:52:30 +00:00
libpcap Remove redundant header file from source list in libpcap. 2018-05-30 08:24:57 +00:00
libpe
libpjdlog Revert 335888 ("Ensure va_list is declared by including stdarg.h.") 2018-07-03 15:48:34 +00:00
libpmc Add aditional counter descriptions to AMD 0x17 2018-11-04 06:24:27 +00:00
libpmcstat pmc(3)/hwpmc(4): update supported Intel processors to rely fully on the 2018-05-26 19:29:19 +00:00
libproc Detach from the child process before completing the test. 2018-07-27 20:34:15 +00:00
libprocstat Do not blindly include illumos kernel headers instead of user-space. 2018-08-02 18:55:55 +00:00
libradius Make libradius(3) buildable. 2018-09-19 07:06:20 +00:00
libregex libregex: Mark gnuext test as an expected fail 2018-01-29 14:00:33 +00:00
librpcsec_gss lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
librpcsvc spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
librss DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
librt lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
librtld_db lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libsbuf DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libsdp libsdp: Add method that returns actual source BD_ADDR of SDP session. 2018-04-30 10:15:58 +00:00
libsm
libsmb Move nsmb.conf to lib/libsmb/ 2018-09-20 09:31:27 +00:00
libsmdb
libsmutil
libsqlite3 Revert r333353 - FTS5 uses log(3) which currently breakes non-amd64 builds. 2018-05-08 06:09:49 +00:00
libstdbuf lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libstdthreads lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libsysdecode Fix regex for extracting SHM_* values for libsysdecode 2018-10-23 06:31:19 +00:00
libtacplus lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libtelnet Remove redundant include directories which expand to a noop, 2017-07-31 19:07:45 +00:00
libthr libthr: minor spacing cleanup. 2018-08-21 01:33:25 +00:00
libthread_db Implement pt_fpreg_to_ucontext(), pt_ucontext_to_fpreg(). 2018-08-02 12:24:34 +00:00
libucl DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
libufs In preparation for adding inode check-hashes, clean up and 2018-11-13 21:40:56 +00:00
libugidfw Allow jail names (not just IDs) to be specified for: cpuset(1), ipfw(8), 2018-07-03 23:47:20 +00:00
libulog lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libunbound Update Makefile for 1.8.0, apologies for the breakage. 2018-10-10 08:19:11 +00:00
libusb libusb(3): Update the link to the libusb homepage. 2018-10-11 13:58:51 +00:00
libusbhid lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libutil Stop exporting __pw_scan and __pw_initpwd as freebsd-private libc functions 2018-07-27 19:47:42 +00:00
libveriexec This library allows for user space applications to check file descriptors 2018-06-20 00:55:18 +00:00
libvgl lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libvmmapi bhyve: Use MAP_GUARD when mapping guest memory ranges. 2018-09-06 20:29:40 +00:00
libwrap Move hosts.allow to lib/libwrap/ 2018-09-22 13:17:30 +00:00
libxo Import libxo-0.9.0: 2018-05-23 01:20:31 +00:00
liby liby: rewrite yyerror.h 2018-06-17 18:05:27 +00:00
libypclnt lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
libz Remove "All rights reserved" from my files. 2018-05-10 06:41:08 +00:00
libzstd Update to Zstandard 1.3.7 2018-10-22 18:29:12 +00:00
msun csqrt(3): Fix some typos in the manual page 2018-11-04 14:11:38 +00:00
ncurses Fix ncurses fallback.c build with a strict build shell 2018-10-23 06:31:31 +00:00
ofed Move OFED libraries libmlx5.so.1 and libibverbs.so.1 to /lib. 2018-07-20 23:49:57 +00:00
tests
Makefile retire LINKER_FEATURES filter flag 2018-11-12 20:44:22 +00:00
Makefile.inc