freebsd-dev/sys/bsm
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
..
audit_domain.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
audit_errno.h Create new EINTEGRITY error with message "Integrity check failed". 2019-01-17 06:35:45 +00:00
audit_fcntl.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
audit_internal.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
audit_kevents.h vfs: add realpathat syscall 2020-02-20 16:58:19 +00:00
audit_record.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
audit_socket_type.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00
audit.h sys: further adoption of SPDX licensing ID tags. 2017-11-20 19:43:44 +00:00