Module Name: src
Committed By: riastradh
Date: Fri Nov 29 20:04:54 UTC 2019
Modified Files:
src/sys/arch/alpha/include: rwlock.h
src/sys/arch/arm/include: rwlock.h
src/sys/arch/hppa/include: rwlock.h
src/sys/arch/ia64/include: rwlock.h
src/sys/arch/m68k/include: rwlock.h
src/sys/arch/mips/include: rwlock.h
src/sys/arch/or1k/include: rwlock.h
src/sys/arch/powerpc/include: rwlock.h
src/sys/arch/riscv/include: rwlock.h
src/sys/arch/sh3/include: rwlock.h
src/sys/arch/sparc/include: rwlock.h
src/sys/arch/sparc64/include: rwlock.h
src/sys/arch/usermode/include: rwlock.h
src/sys/arch/vax/include: rwlock.h
src/sys/arch/x86/include: rwlock.h
src/sys/kern: kern_rwlock.c
src/sys/sys: rwlock.h
Log Message:
Largely eliminate the MD rwlock.h header file.
This was full of definitions that have been obsolete for over a
decade. The file still remains for __HAVE_RW_STUBS but that's all.
Used only internally in kern_rwlock.c now, not by <sys/rwlock.h>.
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/alpha/include/rwlock.h
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/arm/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/hppa/include/rwlock.h
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/ia64/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/m68k/include/rwlock.h
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/mips/include/rwlock.h
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/or1k/include/rwlock.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/powerpc/include/rwlock.h
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/riscv/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/sh3/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/sparc/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/sparc64/include/rwlock.h
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/usermode/include/rwlock.h
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/vax/include/rwlock.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/x86/include/rwlock.h
cvs rdiff -u -r1.55 -r1.56 src/sys/kern/kern_rwlock.c
cvs rdiff -u -r1.10 -r1.11 src/sys/sys/rwlock.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/alpha/include/rwlock.h
diff -u src/sys/arch/alpha/include/rwlock.h:1.4 src/sys/arch/alpha/include/rwlock.h:1.5
--- src/sys/arch/alpha/include/rwlock.h:1.4 Mon Apr 28 20:23:11 2008
+++ src/sys/arch/alpha/include/rwlock.h Fri Nov 29 20:04:52 2019
@@ -1,52 +1 @@
-/* $NetBSD: rwlock.h,v 1.4 2008/04/28 20:23:11 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ALPHA_RWLOCK_H_
-#define _ALPHA_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) _lock_cas((p), (o), (n))
-
-int _lock_cas(volatile uintptr_t *, uintptr_t, uintptr_t);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _ALPHA_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.5 2019/11/29 20:04:52 riastradh Exp $ */
Index: src/sys/arch/arm/include/rwlock.h
diff -u src/sys/arch/arm/include/rwlock.h:1.9 src/sys/arch/arm/include/rwlock.h:1.10
--- src/sys/arch/arm/include/rwlock.h:1.9 Wed Feb 25 13:52:42 2015
+++ src/sys/arch/arm/include/rwlock.h Fri Nov 29 20:04:52 2019
@@ -1,61 +1 @@
-/* $NetBSD: rwlock.h,v 1.9 2015/02/25 13:52:42 joerg Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ARM_RWLOCK_H_
-#define _ARM_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#ifdef MULTIPROCESSOR
-#ifdef _ARM_ARCH_7
-#define RW_RECEIVE(rw) __asm __volatile("dmb" ::: "memory")
-#define RW_GIVE(rw) __asm __volatile("dsb" ::: "memory")
-#else
-#define RW_RECEIVE(rw) membar_consumer()
-#define RW_GIVE(rw) membar_producer()
-#endif
-#else
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-#endif
-
-#define RW_CAS(p, o, n) \
- (atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _ARM_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.10 2019/11/29 20:04:52 riastradh Exp $ */
Index: src/sys/arch/hppa/include/rwlock.h
diff -u src/sys/arch/hppa/include/rwlock.h:1.5 src/sys/arch/hppa/include/rwlock.h:1.6
--- src/sys/arch/hppa/include/rwlock.h:1.5 Mon Apr 28 20:23:23 2008
+++ src/sys/arch/hppa/include/rwlock.h Fri Nov 29 20:04:52 2019
@@ -1,56 +1 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:23 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2007 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _HPPA_RWLOCK_H_
-#define _HPPA_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-/*
- * _lock_cas() will take care of any memory barrier that is needed.
- */
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-uintptr_t _lock_cas(volatile uintptr_t *, uintptr_t, uintptr_t);
-
-#define RW_CAS(p, o, n) \
- (_lock_cas((volatile uintptr_t *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _HPPA_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:52 riastradh Exp $ */
Index: src/sys/arch/ia64/include/rwlock.h
diff -u src/sys/arch/ia64/include/rwlock.h:1.3 src/sys/arch/ia64/include/rwlock.h:1.4
--- src/sys/arch/ia64/include/rwlock.h:1.3 Mon Apr 28 20:23:25 2008
+++ src/sys/arch/ia64/include/rwlock.h Fri Nov 29 20:04:52 2019
@@ -1,61 +1 @@
-/* $NetBSD: rwlock.h,v 1.3 2008/04/28 20:23:25 martin Exp $ */
-
-/*-
- * Copyright (c) 2008 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Takayoshi Kochi.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _IA64_RWLOCK_H_
-#define _IA64_RWLOCK_H_
-
-#include <sys/atomic.h>
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-/* #define __HAVE_RW_STUBS 1 */
-
-/*
- * RW_RECEIVE: no memory barrier required, as 'ret' implies a load fence.
- */
-#define RW_RECEIVE(rw) /* nothing */
-
-/*
- * RW_GIVE: no memory barrier required, as _lock_cas() will take care of it.
- */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) \
- (atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _IA64_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.4 2019/11/29 20:04:52 riastradh Exp $ */
Index: src/sys/arch/m68k/include/rwlock.h
diff -u src/sys/arch/m68k/include/rwlock.h:1.5 src/sys/arch/m68k/include/rwlock.h:1.6
--- src/sys/arch/m68k/include/rwlock.h:1.5 Mon Apr 28 20:23:26 2008
+++ src/sys/arch/m68k/include/rwlock.h Fri Nov 29 20:04:52 2019
@@ -1,50 +1 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:26 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _M68K_RWLOCK_H_
-#define _M68K_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) (atomic_cas_uint((p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _M68K_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:52 riastradh Exp $ */
Index: src/sys/arch/mips/include/rwlock.h
diff -u src/sys/arch/mips/include/rwlock.h:1.8 src/sys/arch/mips/include/rwlock.h:1.9
--- src/sys/arch/mips/include/rwlock.h:1.8 Sun Feb 20 07:45:47 2011
+++ src/sys/arch/mips/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,53 +1 @@
-/* $NetBSD: rwlock.h,v 1.8 2011/02/20 07:45:47 matt Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _MIPS_RWLOCK_H_
-#define _MIPS_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#include <mips/lock.h>
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) membar_enter()
-#define RW_GIVE(rw) membar_exit()
-
-#define RW_CAS(p, o, n) \
- (atomic_cas_ulong((volatile u_long *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _MIPS_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.9 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/or1k/include/rwlock.h
diff -u src/sys/arch/or1k/include/rwlock.h:1.1 src/sys/arch/or1k/include/rwlock.h:1.2
--- src/sys/arch/or1k/include/rwlock.h:1.1 Wed Sep 3 19:34:26 2014
+++ src/sys/arch/or1k/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,56 +1 @@
-/* $NetBSD: rwlock.h,v 1.1 2014/09/03 19:34:26 matt Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _OR1K_RWLOCK_H_
-#define _OR1K_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#ifdef MULTIPROCESSOR
-#define RW_RECEIVE(rw) membar_consumer()
-#define RW_GIVE(rw) membar_producer()
-#else
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-#endif
-
-#define RW_CAS(p, o, n) \
- (atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _OR1K_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.2 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/powerpc/include/rwlock.h
diff -u src/sys/arch/powerpc/include/rwlock.h:1.4 src/sys/arch/powerpc/include/rwlock.h:1.5
--- src/sys/arch/powerpc/include/rwlock.h:1.4 Mon Apr 28 20:23:32 2008
+++ src/sys/arch/powerpc/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,52 +1 @@
-/* $NetBSD: rwlock.h,v 1.4 2008/04/28 20:23:32 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _POWERPC_RWLOCK_H_
-#define _POWERPC_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) _lock_cas((p), (o), (n))
-
-int _lock_cas(volatile uintptr_t *, uintptr_t, uintptr_t);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _POWERPC_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.5 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/riscv/include/rwlock.h
diff -u src/sys/arch/riscv/include/rwlock.h:1.1 src/sys/arch/riscv/include/rwlock.h:1.2
--- src/sys/arch/riscv/include/rwlock.h:1.1 Fri Sep 19 17:36:26 2014
+++ src/sys/arch/riscv/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,56 +1 @@
-/* $NetBSD: rwlock.h,v 1.1 2014/09/19 17:36:26 matt Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _RISCV_RWLOCK_H_
-#define _RISCV_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#ifdef MULTIPROCESSOR
-#define RW_RECEIVE(rw) membar_consumer()
-#define RW_GIVE(rw) membar_producer()
-#else
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-#endif
-
-#define RW_CAS(p, o, n) \
- (atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _RISCV_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.2 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/sh3/include/rwlock.h
diff -u src/sys/arch/sh3/include/rwlock.h:1.5 src/sys/arch/sh3/include/rwlock.h:1.6
--- src/sys/arch/sh3/include/rwlock.h:1.5 Mon Apr 28 20:23:35 2008
+++ src/sys/arch/sh3/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,52 +1 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:35 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2007 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _SH3_RWLOCK_H_
-#define _SH3_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) (_lock_cas((p), (o), (n)) == (o))
-
-uintptr_t _lock_cas(volatile uintptr_t *, uintptr_t, uintptr_t);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _SH3_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/sparc/include/rwlock.h
diff -u src/sys/arch/sparc/include/rwlock.h:1.5 src/sys/arch/sparc/include/rwlock.h:1.6
--- src/sys/arch/sparc/include/rwlock.h:1.5 Mon Apr 28 20:23:36 2008
+++ src/sys/arch/sparc/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,54 +1 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:36 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _SPARC_RWLOCK_H_
-#define _SPARC_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) \
- (_atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-unsigned long _atomic_cas_ulong(volatile unsigned long *,
- unsigned long, unsigned long);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _SPARC_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/sparc64/include/rwlock.h
diff -u src/sys/arch/sparc64/include/rwlock.h:1.5 src/sys/arch/sparc64/include/rwlock.h:1.6
--- src/sys/arch/sparc64/include/rwlock.h:1.5 Mon Apr 28 20:23:37 2008
+++ src/sys/arch/sparc64/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,54 +1 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:37 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _SPARC64_RWLOCK_H_
-#define _SPARC64_RWLOCK_H_
-
-#include <machine/lock.h>
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) mb_read()
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) _lock_cas((p), (o), (n))
-
-int _lock_cas(volatile uintptr_t *, uintptr_t, uintptr_t);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _SPARC64_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/usermode/include/rwlock.h
diff -u src/sys/arch/usermode/include/rwlock.h:1.3 src/sys/arch/usermode/include/rwlock.h:1.4
--- src/sys/arch/usermode/include/rwlock.h:1.3 Mon Apr 28 20:23:39 2008
+++ src/sys/arch/usermode/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,61 +1 @@
-/* $NetBSD: rwlock.h,v 1.3 2008/04/28 20:23:39 martin Exp $ */
-
-/*-
- * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Jason R. Thorpe and Andrew Doran.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _ARCH_USERMODE_INCLUDE_RWLOCK_H_
-#define _ARCH_USERMODE_INCLUDE_RWLOCK_H_
-
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-/*
- * RW_RECEIVE: no memory barrier required, as 'ret' implies a load fence.
- */
-#define RW_RECEIVE(rw) /* nothing */
-
-/*
- * RW_GIVE: no memory barrier required, as _lock_cas() will take care of it.
- */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) \
- (_atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-unsigned long _atomic_cas_ulong(volatile unsigned long *,
- unsigned long, unsigned long);
-
-#endif /* __RWLOCK_PRIVATE */
-
-#endif /* _ARCH_USERMODE_INCLUDE_RWLOCK_H_ */
+/* $NetBSD: rwlock.h,v 1.4 2019/11/29 20:04:53 riastradh Exp $ */
Index: src/sys/arch/vax/include/rwlock.h
diff -u src/sys/arch/vax/include/rwlock.h:1.6 src/sys/arch/vax/include/rwlock.h:1.7
--- src/sys/arch/vax/include/rwlock.h:1.6 Mon Apr 28 20:23:39 2008
+++ src/sys/arch/vax/include/rwlock.h Fri Nov 29 20:04:53 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: rwlock.h,v 1.6 2008/04/28 20:23:39 martin Exp $ */
+/* $NetBSD: rwlock.h,v 1.7 2019/11/29 20:04:53 riastradh Exp $ */
/*-
* Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
@@ -32,22 +32,6 @@
#ifndef _VAX_RWLOCK_H_
#define _VAX_RWLOCK_H_
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#include <sys/atomic.h>
-
#define __HAVE_RW_STUBS 1
-#define __HAVE_SIMPLE_RW_LOCKS 1
-
-#define RW_RECEIVE(rw) /* nothing */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) (atomic_cas_ulong((p), (o), (n)) == (o))
-
-#endif /* __RWLOCK_PRIVATE */
#endif /* _VAX_RWLOCK_H_ */
Index: src/sys/arch/x86/include/rwlock.h
diff -u src/sys/arch/x86/include/rwlock.h:1.5 src/sys/arch/x86/include/rwlock.h:1.6
--- src/sys/arch/x86/include/rwlock.h:1.5 Mon Apr 28 20:23:40 2008
+++ src/sys/arch/x86/include/rwlock.h Fri Nov 29 20:04:54 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: rwlock.h,v 1.5 2008/04/28 20:23:40 martin Exp $ */
+/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:54 riastradh Exp $ */
/*-
* Copyright (c) 2002, 2006 The NetBSD Foundation, Inc.
@@ -32,31 +32,6 @@
#ifndef _X86_RWLOCK_H_
#define _X86_RWLOCK_H_
-struct krwlock {
- volatile uintptr_t rw_owner;
-};
-
-#ifdef __RWLOCK_PRIVATE
-
-#define __HAVE_SIMPLE_RW_LOCKS 1
#define __HAVE_RW_STUBS 1
-/*
- * RW_RECEIVE: no memory barrier required, as 'ret' implies a load fence.
- */
-#define RW_RECEIVE(rw) /* nothing */
-
-/*
- * RW_GIVE: no memory barrier required, as _lock_cas() will take care of it.
- */
-#define RW_GIVE(rw) /* nothing */
-
-#define RW_CAS(p, o, n) \
- (_atomic_cas_ulong((volatile unsigned long *)(p), (o), (n)) == (o))
-
-unsigned long _atomic_cas_ulong(volatile unsigned long *,
- unsigned long, unsigned long);
-
-#endif /* __RWLOCK_PRIVATE */
-
#endif /* _X86_RWLOCK_H_ */
Index: src/sys/kern/kern_rwlock.c
diff -u src/sys/kern/kern_rwlock.c:1.55 src/sys/kern/kern_rwlock.c:1.56
--- src/sys/kern/kern_rwlock.c:1.55 Mon Nov 25 20:16:22 2019
+++ src/sys/kern/kern_rwlock.c Fri Nov 29 20:04:54 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: kern_rwlock.c,v 1.55 2019/11/25 20:16:22 ad Exp $ */
+/* $NetBSD: kern_rwlock.c,v 1.56 2019/11/29 20:04:54 riastradh Exp $ */
/*-
* Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.55 2019/11/25 20:16:22 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.56 2019/11/29 20:04:54 riastradh Exp $");
#define __RWLOCK_PRIVATE
@@ -56,6 +56,8 @@ __KERNEL_RCSID(0, "$NetBSD: kern_rwlock.
#include <dev/lockstat.h>
+#include <machine/rwlock.h>
+
/*
* LOCKDEBUG
*/
Index: src/sys/sys/rwlock.h
diff -u src/sys/sys/rwlock.h:1.10 src/sys/sys/rwlock.h:1.11
--- src/sys/sys/rwlock.h:1.10 Mon Feb 8 09:54:27 2010
+++ src/sys/sys/rwlock.h Fri Nov 29 20:04:54 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: rwlock.h,v 1.10 2010/02/08 09:54:27 skrll Exp $ */
+/* $NetBSD: rwlock.h,v 1.11 2019/11/29 20:04:54 riastradh Exp $ */
/*-
* Copyright (c) 2002, 2006, 2007, 2008 The NetBSD Foundation, Inc.
@@ -93,7 +93,9 @@ void rw_vector_exit(krwlock_t *);
int rw_vector_tryenter(krwlock_t *, const krw_t);
#endif /* __RWLOCK_PRIVATE */
-#include <machine/rwlock.h>
+struct krwlock {
+ volatile uintptr_t rw_owner;
+};
#ifdef _KERNEL