freebsd-dev/libexec
Mateusz Guzik 0573d0a9b8 vfs: add realpathat syscall
realpath(3) is used a lot e.g., by clang and is a major source of getcwd
and fstatat calls. This can be done more efficiently in the kernel.

This works by performing a regular lookup while saving the name and found
parent directory. If the terminal vnode is a directory we can resolve it using
usual means. Otherwise we can use the name saved by lookup and resolve the
parent.

See the review for sample syscall counts.

Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D23574
2020-02-20 16:58:19 +00:00
..
atf Another round of attempting to squelch -Wdeprecated-declarations, which 2019-09-17 06:07:08 +00:00
atrun libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
blacklistd-helper DIRDEPS_BUILD: Connect new directories and update dependencies. 2016-06-03 19:25:30 +00:00
bootpd Restore WARNS?=1 here. I missed that libexec/bootpd/bootpgw existed. 2019-07-19 18:47:13 +00:00
comsat General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
dma Replace send-mail with the more standarized sendmail, we do not create 2017-12-27 06:23:50 +00:00
fingerd Update Makefile.depend files 2019-12-11 17:37:53 +00:00
flua flua: newer GCC complains about format-nonliteral at WARNS=2 2019-11-19 00:02:56 +00:00
ftpd Update Makefile.depend files 2019-12-11 17:37:53 +00:00
getty Simplify code with strlcpy/strlcat. 2019-12-01 08:04:22 +00:00
hyperv hyperv: Add VF bringup scripts and devd rules. 2017-07-31 07:18:15 +00:00
mail.local DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
makewhatis.local makewhatis: do not try to operate on read-only mounted directories 2018-10-27 17:15:58 +00:00
mknetid General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
pppoed libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
rbootd Fix the following -Werror warning from clang 10.0.0 in rbootd: 2020-01-28 19:19:55 +00:00
rc auditd_stop: wait_for_pids instead of sleeping 2020-02-06 08:32:30 +00:00
revnetgroup General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
rpc.rquotad This exposes ZFS user and group quotas via the normal 2018-07-05 22:56:13 +00:00
rpc.rstatd General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
rpc.rusersd General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
rpc.rwalld libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
rpc.sprayd rpc.sprayd: raise WARNS to 6 2018-03-05 16:11:07 +00:00
rtld-aout libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
rtld-elf vfs: add realpathat syscall 2020-02-20 16:58:19 +00:00
rtld-elf32 libcompat: Correct rtld MLINKS 2019-11-12 22:31:59 +00:00
save-entropy Reduce disk write load in /usr/libexec/save-entropy. 2019-11-30 20:06:53 +00:00
smrsh DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
talkd Regularize my copyright notice 2019-12-04 16:56:11 +00:00
tcpd DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
telnetd Update Makefile.depend files 2019-12-11 17:37:53 +00:00
tests Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
tftp-proxy DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
tftpd Update Makefile.depend files 2019-12-11 17:37:53 +00:00
ulog-helper libexec: adoption of SPDX licensing ID tags. 2017-11-27 15:25:02 +00:00
ypxfr spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
Makefile Add flua to the base system, install to /usr/libexec 2019-11-18 23:21:13 +00:00
Makefile.amd64
Makefile.i386
Makefile.inc