freebsd-dev/sys
Mateusz Guzik 89744405e6 pipe: allow for lockless pipe_stat
pipes get stated all thet time and this avoidably contributed to contention.
The pipe lock is only held to accomodate MAC and to check the type.

Since normally there is no probe for pipe stat depessimize this by having the
flag.

The pipe_state field gets modified with locks held all the time and it's not
feasible to convert them to use atomic store. Move the type flag away to a
separate variable as a simple cleanup and to provide stable field to read.
Use short for both fields to avoid growing the struct.

While here short-circuit MAC for pipe_poll as well.
2020-11-19 06:30:25 +00:00
..
amd64 vm_phys: Try to clean up NUMA KPIs 2020-11-19 03:59:21 +00:00
arm Remove NO_EVENTTIMERS support 2020-11-19 02:50:48 +00:00
arm64 'make sysent' for r367773 2020-11-17 19:53:59 +00:00
bsm
cam Make CTL nicer to increased MAXPHYS. 2020-11-11 21:59:39 +00:00
cddl [cddl] Fix lz4 function definitions to not tri pup compile. 2020-11-17 17:11:07 +00:00
compat Allow LinuxKPI types to be used in bootloaders, by checking for the 2020-11-18 13:47:11 +00:00
conf Move kern_clocksource.c to sys/conf/files 2020-11-19 02:53:29 +00:00
contrib Adjust ENA driver files to latest ena-com changes 2020-11-18 14:59:22 +00:00
crypto Check cipher key lengths during probesession. 2020-11-05 23:31:58 +00:00
ddb db_search_symbol: prevent pollution from bogus symbols 2020-10-26 16:42:53 +00:00
dev vm_phys: Try to clean up NUMA KPIs 2020-11-19 03:59:21 +00:00
dts Brand our DTS with the Linux version it was imported from 2020-10-10 07:18:51 +00:00
fs msdosfs(5): Fix debug-only format string 2020-11-18 20:20:03 +00:00
gdb gdb(4): Don't escape GDB special characters at application layer 2020-09-30 14:55:54 +00:00
geom gbde: replace malloc_last_fail with a kludge 2020-11-12 20:20:57 +00:00
gnu Brand our DTS with the Linux version it was imported from 2020-10-10 07:18:51 +00:00
i386 'make sysent' for r367773 2020-11-17 19:53:59 +00:00
isa
kern pipe: allow for lockless pipe_stat 2020-11-19 06:30:25 +00:00
kgssapi State kgssapi dependency on xdr. 2020-09-17 22:29:38 +00:00
libkern arc4random(9): Integrate with RANDOM_FENESTRASX push-reseed 2020-10-10 21:48:06 +00:00
mips Fix octeon_pmc post-r334827 2020-11-18 17:37:01 +00:00
modules Add SPDX license tag to the ENA driver files 2020-11-18 15:07:34 +00:00
net LACP: When suppressing distributing, return ENOBUFS 2020-11-18 14:55:49 +00:00
net80211 net80211: fix a typo 2020-11-04 12:07:33 +00:00
netgraph ng_nat: unbreak ABI 2020-11-10 02:26:44 +00:00
netinet ip_fastfwd: style(9) tidy for r367628 2020-11-13 18:25:07 +00:00
netinet6 Fix implicit automatic local port selection for IPv6 during connect calls. 2020-11-14 14:50:34 +00:00
netipsec Trigger soft lifetime expiration on sequence number 2020-10-16 11:27:01 +00:00
netpfil Add dtrace SDT probe ipfw:::rule-matched. 2020-10-21 15:01:33 +00:00
netsmb
nfs
nfsclient
nfsserver nfs: Mark unused statistics variable as reserved 2020-11-18 04:35:49 +00:00
nlm
ofed Fix for referencing file via its vnode in ibore. 2020-11-02 10:44:29 +00:00
opencrypto Use void * in place of caddr_t. 2020-11-06 18:09:52 +00:00
powerpc vm_phys: Try to clean up NUMA KPIs 2020-11-19 03:59:21 +00:00
riscv riscv: set kernel_pmap hart mask more precisely 2020-11-05 00:52:52 +00:00
rpc
security pipe: allow for lockless pipe_stat 2020-11-19 06:30:25 +00:00
sys pipe: allow for lockless pipe_stat 2020-11-19 06:30:25 +00:00
teken Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
tests
tools Brand our DTS with the Linux version it was imported from 2020-10-10 07:18:51 +00:00
ufs Handle LoR in flush_pagedep_deps(). 2020-11-14 05:30:10 +00:00
vm vm_phys: Try to clean up NUMA KPIs 2020-11-19 03:59:21 +00:00
x86 Add device_t member to struct iommu. 2020-11-16 15:29:52 +00:00
xdr
xen
Makefile