zfs/include/os/linux/spl/sys
Richard Yao b247d47be1 Cleanup: Make memory barrier definitions consistent across kernels
We inherited membar_consumer() and membar_producer() from OpenSolaris,
but we had replaced membar_consumer() with Linux's smp_rmb() in
zfs_ioctl.c. The FreeBSD SPL consequently implemented a shim for the
Linux-only smp_rmb().

We reinstate membar_consumer() in platform independent code and fix the
FreeBSD SPL to implement membar_consumer() in a way analogous to Linux.

Reviewed-by: Konstantin Belousov <kib@FreeBSD.org>
Reviewed-by: Mateusz Guzik <mjguzik@gmail.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Neal Gompa <ngompa@datto.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Closes #13843
2022-12-01 12:39:40 -08:00
..
Makefile.am Introduce write-mostly sums 2021-06-09 13:05:34 -07:00
acl.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
atomic.h More aggsum optimizations 2021-06-09 13:05:34 -07:00
byteorder.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
callb.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
callo.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
cmn_err.h Linux 5.15 compat: standalone <linux/stdarg.h> 2021-09-14 15:42:01 -07:00
condvar.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
cred.h Fix ACL checks for NFS kernel server 2022-03-20 21:21:18 -07:00
ctype.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
debug.h Microoptimizations for VERIFY() and friends 2021-03-11 17:16:09 -08:00
disp.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
dkio.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
errno.h Move platform dependent errno aliases 2019-10-25 13:40:50 -07:00
fcntl.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
file.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
inttypes.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
isa_defs.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
kmem.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
kmem_cache.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
kstat.h Remove pool io kstats 2021-06-10 10:50:16 -07:00
list.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
mod_os.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
mutex.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
param.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
proc.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
processor.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
procfs_list.h FreeBSD: Add support for procfs_list 2020-09-23 16:43:51 -07:00
random.h FreeBSD: fix compilation of FreeBSD world after 29274c9f6 2021-11-02 13:35:47 -07:00
rwlock.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
shrinker.h Linux 6.0 compat: register_shrinker() now var-arg 2022-08-09 09:41:06 -07:00
sid.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
signal.h Add SIGSTOP and SIGTSTP handling to issig 2021-04-19 15:12:33 -07:00
simd.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
stat.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
strings.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
sunddi.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
sysmacros.h Introduce CPU_SEQID_UNSTABLE 2020-11-02 11:51:12 -08:00
systeminfo.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
taskq.h Implement memory and CPU hotplug 2020-12-10 14:09:23 -08:00
thread.h Add SIGSTOP and SIGTSTP handling to issig 2021-04-19 15:12:33 -07:00
time.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
timer.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
trace.h Add prototypes 2020-06-18 12:21:32 -07:00
trace_spl.h Add tracepoints for taskq entry lifetime events 2019-11-01 13:14:54 -07:00
trace_taskq.h Add tracepoints for taskq entry lifetime events 2019-11-01 13:14:54 -07:00
tsd.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
types.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
types32.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
uio.h Linux 5.16 compat: Added mapping for iov_iter_fault_in_readable 2022-02-04 08:33:52 -08:00
user.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
vfs.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
vmem.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
vmsystm.h Cleanup: Make memory barrier definitions consistent across kernels 2022-12-01 12:39:40 -08:00
vnode.h Consolidate zfs_holey and zfs_access 2020-10-31 09:40:08 -07:00
wait.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
wmsum.h Introduce write-mostly sums 2021-06-09 13:05:34 -07:00
zmod.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00
zone.h Replace ZFS on Linux references with OpenZFS 2020-10-08 20:10:13 -07:00