Module Name: src Committed By: martin Date: Wed Aug 9 17:42:06 UTC 2023
Modified Files: src/external/cddl/osnet/sys/sys [netbsd-10]: kcondvar.h src/share/man/man4 [netbsd-10]: ddb.4 src/sys/arch/alpha/include [netbsd-10]: mutex.h src/sys/arch/amiga/dev [netbsd-10]: grfabs_cc.c src/sys/arch/amiga/include [netbsd-10]: intr.h src/sys/arch/arm/include [netbsd-10]: cpu.h mutex.h src/sys/arch/arm/xscale [netbsd-10]: pxa2x0_intr.c pxa2x0_intr.h src/sys/arch/atari/include [netbsd-10]: intr.h src/sys/arch/cesfic/include [netbsd-10]: intr.h src/sys/arch/evbarm/g42xxeb [netbsd-10]: obio.c src/sys/arch/evbarm/include [netbsd-10]: intr.h src/sys/arch/evbarm/lubbock [netbsd-10]: obio.c sacc_obio.c src/sys/arch/hp300/include [netbsd-10]: intr.h src/sys/arch/hppa/include [netbsd-10]: intr.h mutex.h src/sys/arch/ia64/acpi [netbsd-10]: madt.c src/sys/arch/ia64/include [netbsd-10]: mutex.h sapicvar.h src/sys/arch/luna68k/include [netbsd-10]: intr.h src/sys/arch/m68k/include [netbsd-10]: mutex.h src/sys/arch/mac68k/include [netbsd-10]: intr.h src/sys/arch/mips/include [netbsd-10]: mutex.h src/sys/arch/mvme68k/include [netbsd-10]: intr.h src/sys/arch/news68k/include [netbsd-10]: intr.h src/sys/arch/next68k/include [netbsd-10]: intr.h src/sys/arch/or1k/include [netbsd-10]: mutex.h src/sys/arch/powerpc/include [netbsd-10]: mutex.h src/sys/arch/riscv/include [netbsd-10]: mutex.h src/sys/arch/sh3/include [netbsd-10]: mutex.h src/sys/arch/sparc/include [netbsd-10]: cpu.h mutex.h psl.h src/sys/arch/sparc64/include [netbsd-10]: cpu.h mutex.h psl.h src/sys/arch/sun68k/include [netbsd-10]: intr.h src/sys/arch/usermode/include [netbsd-10]: mutex.h src/sys/arch/vax/include [netbsd-10]: intr.h mutex.h src/sys/arch/x68k/include [netbsd-10]: intr.h src/sys/arch/x86/include [netbsd-10]: cpu.h mutex.h src/sys/ddb [netbsd-10]: db_command.c ddb.h files.ddb src/sys/external/bsd/drm2/include/linux [netbsd-10]: idr.h src/sys/kern [netbsd-10]: kern_core.c src/sys/opencrypto [netbsd-10]: cryptodev.h src/sys/sys [netbsd-10]: cpu_data.h ksem.h lua.h proc.h rwlock.h sched.h src/sys/uvm [netbsd-10]: uvm_param.h src/usr.sbin/crash [netbsd-10]: Makefile Added Files: src/sys/ddb [netbsd-10]: db_syncobj.c db_syncobj.h Log Message: Pull up following revision(s) (requested by maya in ticket #316): sys/arch/m68k/include/mutex.h: revision 1.13 sys/arch/arm/include/cpu.h: revision 1.125 sys/arch/sun68k/include/intr.h: revision 1.21 sys/arch/arm/include/mutex.h: revision 1.28 sys/sys/rwlock.h: revision 1.18 sys/arch/powerpc/include/mutex.h: revision 1.7 sys/arch/arm/include/mutex.h: revision 1.29 sys/arch/powerpc/include/mutex.h: revision 1.8 sys/uvm/uvm_param.h: revision 1.42 sys/sys/ksem.h: revision 1.16 sys/arch/x86/include/mutex.h: revision 1.10 sys/sys/proc.h: revision 1.372 sys/sys/ksem.h: revision 1.17 sys/arch/ia64/include/mutex.h: revision 1.8 sys/arch/evbarm/include/intr.h: revision 1.29 sys/sys/lua.h: revision 1.9 sys/arch/next68k/include/intr.h: revision 1.23 sys/arch/ia64/include/mutex.h: revision 1.9 sys/arch/hp300/include/intr.h: revision 1.35 sys/arch/hp300/include/intr.h: revision 1.36 sys/arch/sparc/include/cpu.h: revision 1.111 sys/arch/hppa/include/mutex.h: revision 1.16 sys/arch/vax/include/intr.h: revision 1.31 sys/arch/hppa/include/mutex.h: revision 1.17 sys/arch/news68k/include/intr.h: revision 1.28 sys/arch/hppa/include/mutex.h: revision 1.18 sys/arch/hppa/include/intr.h: revision 1.3 sys/arch/hppa/include/mutex.h: revision 1.19 sys/arch/hppa/include/intr.h: revision 1.4 sys/sys/sched.h: revision 1.92 sys/opencrypto/cryptodev.h: revision 1.51 sys/arch/vax/include/mutex.h: revision 1.20 sys/arch/sparc64/include/mutex.h: revision 1.10 sys/arch/ia64/include/sapicvar.h: revision 1.2 sys/arch/riscv/include/mutex.h: revision 1.5 sys/arch/amiga/dev/grfabs_cc.c: revision 1.39 sys/external/bsd/drm2/include/linux/idr.h: revision 1.11 sys/arch/riscv/include/mutex.h: revision 1.6 sys/ddb/files.ddb: revision 1.16 sys/arch/mac68k/include/intr.h: revision 1.32 share/man/man4/ddb.4: revision 1.203 sys/ddb/db_command.c: revision 1.183 sys/arch/mips/include/mutex.h: revision 1.10 sys/ddb/db_command.c: revision 1.184 sys/arch/x68k/include/intr.h: revision 1.22 sys/arch/sparc/include/psl.h: revision 1.51 sys/arch/or1k/include/mutex.h: revision 1.4 sys/arch/mips/include/mutex.h: revision 1.11 sys/arch/arm/xscale/pxa2x0_intr.h: revision 1.16 sys/arch/sparc64/include/cpu.h: revision 1.134 sys/arch/sparc/include/psl.h: revision 1.52 sys/arch/or1k/include/mutex.h: revision 1.5 sys/arch/mvme68k/include/intr.h: revision 1.22 sys/arch/luna68k/include/intr.h: revision 1.16 external/cddl/osnet/sys/sys/kcondvar.h: revision 1.6 sys/arch/sparc/include/mutex.h: revision 1.12 sys/arch/sparc/include/mutex.h: revision 1.13 sys/arch/usermode/include/mutex.h: revision 1.5 sys/arch/usermode/include/mutex.h: revision 1.6 sys/kern/kern_core.c: revision 1.38 usr.sbin/crash/Makefile: revision 1.49 sys/arch/amiga/include/intr.h: revision 1.23 sys/arch/alpha/include/mutex.h: revision 1.12 sys/arch/alpha/include/mutex.h: revision 1.13 sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.16 sys/ddb/ddb.h: revision 1.6 sys/arch/sparc64/include/mutex.h: revision 1.8 sys/arch/sh3/include/mutex.h: revision 1.12 sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.17 sys/ddb/db_syncobj.c: revision 1.1 sys/arch/vax/include/mutex.h: revision 1.18 sys/arch/sparc64/include/psl.h: revision 1.63 sys/arch/sparc64/include/mutex.h: revision 1.9 sys/arch/sh3/include/mutex.h: revision 1.13 sys/arch/evbarm/lubbock/obio.c: revision 1.13 sys/arch/atari/include/intr.h: revision 1.23 sys/ddb/db_syncobj.c: revision 1.2 sys/arch/vax/include/mutex.h: revision 1.19 sys/arch/evbarm/g42xxeb/obio.c: revision 1.14 sys/arch/evbarm/g42xxeb/obio.c: revision 1.15 sys/arch/cesfic/include/intr.h: revision 1.14 sys/ddb/db_syncobj.h: revision 1.1 sys/arch/x86/include/cpu.h: revision 1.134 sys/arch/evbarm/g42xxeb/obio.c: revision 1.16 sys/arch/cesfic/include/intr.h: revision 1.15 sys/arch/arm/xscale/pxa2x0_intr.c: revision 1.26 sys/sys/cpu_data.h: revision 1.54 sys/arch/m68k/include/mutex.h: revision 1.12 sys/arch/ia64/acpi/madt.c: revision 1.6 sys/rwlock.h: Make this more self-contained for bool. machine/mutex.h: Sprinkle includes so this can be used by crash(8). ddb: New `show all tstiles' command. Shows who's waiting for which locks and what the owner is up to. Include psl.h for ipl_cookie_t if __MUTEX_PRIVATE sys: Rip <sys/resourcevar.h> out of <uvm/uvm_param.h>. And thus out of <sys/param.h>, which is exceedingly overused and fragile and delenda est. Should fix (some) issues with the recent inclusion of machine/lock.h in various machine/mutex.h files. arm/mutex.h: Need machine/intr.h, machine/lock.h. For ipl_cookie_t and __cpu_simple_lock_t. evbarm/intr.h: Define ipl_cookie_t before including ARM_INTR_IMPL. Otherwise arm/mutex.h doesn't work, due to a cyclic dependency which should really be fixed. opencrypto/cryptodev.h: Fix includes. - Move sys/condvar.h under #ifdef _KERNEL. - Add some other necessary includes and forward declarations. - Sort. hp300/intr.h: Fix missing includes. linux/idr.h: Need <sys/mutex.h> for kmutex_t. amiga/intr.h: Don't define spl*() functions if !_KERNEL. This is used by crash(8) now, and what's important is ipl_cookie_t. cesfic/intr.h: Expose ipl_cookie_t to userland for crash(8). cesfic/intr.h: Expose ipl_cookie_t to userland only with _KMEMUSER. Probably not necessary but let's be a little more cautious about this. atari/intr.h: Expose ipl_cookie_t with _KMEMUSER for crash(8). arm/cpu.h: Need sys/param.h for COHERENCY_UNIT. Nix machine/param.h -- not meant to be used directly, pulled in by sys/param.h. Move the definition of ipl_cookie_t out of the kernel-only sections, some _KMEMUSER applications need it. ddb: Cast pointer to uintptr_t first before db_expr_t. hppa/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). luna68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). mvme68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). news68k/intr.h: Fix includes. Put some definitions under _KERNEL. next68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). sys/ksem.h: Hack around fstat(8) abuse of _KERNEL. sun68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). vax/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). x68k/intr.h: Put functions under _KERNEL so crash(8) can use this. Make ipl_cookie_t visible for _KMEMUSER userland applications. fix editor mishap in previous Explicitly include <sys/mutex.h> for kmutex_t. Replace kmutex_t * (which may be undefined here) with struct kmutex *, suggested by Taylor. hp300/intr.h: Put most of this under #ifdef _KERNEL. Only ipl_cookie_t really needs to be exposed now, for crash(8). mac68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8). Make inclusion of sys/intr.h explicit for spl*. fix hppa and vax builds. machine/lock.h isn't necessary for __cpu_simple_lock_t, it's in sys/types.h. avoids cpu_data.h vs sched.h include order issues. move the hppa ipl_t typedef with the moved usage of it. machine/mutex.h: Sprinkle sys/types.h, omit machine/lock.h. Turns out machine/lock.h is not needed for __cpu_simple_lock_t, which always comes from sys/types.h. And, really, sys/types.h (or at least sys/stdint.h) is needed for uintN_t and uintptr_t. ddb: Cast pointer to uintptr_t, then to db_expr_t. Avoids warnings about conversion between pointer and integer of different size on some architectures. re-fix hppa builds. this file uses __cpu_simple_lock(), not just the underlying type, so it does need machine/lock.h. Break cycle by using `struct kmutex *' instead of `kmutex_t *'. sys/sched.h included sys/mutex.h which includes sys/intr.h which includes machine/intr.h which on cats includes arm/footbridge/footbridge_intr.h which includes arm/cpu.h which includes sys/cpu_data.h which includes sys/sched.h But there was never any real need for sys/mutex.h in sys/sched.h, because it only uses pointers to the opaque struct kmutex. Cycle broken by using `struct kmutex *' instead of pulling in sys/mutex.h for the definition of kmutex_t. Side effect: This revealed that sys/cpu_data.h needed sys/intr.h (which was pulled in accidentally by sys/mutex.h via sys/sched.h) for SOFTINT_COUNT. Also revealed some other machine/cpu.h header files were missing includes of sys/mutex.h for kmutex_t. ia64: Need sys/types.h for u_int, vaddr_t; sys/mutex.h for kmutex_t. explicitly include no longer implicitly included sys/mutex.h. arm/xscale: Use sys/bitops.h fls32 - 1 instead of 31 - __builtin_clz. Sidesteps namespace collision with `#define bits ...' in net/zlib.c. complete the previous - there were two calls to find_first_bit() to fix. arm/xscale: Missed a spot with previous find_first_bit commit. evbarm/g42xxeb: Fix off-by-one in previous. The original find_first_bit(x) was 31 - __builtin_clz((uint32_t)x), which is equivalent to fls32(x) - 1, not to fls32(x). Note that fls32 is 1-based and returns 0 for x=0. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.2.1 src/external/cddl/osnet/sys/sys/kcondvar.h cvs rdiff -u -r1.202 -r1.202.2.1 src/share/man/man4/ddb.4 cvs rdiff -u -r1.11 -r1.11.4.1 src/sys/arch/alpha/include/mutex.h cvs rdiff -u -r1.37 -r1.37.4.1 src/sys/arch/amiga/dev/grfabs_cc.c cvs rdiff -u -r1.22 -r1.22.20.1 src/sys/arch/amiga/include/intr.h cvs rdiff -u -r1.123 -r1.123.4.1 src/sys/arch/arm/include/cpu.h cvs rdiff -u -r1.27 -r1.27.4.1 src/sys/arch/arm/include/mutex.h cvs rdiff -u -r1.25 -r1.25.2.1 src/sys/arch/arm/xscale/pxa2x0_intr.c cvs rdiff -u -r1.15 -r1.15.34.1 src/sys/arch/arm/xscale/pxa2x0_intr.h cvs rdiff -u -r1.22 -r1.22.16.1 src/sys/arch/atari/include/intr.h cvs rdiff -u -r1.13 -r1.13.78.1 src/sys/arch/cesfic/include/intr.h cvs rdiff -u -r1.13 -r1.13.6.1 src/sys/arch/evbarm/g42xxeb/obio.c cvs rdiff -u -r1.28 -r1.28.20.1 src/sys/arch/evbarm/include/intr.h cvs rdiff -u -r1.12 -r1.12.6.1 src/sys/arch/evbarm/lubbock/obio.c cvs rdiff -u -r1.15 -r1.15.6.1 src/sys/arch/evbarm/lubbock/sacc_obio.c cvs rdiff -u -r1.34 -r1.34.86.1 src/sys/arch/hp300/include/intr.h cvs rdiff -u -r1.2 -r1.2.4.1 src/sys/arch/hppa/include/intr.h cvs rdiff -u -r1.15 -r1.15.26.1 src/sys/arch/hppa/include/mutex.h cvs rdiff -u -r1.5 -r1.5.2.1 src/sys/arch/ia64/acpi/madt.c cvs rdiff -u -r1.7 -r1.7.4.1 src/sys/arch/ia64/include/mutex.h cvs rdiff -u -r1.1 -r1.1.96.1 src/sys/arch/ia64/include/sapicvar.h cvs rdiff -u -r1.15 -r1.15.60.1 src/sys/arch/luna68k/include/intr.h cvs rdiff -u -r1.11 -r1.11.4.1 src/sys/arch/m68k/include/mutex.h cvs rdiff -u -r1.31 -r1.31.112.1 src/sys/arch/mac68k/include/intr.h cvs rdiff -u -r1.9 -r1.9.4.1 src/sys/arch/mips/include/mutex.h cvs rdiff -u -r1.21 -r1.21.32.1 src/sys/arch/mvme68k/include/intr.h cvs rdiff -u -r1.27 -r1.27.32.1 src/sys/arch/news68k/include/intr.h cvs rdiff -u -r1.22 -r1.22.32.1 src/sys/arch/next68k/include/intr.h cvs rdiff -u -r1.3 -r1.3.4.1 src/sys/arch/or1k/include/mutex.h cvs rdiff -u -r1.6 -r1.6.26.1 src/sys/arch/powerpc/include/mutex.h cvs rdiff -u -r1.4 -r1.4.4.1 src/sys/arch/riscv/include/mutex.h cvs rdiff -u -r1.11 -r1.11.4.1 src/sys/arch/sh3/include/mutex.h cvs rdiff -u -r1.110 -r1.110.4.1 src/sys/arch/sparc/include/cpu.h cvs rdiff -u -r1.11 -r1.11.26.1 src/sys/arch/sparc/include/mutex.h cvs rdiff -u -r1.50 -r1.50.4.1 src/sys/arch/sparc/include/psl.h cvs rdiff -u -r1.133 -r1.133.4.1 src/sys/arch/sparc64/include/cpu.h cvs rdiff -u -r1.7 -r1.7.4.1 src/sys/arch/sparc64/include/mutex.h cvs rdiff -u -r1.62 -r1.62.4.1 src/sys/arch/sparc64/include/psl.h cvs rdiff -u -r1.20 -r1.20.114.1 src/sys/arch/sun68k/include/intr.h cvs rdiff -u -r1.4 -r1.4.26.1 src/sys/arch/usermode/include/mutex.h cvs rdiff -u -r1.30 -r1.30.4.1 src/sys/arch/vax/include/intr.h cvs rdiff -u -r1.17 -r1.17.4.1 src/sys/arch/vax/include/mutex.h cvs rdiff -u -r1.21 -r1.21.60.1 src/sys/arch/x68k/include/intr.h cvs rdiff -u -r1.133 -r1.133.4.1 src/sys/arch/x86/include/cpu.h cvs rdiff -u -r1.9 -r1.9.22.1 src/sys/arch/x86/include/mutex.h cvs rdiff -u -r1.181.4.1 -r1.181.4.2 src/sys/ddb/db_command.c cvs rdiff -u -r0 -r1.2.2.2 src/sys/ddb/db_syncobj.c cvs rdiff -u -r0 -r1.1.2.2 src/sys/ddb/db_syncobj.h cvs rdiff -u -r1.5 -r1.5.20.1 src/sys/ddb/ddb.h cvs rdiff -u -r1.15 -r1.15.4.1 src/sys/ddb/files.ddb cvs rdiff -u -r1.10 -r1.10.2.1 src/sys/external/bsd/drm2/include/linux/idr.h cvs rdiff -u -r1.37 -r1.37.4.1 src/sys/kern/kern_core.c cvs rdiff -u -r1.50 -r1.50.4.1 src/sys/opencrypto/cryptodev.h cvs rdiff -u -r1.52 -r1.52.20.1 src/sys/sys/cpu_data.h cvs rdiff -u -r1.15 -r1.15.30.1 src/sys/sys/ksem.h cvs rdiff -u -r1.8 -r1.8.48.1 src/sys/sys/lua.h cvs rdiff -u -r1.370.4.1 -r1.370.4.2 src/sys/sys/proc.h cvs rdiff -u -r1.17 -r1.17.2.1 src/sys/sys/rwlock.h cvs rdiff -u -r1.91 -r1.91.2.1 src/sys/sys/sched.h cvs rdiff -u -r1.41 -r1.41.20.1 src/sys/uvm/uvm_param.h cvs rdiff -u -r1.46.6.1 -r1.46.6.2 src/usr.sbin/crash/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.