diff options
| author | riastradh <riastradh@NetBSD.org> | 2018-08-27 07:14:19 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2018-08-27 07:14:19 +0000 |
| commit | 0a5d38baa6f123a9d66eaefbfcbf75deb406129b (patch) | |
| tree | eca6ab296a2a55a251aedc0bab313806dcb752a6 /sys/external/bsd/drm2/include/linux/atomic.h | |
| parent | 780da7981cf51533ae4cc0d05195aa9b98f3ae85 (diff) | |
Add Linux smp_mb__before_atomic.
Diffstat (limited to 'sys/external/bsd/drm2/include/linux/atomic.h')
| -rw-r--r-- | sys/external/bsd/drm2/include/linux/atomic.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/external/bsd/drm2/include/linux/atomic.h b/sys/external/bsd/drm2/include/linux/atomic.h index cbfa2369e8c..f00a50ba763 100644 --- a/sys/external/bsd/drm2/include/linux/atomic.h +++ b/sys/external/bsd/drm2/include/linux/atomic.h @@ -1,4 +1,4 @@ -/* $NetBSD: atomic.h,v 1.9 2018/08/27 07:08:58 riastradh Exp $ */ +/* $NetBSD: atomic.h,v 1.10 2018/08/27 07:14:19 riastradh Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -275,11 +275,13 @@ test_and_change_bit(unsigned int bit, volatile unsigned long *ptr) * should be insn/inc/enter and exit/dec/insn, but the use of the * before/after memory barriers is not consistent throughout Linux. */ +# define smp_mb__before_atomic() membar_sync() # define smp_mb__before_atomic_inc() membar_sync() # define smp_mb__after_atomic_inc() membar_sync() # define smp_mb__before_atomic_dec() membar_sync() # define smp_mb__after_atomic_dec() membar_sync() #else +# define smp_mb__before_atomic() __insn_barrier() # define smp_mb__before_atomic_inc() __insn_barrier() # define smp_mb__after_atomic_inc() __insn_barrier() # define smp_mb__before_atomic_dec() __insn_barrier() |
