CVS commit: src/sys/arch
Module Name:src Committed By: riastradh Date: Thu Jun 27 23:58:47 UTC 2024 Modified Files: src/sys/arch/amd64/amd64: machdep.c src/sys/arch/i386/i386: machdep.c Log Message: x86: Defer x86_rndseed until after pmap_bootstrap. Loading the random seed, which is what x86_rndseed does, requires direct map access on KASLR kernels, which requires pmap_bootstrap to have run. This had been broken in amd64/machdep.c 1.359 i386/machdep.c 1.832 because we apparently don't have any automatic test setup for KASLR kernels, which we should address. This change shouldn't cause any security regression on kernels that previously owrked, because none of the logic that now happens before x86_rndseed uses the entropy pool anyway (uvm_md_init, init_x86_clusters, xen_parse_cmdline). PR port-amd64/58366 To generate a diff of this commit: cvs rdiff -u -r1.368 -r1.369 src/sys/arch/amd64/amd64/machdep.c cvs rdiff -u -r1.841 -r1.842 src/sys/arch/i386/i386/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch
Module Name:src Committed By: riastradh Date: Thu Jun 27 23:58:47 UTC 2024 Modified Files: src/sys/arch/amd64/amd64: machdep.c src/sys/arch/i386/i386: machdep.c Log Message: x86: Defer x86_rndseed until after pmap_bootstrap. Loading the random seed, which is what x86_rndseed does, requires direct map access on KASLR kernels, which requires pmap_bootstrap to have run. This had been broken in amd64/machdep.c 1.359 i386/machdep.c 1.832 because we apparently don't have any automatic test setup for KASLR kernels, which we should address. This change shouldn't cause any security regression on kernels that previously owrked, because none of the logic that now happens before x86_rndseed uses the entropy pool anyway (uvm_md_init, init_x86_clusters, xen_parse_cmdline). PR port-amd64/58366 To generate a diff of this commit: cvs rdiff -u -r1.368 -r1.369 src/sys/arch/amd64/amd64/machdep.c cvs rdiff -u -r1.841 -r1.842 src/sys/arch/i386/i386/machdep.c 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/amd64/amd64/machdep.c diff -u src/sys/arch/amd64/amd64/machdep.c:1.368 src/sys/arch/amd64/amd64/machdep.c:1.369 --- src/sys/arch/amd64/amd64/machdep.c:1.368 Tue Mar 5 14:15:28 2024 +++ src/sys/arch/amd64/amd64/machdep.c Thu Jun 27 23:58:46 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.368 2024/03/05 14:15:28 thorpej Exp $ */ +/* $NetBSD: machdep.c,v 1.369 2024/06/27 23:58:46 riastradh Exp $ */ /* * Copyright (c) 1996, 1997, 1998, 2000, 2006, 2007, 2008, 2011 @@ -110,7 +110,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.368 2024/03/05 14:15:28 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.369 2024/06/27 23:58:46 riastradh Exp $"); #include "opt_modular.h" #include "opt_user_ldt.h" @@ -1755,15 +1755,6 @@ init_x86_64(paddr_t first_avail) consinit(); /* XXX SHOULD NOT BE DONE HERE */ /* - * Initialize RNG to get entropy ASAP either from CPU - * RDRAND/RDSEED or from seed on disk. Must happen after - * cpu_init_msrs. Prefer to happen after consinit so we have - * the opportunity to print useful feedback. - */ - cpu_rng_init(); - x86_rndseed(); - - /* * Initialize PAGE_SIZE-dependent variables. */ uvm_md_init(); @@ -1803,6 +1794,22 @@ init_x86_64(paddr_t first_avail) */ pmap_bootstrap(VM_MIN_KERNEL_ADDRESS); + /* + * Initialize RNG to get entropy ASAP either from CPU + * RDRAND/RDSEED or from seed on disk. Constraints: + * + * - Must happen after cpu_init_msrs so that curcpu() and + * curlwp work. + * + * - Must happen after consinit so we have the opportunity to + * print useful feedback. + * + * - On KASLR kernels, must happen after pmap_bootstrap because + * x86_rndseed requires access to the direct map. + */ + cpu_rng_init(); + x86_rndseed(); + #ifndef XENPV /* Internalize the physical pages into the VM system. */ init_x86_vm(avail_start); Index: src/sys/arch/i386/i386/machdep.c diff -u src/sys/arch/i386/i386/machdep.c:1.841 src/sys/arch/i386/i386/machdep.c:1.842 --- src/sys/arch/i386/i386/machdep.c:1.841 Tue Mar 5 14:15:32 2024 +++ src/sys/arch/i386/i386/machdep.c Thu Jun 27 23:58:46 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.841 2024/03/05 14:15:32 thorpej Exp $ */ +/* $NetBSD: machdep.c,v 1.842 2024/06/27 23:58:46 riastradh Exp $ */ /* * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009, 2017 @@ -67,7 +67,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.841 2024/03/05 14:15:32 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.842 2024/06/27 23:58:46 riastradh Exp $"); #include "opt_beep.h" #include "opt_compat_freebsd.h" @@ -1280,15 +1280,6 @@ init386(paddr_t first_avail) consinit(); /* XXX SHOULD NOT BE DONE HERE */ - /* - * Initialize RNG to get entropy ASAP either from CPU - * RDRAND/RDSEED or from seed on disk. Must happen after - * cpu_init_msrs. Prefer to happen after consinit so we have - * the opportunity to print useful feedback. - */ - cpu_rng_init(); - x86_rndseed(); - #ifdef DEBUG_MEMLOAD printf("mem_cluster_count: %d\n", mem_cluster_cnt); #endif @@ -1299,6 +1290,22 @@ init386(paddr_t first_avail) */ pmap_bootstrap((vaddr_t)atdevbase + IOM_SIZE); + /* + * Initialize RNG to get entropy ASAP either from CPU + * RDRAND/RDSEED or from seed on disk. Constraints: + * + * - Must happen after cpu_init_msrs so that curcpu() and + * curlwp work. + * + * - Must happen after consinit so we have the opportunity to + * print useful feedback. + * + * - On KASLR kernels, must happen after pmap_bootstrap because + * x86_rndseed requires access to the direct map. + */ + cpu_rng_init(); + x86_rndseed(); + #ifndef XENPV /* Initialize the memory clusters. */ init_x86_clusters();
CVS commit: [netbsd-10] src/doc
Module Name:src Committed By: martin Date: Thu Jun 27 19:34:10 UTC 2024 Modified Files: src/doc [netbsd-10]: CHANGES-10.1 Log Message: Adjust entry for #724. Note tickets #728 and #729. To generate a diff of this commit: cvs rdiff -u -r1.1.2.14 -r1.1.2.15 src/doc/CHANGES-10.1 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-10] src/doc
Module Name:src Committed By: martin Date: Thu Jun 27 19:34:10 UTC 2024 Modified Files: src/doc [netbsd-10]: CHANGES-10.1 Log Message: Adjust entry for #724. Note tickets #728 and #729. To generate a diff of this commit: cvs rdiff -u -r1.1.2.14 -r1.1.2.15 src/doc/CHANGES-10.1 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/CHANGES-10.1 diff -u src/doc/CHANGES-10.1:1.1.2.14 src/doc/CHANGES-10.1:1.1.2.15 --- src/doc/CHANGES-10.1:1.1.2.14 Wed Jun 26 17:12:36 2024 +++ src/doc/CHANGES-10.1 Thu Jun 27 19:34:10 2024 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-10.1,v 1.1.2.14 2024/06/26 17:12:36 martin Exp $ +# $NetBSD: CHANGES-10.1,v 1.1.2.15 2024/06/27 19:34:10 martin Exp $ A complete list of changes from the NetBSD 10.0 release on 2024-03-28 until the 10.1 release: @@ -557,6 +557,24 @@ sys/modules/compat_13/Makefile 1.3-1.5 sys/modules/compat_16/Makefile 1.3,1.4 sys/modules/compat_netbsd32_13/Makefile 1.5 sys/modules/compat_netbsd32_16/Makefile 1.5 +sys/arch/amiga/amiga/locore.s 1.169 +sys/arch/atari/atari/locore.s 1.125 +sys/arch/cesfic/cesfic/locore.s 1.45 +sys/arch/hp300/hp300/locore.s 1.183 +sys/arch/luna68k/luna68k/locore.s 1.81 +sys/arch/m68k/conf/files.m68k 1.53 +sys/arch/m68k/include/pte_motorola.h 1.10 (adapted, via patch) +sys/arch/m68k/m68k/compat_13_sigreturn13.s 1.8 +sys/arch/m68k/m68k/compat_16_sigreturn14.s 1.6 +sys/arch/m68k/m68k/sigreturn.s delete +sys/arch/mac68k/mac68k/locore.s 1.182 +sys/arch/mvme68k/mvme68k/locore.s 1.129 +sys/arch/news68k/news68k/locore.s 1.84 +sys/arch/next68k/next68k/locore.s 1.84 +sys/arch/sun2/sun2/locore.s 1.37 +sys/arch/sun3/sun3/locore.s 1.109 +sys/arch/sun3/sun3x/locore.s 1.77 +sys/arch/x68k/x68k/locore.s 1.130 PR 58346: fix compat modules build. [pgoyette, ticket #724] @@ -574,3 +592,14 @@ usr.sbin/btpand/btpand.c 1.9 btpand(8): fix off-by-one bug causing out of bounds memory access. [plunky, ticket #727] +share/man/man9/atomic_loadstore.9 1.8 + + atomic_loadstore(9): PR 58340: clarify relation to __HAVE_ATOMIC64_OPS. + [rin, ticket #728] + +sys/dev/pci/igc/if_igc.h 1.3 + + igc(4): use __HAVE_ATOMIC64_LOADSTORE instead of __HAVE_ATOMIC64_OPS + to detect atomic_loadstore(9) is applicable to 64-bit integers. + [rin, ticket #729] +
CVS commit: [netbsd-10] src/sys/dev/pci/igc
Module Name:src Committed By: martin Date: Thu Jun 27 19:33:11 UTC 2024 Modified Files: src/sys/dev/pci/igc [netbsd-10]: if_igc.h Log Message: Pull up following revision(s) (requested by rin in ticket #729): sys/dev/pci/igc/if_igc.h: revision 1.3 igc: Use __HAVE_ATOMIC64_LOADSTORE instead of __HAVE_ATOMIC64_OPS to detect atomic_loadstore(9) is applicable to 64-bit integers. Thanks riastradh@ for explanation in PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.2.2.2 -r1.2.2.3 src/sys/dev/pci/igc/if_igc.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/dev/pci/igc/if_igc.h diff -u src/sys/dev/pci/igc/if_igc.h:1.2.2.2 src/sys/dev/pci/igc/if_igc.h:1.2.2.3 --- src/sys/dev/pci/igc/if_igc.h:1.2.2.2 Sun Oct 8 13:19:34 2023 +++ src/sys/dev/pci/igc/if_igc.h Thu Jun 27 19:33:11 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: if_igc.h,v 1.2.2.2 2023/10/08 13:19:34 martin Exp $ */ +/* $NetBSD: if_igc.h,v 1.2.2.3 2024/06/27 19:33:11 martin Exp $ */ /* $OpenBSD: if_igc.h,v 1.2 2022/01/09 05:42:50 jsg Exp $ */ /*- * SPDX-License-Identifier: BSD-2-Clause @@ -39,13 +39,14 @@ #endif #include +#include #include #include #include #include -#ifdef __HAVE_ATOMIC64_OPS +#ifdef __HAVE_ATOMIC64_LOADSTORE #define IGC_EVENT_COUNTERS #endif
CVS commit: [netbsd-10] src/sys/dev/pci/igc
Module Name:src Committed By: martin Date: Thu Jun 27 19:33:11 UTC 2024 Modified Files: src/sys/dev/pci/igc [netbsd-10]: if_igc.h Log Message: Pull up following revision(s) (requested by rin in ticket #729): sys/dev/pci/igc/if_igc.h: revision 1.3 igc: Use __HAVE_ATOMIC64_LOADSTORE instead of __HAVE_ATOMIC64_OPS to detect atomic_loadstore(9) is applicable to 64-bit integers. Thanks riastradh@ for explanation in PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.2.2.2 -r1.2.2.3 src/sys/dev/pci/igc/if_igc.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-10] src/share/man/man9
Module Name:src Committed By: martin Date: Thu Jun 27 19:30:29 UTC 2024 Modified Files: src/share/man/man9 [netbsd-10]: atomic_loadstore.9 Log Message: Pull up following revision(s) (requested by rin in ticket #728): share/man/man9/atomic_loadstore.9: revision 1.8 atomic_loadstore(9): Clarify relation to __HAVE_ATOMIC64_OPS. PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.7.2.1 src/share/man/man9/atomic_loadstore.9 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/share/man/man9/atomic_loadstore.9 diff -u src/share/man/man9/atomic_loadstore.9:1.7 src/share/man/man9/atomic_loadstore.9:1.7.2.1 --- src/share/man/man9/atomic_loadstore.9:1.7 Sat Apr 9 23:32:53 2022 +++ src/share/man/man9/atomic_loadstore.9 Thu Jun 27 19:30:29 2024 @@ -1,4 +1,4 @@ -.\" $NetBSD: atomic_loadstore.9,v 1.7 2022/04/09 23:32:53 riastradh Exp $ +.\" $NetBSD: atomic_loadstore.9,v 1.7.2.1 2024/06/27 19:30:29 martin Exp $ .\" .\" Copyright (c) 2019 The NetBSD Foundation .\" All rights reserved. @@ -544,9 +544,10 @@ must be zero. .Pp All .Nx -ports support atomic loads and stores on units of data up to 32 bits. -Some ports additionally support atomic loads and stores on larger -quantities, like 64-bit quantities, if +ports support cheap atomic loads and stores on units of data up to 32 +bits. +Some ports additionally support cheap atomic loads and stores on +64-bit quantities if .Dv __HAVE_ATOMIC64_LOADSTORE is defined. The macros are not allowed on larger quantities of data than the port @@ -587,6 +588,24 @@ must be conditional on ... mutex_exit(>f_lock); .Ed +.Pp +Some ports support expensive 64-bit atomic read/modify/write +operations, but not cheap 64-bit atomic loads and stores. +For example, the armv7 instruction set includes 64-bit +.Li ldrexd +and +.Li strexd +loops (load-exclusive, store-conditional) which are atomic on 64-bit +quantities. +But the cheap 64-bit +.Li ldrd / strd +instructions are only atomic on 32-bit accesses at a time. +These ports define +.Dv __HAVE_ATOMIC64_OPS +but not +.Dv __HAVE_ATOMIC64_LOADSTORE , +since they do not have cheaper 64-bit atomic load/store operations than +the full atomic read/modify/write operations. .Sh C11 COMPATIBILITY These macros are meant to follow .Tn C11
CVS commit: [netbsd-10] src/share/man/man9
Module Name:src Committed By: martin Date: Thu Jun 27 19:30:29 UTC 2024 Modified Files: src/share/man/man9 [netbsd-10]: atomic_loadstore.9 Log Message: Pull up following revision(s) (requested by rin in ticket #728): share/man/man9/atomic_loadstore.9: revision 1.8 atomic_loadstore(9): Clarify relation to __HAVE_ATOMIC64_OPS. PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.7.2.1 src/share/man/man9/atomic_loadstore.9 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-10] src/sys/arch
Module Name:src Committed By: martin Date: Thu Jun 27 19:27:29 UTC 2024 Modified Files: src/sys/arch/amiga/amiga [netbsd-10]: locore.s src/sys/arch/atari/atari [netbsd-10]: locore.s src/sys/arch/cesfic/cesfic [netbsd-10]: locore.s src/sys/arch/hp300/hp300 [netbsd-10]: locore.s src/sys/arch/luna68k/luna68k [netbsd-10]: locore.s src/sys/arch/m68k/conf [netbsd-10]: files.m68k src/sys/arch/m68k/include [netbsd-10]: pte_motorola.h src/sys/arch/m68k/m68k [netbsd-10]: compat_13_sigreturn13.s compat_16_sigreturn14.s src/sys/arch/mac68k/mac68k [netbsd-10]: locore.s src/sys/arch/mvme68k/mvme68k [netbsd-10]: locore.s src/sys/arch/news68k/news68k [netbsd-10]: locore.s src/sys/arch/next68k/next68k [netbsd-10]: locore.s src/sys/arch/sun2/sun2 [netbsd-10]: locore.s src/sys/arch/sun3/sun3 [netbsd-10]: locore.s src/sys/arch/sun3/sun3x [netbsd-10]: locore.s src/sys/arch/x68k/x68k [netbsd-10]: locore.s Removed Files: src/sys/arch/m68k/m68k [netbsd-10]: sigreturn.s Log Message: Pull up following revision(s) (requested by rin in ticket #724 to fix build fallout on the branch): sys/arch/m68k/m68k/compat_16_sigreturn14.s: revision 1.6 sys/arch/mvme68k/mvme68k/locore.s: revision 1.129 sys/arch/news68k/news68k/locore.s: revision 1.84 sys/arch/hp300/hp300/locore.s: revision 1.183 sys/arch/m68k/m68k/compat_13_sigreturn13.s: revision 1.8 sys/arch/m68k/m68k/sigreturn.s: file removal sys/arch/m68k/include/pte_motorola.h: revision 1.10 sys/arch/atari/atari/locore.s: revision 1.125 sys/arch/amiga/amiga/locore.s: revision 1.169 sys/arch/sun2/sun2/locore.s: revision 1.37 sys/arch/next68k/next68k/locore.s: revision 1.84 sys/arch/x68k/x68k/locore.s: revision 1.130 sys/arch/sun3/sun3x/locore.s: revision 1.77 sys/arch/cesfic/cesfic/locore.s: revision 1.45 sys/arch/m68k/conf/files.m68k: revision 1.53 sys/arch/sun3/sun3/locore.s: revision 1.109 sys/arch/luna68k/luna68k/locore.s: revision 1.81 sys/arch/mac68k/mac68k/locore.s: revision 1.182 Define PTE used in the pmap module int terms of the bit definitions in mmu_{51,40}.h. Make compat_13_sigreturn13.s and compat_16_sigreturn14.s build as their own stand-alone files and G/C the now-empty sigreturn.s. To generate a diff of this commit: cvs rdiff -u -r1.161 -r1.161.4.1 src/sys/arch/amiga/amiga/locore.s cvs rdiff -u -r1.116 -r1.116.4.1 src/sys/arch/atari/atari/locore.s cvs rdiff -u -r1.34 -r1.34.4.1 src/sys/arch/cesfic/cesfic/locore.s cvs rdiff -u -r1.173 -r1.173.4.1 src/sys/arch/hp300/hp300/locore.s cvs rdiff -u -r1.68 -r1.68.4.1 src/sys/arch/luna68k/luna68k/locore.s cvs rdiff -u -r1.51 -r1.51.20.1 src/sys/arch/m68k/conf/files.m68k cvs rdiff -u -r1.8 -r1.8.86.1 src/sys/arch/m68k/include/pte_motorola.h cvs rdiff -u -r1.7 -r1.7.60.1 src/sys/arch/m68k/m68k/compat_13_sigreturn13.s cvs rdiff -u -r1.5 -r1.5.60.1 src/sys/arch/m68k/m68k/compat_16_sigreturn14.s cvs rdiff -u -r1.11 -r0 src/sys/arch/m68k/m68k/sigreturn.s cvs rdiff -u -r1.175 -r1.175.4.1 src/sys/arch/mac68k/mac68k/locore.s cvs rdiff -u -r1.118 -r1.118.4.1 src/sys/arch/mvme68k/mvme68k/locore.s cvs rdiff -u -r1.68 -r1.68.4.1 src/sys/arch/news68k/news68k/locore.s cvs rdiff -u -r1.68.4.2 -r1.68.4.3 src/sys/arch/next68k/next68k/locore.s cvs rdiff -u -r1.29 -r1.29.4.1 src/sys/arch/sun2/sun2/locore.s cvs rdiff -u -r1.101 -r1.101.4.1 src/sys/arch/sun3/sun3/locore.s cvs rdiff -u -r1.69 -r1.69.4.1 src/sys/arch/sun3/sun3x/locore.s cvs rdiff -u -r1.121 -r1.121.4.1 src/sys/arch/x68k/x68k/locore.s 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/amiga/amiga/locore.s diff -u src/sys/arch/amiga/amiga/locore.s:1.161 src/sys/arch/amiga/amiga/locore.s:1.161.4.1 --- src/sys/arch/amiga/amiga/locore.s:1.161 Mon May 30 09:56:02 2022 +++ src/sys/arch/amiga/amiga/locore.s Thu Jun 27 19:27:28 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.161 2022/05/30 09:56:02 andvar Exp $ */ +/* $NetBSD: locore.s,v 1.161.4.1 2024/06/27 19:27:28 martin Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -423,9 +423,6 @@ ENTRY_NOPROFILE(trace) moveq #T_TRACE,%d0 jra _ASM_LABEL(fault) -/* Use common m68k sigreturn */ -#include - /* * Interrupt handlers. * Index: src/sys/arch/atari/atari/locore.s diff -u src/sys/arch/atari/atari/locore.s:1.116 src/sys/arch/atari/atari/locore.s:1.116.4.1 --- src/sys/arch/atari/atari/locore.s:1.116 Mon May 30 09:56:03 2022 +++ src/sys/arch/atari/atari/locore.s Thu Jun 27 19:27:28 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.s,v 1.116 2022/05/30 09:56:03 andvar Exp $ */ +/* $NetBSD: locore.s,v 1.116.4.1 2024/06/27 19:27:28 martin Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -618,9 +618,6 @@ Lbrkpt3: movl
CVS commit: [netbsd-10] src/sys/arch
Module Name:src Committed By: martin Date: Thu Jun 27 19:27:29 UTC 2024 Modified Files: src/sys/arch/amiga/amiga [netbsd-10]: locore.s src/sys/arch/atari/atari [netbsd-10]: locore.s src/sys/arch/cesfic/cesfic [netbsd-10]: locore.s src/sys/arch/hp300/hp300 [netbsd-10]: locore.s src/sys/arch/luna68k/luna68k [netbsd-10]: locore.s src/sys/arch/m68k/conf [netbsd-10]: files.m68k src/sys/arch/m68k/include [netbsd-10]: pte_motorola.h src/sys/arch/m68k/m68k [netbsd-10]: compat_13_sigreturn13.s compat_16_sigreturn14.s src/sys/arch/mac68k/mac68k [netbsd-10]: locore.s src/sys/arch/mvme68k/mvme68k [netbsd-10]: locore.s src/sys/arch/news68k/news68k [netbsd-10]: locore.s src/sys/arch/next68k/next68k [netbsd-10]: locore.s src/sys/arch/sun2/sun2 [netbsd-10]: locore.s src/sys/arch/sun3/sun3 [netbsd-10]: locore.s src/sys/arch/sun3/sun3x [netbsd-10]: locore.s src/sys/arch/x68k/x68k [netbsd-10]: locore.s Removed Files: src/sys/arch/m68k/m68k [netbsd-10]: sigreturn.s Log Message: Pull up following revision(s) (requested by rin in ticket #724 to fix build fallout on the branch): sys/arch/m68k/m68k/compat_16_sigreturn14.s: revision 1.6 sys/arch/mvme68k/mvme68k/locore.s: revision 1.129 sys/arch/news68k/news68k/locore.s: revision 1.84 sys/arch/hp300/hp300/locore.s: revision 1.183 sys/arch/m68k/m68k/compat_13_sigreturn13.s: revision 1.8 sys/arch/m68k/m68k/sigreturn.s: file removal sys/arch/m68k/include/pte_motorola.h: revision 1.10 sys/arch/atari/atari/locore.s: revision 1.125 sys/arch/amiga/amiga/locore.s: revision 1.169 sys/arch/sun2/sun2/locore.s: revision 1.37 sys/arch/next68k/next68k/locore.s: revision 1.84 sys/arch/x68k/x68k/locore.s: revision 1.130 sys/arch/sun3/sun3x/locore.s: revision 1.77 sys/arch/cesfic/cesfic/locore.s: revision 1.45 sys/arch/m68k/conf/files.m68k: revision 1.53 sys/arch/sun3/sun3/locore.s: revision 1.109 sys/arch/luna68k/luna68k/locore.s: revision 1.81 sys/arch/mac68k/mac68k/locore.s: revision 1.182 Define PTE used in the pmap module int terms of the bit definitions in mmu_{51,40}.h. Make compat_13_sigreturn13.s and compat_16_sigreturn14.s build as their own stand-alone files and G/C the now-empty sigreturn.s. To generate a diff of this commit: cvs rdiff -u -r1.161 -r1.161.4.1 src/sys/arch/amiga/amiga/locore.s cvs rdiff -u -r1.116 -r1.116.4.1 src/sys/arch/atari/atari/locore.s cvs rdiff -u -r1.34 -r1.34.4.1 src/sys/arch/cesfic/cesfic/locore.s cvs rdiff -u -r1.173 -r1.173.4.1 src/sys/arch/hp300/hp300/locore.s cvs rdiff -u -r1.68 -r1.68.4.1 src/sys/arch/luna68k/luna68k/locore.s cvs rdiff -u -r1.51 -r1.51.20.1 src/sys/arch/m68k/conf/files.m68k cvs rdiff -u -r1.8 -r1.8.86.1 src/sys/arch/m68k/include/pte_motorola.h cvs rdiff -u -r1.7 -r1.7.60.1 src/sys/arch/m68k/m68k/compat_13_sigreturn13.s cvs rdiff -u -r1.5 -r1.5.60.1 src/sys/arch/m68k/m68k/compat_16_sigreturn14.s cvs rdiff -u -r1.11 -r0 src/sys/arch/m68k/m68k/sigreturn.s cvs rdiff -u -r1.175 -r1.175.4.1 src/sys/arch/mac68k/mac68k/locore.s cvs rdiff -u -r1.118 -r1.118.4.1 src/sys/arch/mvme68k/mvme68k/locore.s cvs rdiff -u -r1.68 -r1.68.4.1 src/sys/arch/news68k/news68k/locore.s cvs rdiff -u -r1.68.4.2 -r1.68.4.3 src/sys/arch/next68k/next68k/locore.s cvs rdiff -u -r1.29 -r1.29.4.1 src/sys/arch/sun2/sun2/locore.s cvs rdiff -u -r1.101 -r1.101.4.1 src/sys/arch/sun3/sun3/locore.s cvs rdiff -u -r1.69 -r1.69.4.1 src/sys/arch/sun3/sun3x/locore.s cvs rdiff -u -r1.121 -r1.121.4.1 src/sys/arch/x68k/x68k/locore.s Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp
Module Name:src Committed By: hannken Date: Thu Jun 27 12:21:20 UTC 2024 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp: nouveau_nvkm_engine_disp_sorgm200.c Log Message: With GCC12 kernel ALL/amd64 triggers "'sor' may be used uninitialized". If "sublinks & 3" is zero GCC is right and sor[1] may be returned unitialized. Fix by initializing "sor" to zero to return -1 instead of uninitialized value. Ok: Taylor R Campbell To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c diff -u src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c:1.2 src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c:1.3 --- src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c:1.2 Sat Dec 18 23:45:35 2021 +++ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c Thu Jun 27 12:21:20 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: nouveau_nvkm_engine_disp_sorgm200.c,v 1.2 2021/12/18 23:45:35 riastradh Exp $ */ +/* $NetBSD: nouveau_nvkm_engine_disp_sorgm200.c,v 1.3 2024/06/27 12:21:20 hannken Exp $ */ /* * Copyright 2012 Red Hat Inc. @@ -24,7 +24,7 @@ * Authors: Ben Skeggs */ #include -__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_disp_sorgm200.c,v 1.2 2021/12/18 23:45:35 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: nouveau_nvkm_engine_disp_sorgm200.c,v 1.3 2024/06/27 12:21:20 hannken Exp $"); #include "ior.h" @@ -74,6 +74,7 @@ gm200_sor_route_get(struct nvkm_outp *ou const int sublinks = outp->info.sorconf.link; int lnk[2], sor[2], m, s; + sor[0] = sor[1] = 0; /* GCC 12.3 maybe-uninitialized */ for (*link = 0, m = __ffs(outp->info.or) * 2, s = 0; s < 2; m++, s++) { if (sublinks & BIT(s)) { u32 data = nvkm_rd32(device, 0x612308 + (m * 0x80));
CVS commit: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp
Module Name:src Committed By: hannken Date: Thu Jun 27 12:21:20 UTC 2024 Modified Files: src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp: nouveau_nvkm_engine_disp_sorgm200.c Log Message: With GCC12 kernel ALL/amd64 triggers "'sor' may be used uninitialized". If "sublinks & 3" is zero GCC is right and sor[1] may be returned unitialized. Fix by initializing "sor" to zero to return -1 instead of uninitialized value. Ok: Taylor R Campbell To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/disp/nouveau_nvkm_engine_disp_sorgm200.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/pci/igc
Module Name:src Committed By: rin Date: Thu Jun 27 07:31:42 UTC 2024 Modified Files: src/sys/dev/pci/igc: if_igc.h Log Message: igc: Use __HAVE_ATOMIC64_LOADSTORE instead of __HAVE_ATOMIC64_OPS to detect atomic_loadstore(9) is applicable to 64-bit integers. Thanks riastradh@ for explanation in PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/dev/pci/igc/if_igc.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/dev/pci/igc/if_igc.h diff -u src/sys/dev/pci/igc/if_igc.h:1.2 src/sys/dev/pci/igc/if_igc.h:1.3 --- src/sys/dev/pci/igc/if_igc.h:1.2 Wed Oct 4 07:35:27 2023 +++ src/sys/dev/pci/igc/if_igc.h Thu Jun 27 07:31:41 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: if_igc.h,v 1.2 2023/10/04 07:35:27 rin Exp $ */ +/* $NetBSD: if_igc.h,v 1.3 2024/06/27 07:31:41 rin Exp $ */ /* $OpenBSD: if_igc.h,v 1.2 2022/01/09 05:42:50 jsg Exp $ */ /*- * SPDX-License-Identifier: BSD-2-Clause @@ -39,13 +39,14 @@ #endif #include +#include #include #include #include #include -#ifdef __HAVE_ATOMIC64_OPS +#ifdef __HAVE_ATOMIC64_LOADSTORE #define IGC_EVENT_COUNTERS #endif
CVS commit: src/sys/dev/pci/igc
Module Name:src Committed By: rin Date: Thu Jun 27 07:31:42 UTC 2024 Modified Files: src/sys/dev/pci/igc: if_igc.h Log Message: igc: Use __HAVE_ATOMIC64_LOADSTORE instead of __HAVE_ATOMIC64_OPS to detect atomic_loadstore(9) is applicable to 64-bit integers. Thanks riastradh@ for explanation in PR kern/58340 To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/dev/pci/igc/if_igc.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.