freebsd-dev/sys/security
Mateusz Guzik deb2e577a2 mac: use a sleepable rmlock instead of an sx lock
If any non-static modules are loaded (and mac_ntpd tends to be), the lock is
taken all the time al over the kernel. On platforms like arm64 this results in
an avoidable significant performance degradation. Since write-locking is almost
never needed, use a primitive optimized towards read-locking.

Sample result of building the kernel on tmpfs 11 times:
stock           11142.80s user 6704.44s system 4924% cpu 6:02.42 total
patched         11118.95s user 2374.94s system 4547% cpu 4:56.71 total
2019-12-27 11:23:32 +00:00
..
audit Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
mac mac: use a sleepable rmlock instead of an sx lock 2019-12-27 11:23:32 +00:00
mac_biba
mac_bsdextended Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
mac_ifoff
mac_lomac Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
mac_mls
mac_none
mac_ntpd Make it possible to run ntpd as a non-root user, add ntpd uid and gid. 2018-07-19 23:55:29 +00:00
mac_partition Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
mac_portacl Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
mac_seeotheruids Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
mac_stub
mac_test
mac_veriexec Add a new ioctl for the larger params struct that includes the label. 2019-05-17 19:27:07 +00:00
mac_veriexec_parser Fix mac_veriexec_parser build after r347938 2019-08-08 16:51:49 +00:00