]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Eliminate the overhead of gratuitous repeated reinitialization of cap_rights
authormmacy <mmacy@FreeBSD.org>
Wed, 9 May 2018 18:47:24 +0000 (18:47 +0000)
committermmacy <mmacy@FreeBSD.org>
Wed, 9 May 2018 18:47:24 +0000 (18:47 +0000)
commita0bd5d3d7ffae2d09d6ae3cb12bed3ca80e88928
tree40c405d5c0a6545e7dfd7beb64dc7e5076f7b644
parent30ea5a6d01866893beeae96a18ed025791acee96
Eliminate the overhead of gratuitous repeated reinitialization of cap_rights

- Add macros to allow preinitialization of cap_rights_t.

- Convert most commonly used code paths to use preinitialized cap_rights_t.
  A 3.6% speedup in fstat was measured with this change.

Reported by: mjg
Reviewed by: oshogbo
Approved by: sbruno
MFC after: 1 month
30 files changed:
sys/cddl/compat/opensolaris/sys/file.h
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_onexit.c
sys/compat/cloudabi/cloudabi_file.c
sys/compat/linux/linux_event.c
sys/compat/linux/linux_file.c
sys/compat/linux/linux_ioctl.c
sys/compat/linux/linux_mmap.c
sys/compat/linux/linux_socket.c
sys/compat/linux/linux_stats.c
sys/compat/linuxkpi/common/include/linux/file.h
sys/dev/filemon/filemon.c
sys/dev/hwpmc/hwpmc_logging.c
sys/fs/fdescfs/fdesc_vnops.c
sys/fs/fuse/fuse_vfsops.c
sys/kern/kern_descrip.c
sys/kern/kern_event.c
sys/kern/kern_exec.c
sys/kern/kern_sendfile.c
sys/kern/kern_sig.c
sys/kern/subr_capability.c
sys/kern/sys_generic.c
sys/kern/sys_procdesc.c
sys/kern/uipc_mqueue.c
sys/kern/uipc_sem.c
sys/kern/uipc_syscalls.c
sys/kern/vfs_aio.c
sys/kern/vfs_syscalls.c
sys/netsmb/smb_dev.c
sys/sys/capsicum.h