CVS commit: src/sys/arch/evbarm/include
Module Name:src Committed By: jmcneill Date: Wed Jul 5 09:37:14 UTC 2017 Modified Files: src/sys/arch/evbarm/include: bootconfig.h Log Message: Wrap include of opt_machdep.h in ifdef _KERNEL_OPT To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/sys/arch/evbarm/include/bootconfig.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/evbarm/include/bootconfig.h diff -u src/sys/arch/evbarm/include/bootconfig.h:1.7 src/sys/arch/evbarm/include/bootconfig.h:1.8 --- src/sys/arch/evbarm/include/bootconfig.h:1.7 Wed Jul 5 01:08:45 2017 +++ src/sys/arch/evbarm/include/bootconfig.h Wed Jul 5 09:37:14 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: bootconfig.h,v 1.7 2017/07/05 01:08:45 jmcneill Exp $ */ +/* $NetBSD: bootconfig.h,v 1.8 2017/07/05 09:37:14 jmcneill Exp $ */ /* * Copyright (c) 1994 Mark Brinicombe. @@ -36,7 +36,9 @@ * SUCH DAMAGE. */ +#ifdef _KERNEL_OPT #include "opt_machdep.h" +#endif #include
CVS commit: src/doc
Module Name:src Committed By: wiz Date: Wed Jul 5 11:22:18 UTC 2017 Modified Files: src/doc: 3RDPARTY Log Message: gcc 6.4 out. To generate a diff of this commit: cvs rdiff -u -r1.1455 -r1.1456 src/doc/3RDPARTY Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/3RDPARTY diff -u src/doc/3RDPARTY:1.1455 src/doc/3RDPARTY:1.1456 --- src/doc/3RDPARTY:1.1455 Fri Jun 30 11:52:32 2017 +++ src/doc/3RDPARTY Wed Jul 5 11:22:18 2017 @@ -1,4 +1,4 @@ -# $NetBSD: 3RDPARTY,v 1.1455 2017/06/30 11:52:32 christos Exp $ +# $NetBSD: 3RDPARTY,v 1.1456 2017/07/05 11:22:18 wiz Exp $ # # This file contains a list of the software that has been integrated into # NetBSD where we are not the primary maintainer. @@ -452,7 +452,7 @@ There is a flex2netbsd script to help ne Package: gcc Version: 4.8.5/5.4 -Current Vers: 4.8.5/5.4/6.3/7.1 +Current Vers: 4.8.5/5.4/6.4/7.1 Maintainer: FSF Archive Site: ftp://ftp.gnu.org/gnu/gcc/ Home Page: http://www.gnu.org/software/gcc/
CVS commit: [netbsd-8] src/sys/arch
Module Name:src Committed By: martin Date: Wed Jul 5 13:58:49 UTC 2017 Modified Files: src/sys/arch/amd64/conf [netbsd-8]: GENERIC XEN3_DOM0 XEN3_DOMU src/sys/arch/cobalt/conf [netbsd-8]: GENERIC src/sys/arch/evbarm/conf [netbsd-8]: BEAGLEBOARD BEAGLEBOARDXM BEAGLEBONE GENERIC.common src/sys/arch/i386/conf [netbsd-8]: GENERIC XEN3_DOM0 XEN3_DOMU src/sys/arch/landisk/conf [netbsd-8]: GENERIC src/sys/arch/mvmeppc/conf [netbsd-8]: GENERIC src/sys/arch/pmax/conf [netbsd-8]: GENERIC src/sys/arch/shark/conf [netbsd-8]: GENERIC src/sys/arch/sparc64/conf [netbsd-8]: GENERIC src/sys/arch/zaurus/conf [netbsd-8]: GENERIC Log Message: Remove options DIAGNOSTIC/DEBUG and PAX debug options. Requested by snj in #60. To generate a diff of this commit: cvs rdiff -u -r1.459 -r1.459.2.1 src/sys/arch/amd64/conf/GENERIC cvs rdiff -u -r1.135.4.1 -r1.135.4.2 src/sys/arch/amd64/conf/XEN3_DOM0 cvs rdiff -u -r1.75 -r1.75.2.1 src/sys/arch/amd64/conf/XEN3_DOMU cvs rdiff -u -r1.151 -r1.151.8.1 src/sys/arch/cobalt/conf/GENERIC cvs rdiff -u -r1.61 -r1.61.6.1 src/sys/arch/evbarm/conf/BEAGLEBOARD cvs rdiff -u -r1.23.6.1 -r1.23.6.2 src/sys/arch/evbarm/conf/BEAGLEBOARDXM cvs rdiff -u -r1.42.2.1 -r1.42.2.2 src/sys/arch/evbarm/conf/BEAGLEBONE cvs rdiff -u -r1.18 -r1.18.6.1 src/sys/arch/evbarm/conf/GENERIC.common cvs rdiff -u -r1.1156 -r1.1156.2.1 src/sys/arch/i386/conf/GENERIC cvs rdiff -u -r1.112.4.1 -r1.112.4.2 src/sys/arch/i386/conf/XEN3_DOM0 cvs rdiff -u -r1.77 -r1.77.2.1 src/sys/arch/i386/conf/XEN3_DOMU cvs rdiff -u -r1.54 -r1.54.6.1 src/sys/arch/landisk/conf/GENERIC cvs rdiff -u -r1.27 -r1.27.6.1 src/sys/arch/mvmeppc/conf/GENERIC cvs rdiff -u -r1.190 -r1.190.8.1 src/sys/arch/pmax/conf/GENERIC cvs rdiff -u -r1.127 -r1.127.6.1 src/sys/arch/shark/conf/GENERIC cvs rdiff -u -r1.198 -r1.198.6.1 src/sys/arch/sparc64/conf/GENERIC cvs rdiff -u -r1.73 -r1.73.6.1 src/sys/arch/zaurus/conf/GENERIC 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/conf/GENERIC diff -u src/sys/arch/amd64/conf/GENERIC:1.459 src/sys/arch/amd64/conf/GENERIC:1.459.2.1 --- src/sys/arch/amd64/conf/GENERIC:1.459 Sat May 27 22:53:29 2017 +++ src/sys/arch/amd64/conf/GENERIC Wed Jul 5 13:58:48 2017 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.459 2017/05/27 22:53:29 bouyer Exp $ +# $NetBSD: GENERIC,v 1.459.2.1 2017/07/05 13:58:48 martin Exp $ # # GENERIC machine description file # @@ -22,7 +22,7 @@ include "arch/amd64/conf/std.amd64" options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.459 $" +#ident "GENERIC-$Revision: 1.459.2.1 $" maxusers 64 # estimated number of users @@ -89,7 +89,7 @@ vmt0 at cpu0 # VMware Tools options BUFQ_PRIOCSCAN # Diagnostic/debugging support options -options DIAGNOSTIC # inexpensive kernel consistency checks +#options DIAGNOSTIC # inexpensive kernel consistency checks # XXX to be commented out on release branch #options DEBUG # expensive debugging checks/support #options LOCKDEBUG # expensive locking checks/support @@ -1339,6 +1339,6 @@ options VERIFIED_EXEC_FP_MD5 options PAX_SEGVGUARD=0 # PaX Segmentation fault guard options PAX_MPROTECT=1 # PaX mprotect(2) restrictions -options PAX_MPROTECT_DEBUG=1 # PaX mprotect debug +#options PAX_MPROTECT_DEBUG=1 # PaX mprotect debug options PAX_ASLR=1 # PaX Address Space Layout Randomization -options PAX_ASLR_DEBUG=1 # PaX ASLR debug +#options PAX_ASLR_DEBUG=1 # PaX ASLR debug Index: src/sys/arch/amd64/conf/XEN3_DOM0 diff -u src/sys/arch/amd64/conf/XEN3_DOM0:1.135.4.1 src/sys/arch/amd64/conf/XEN3_DOM0:1.135.4.2 --- src/sys/arch/amd64/conf/XEN3_DOM0:1.135.4.1 Fri Jun 30 06:27:38 2017 +++ src/sys/arch/amd64/conf/XEN3_DOM0 Wed Jul 5 13:58:48 2017 @@ -1,4 +1,4 @@ -# $NetBSD: XEN3_DOM0,v 1.135.4.1 2017/06/30 06:27:38 snj Exp $ +# $NetBSD: XEN3_DOM0,v 1.135.4.2 2017/07/05 13:58:48 martin Exp $ include "arch/amd64/conf/std.xen" @@ -50,7 +50,7 @@ options SYSCTL_INCLUDE_DESCR # Include options BUFQ_PRIOCSCAN # Diagnostic/debugging support options -options DIAGNOSTIC # inexpensive kernel consistency checks +#options DIAGNOSTIC # inexpensive kernel consistency checks #options DEBUG # expensive debugging checks/support options DDB # in-kernel debugger options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic' Index: src/sys/arch/amd64/conf/XEN3_DOMU diff -u src/sys/arch/amd64/conf/XEN3_DOMU:1.75 src/sys/arch/amd64/conf/XEN3_DOMU:1.75.2.1 --- src/sys/arch/amd64/conf/XEN3_DOMU:1.75 Sun May 21 06:19:37 2017 +++ src/sys/arch/amd64/conf/XEN3_DOMU Wed Jul 5 13:58:48 2017 @@ -1,4 +1,4 @@ -# $NetBSD: XEN3_DOMU,v 1.75 2017/05/21 06:19:37 pgoyette Exp $ +# $NetBSD: XEN3_DOMU,v 1.75.2.1 2017/07/05 13:58:48 martin Exp $ include "arch/amd64/conf/std.xen" @@ -42,7 +42,7 @@ options SYSCTL_INCLUDE_DES
CVS commit: [netbsd-8] src/sys/arch
Module Name:src Committed By: martin Date: Wed Jul 5 15:48:02 UTC 2017 Modified Files: src/sys/arch/arm/footbridge [netbsd-8]: footbridge_io.c src/sys/arch/cats/cats [netbsd-8]: cats_machdep.c src/sys/arch/cats/conf [netbsd-8]: GENERIC Log Message: Pull up following revision(s) (requested by skrll in ticket #83): sys/arch/cats/cats/cats_machdep.c: revision 1.84 sys/arch/arm/footbridge/footbridge_io.c: revision 1.23 sys/arch/cats/conf/GENERIC: revision 1.162 Use devmap if available Now that bus_space can use devmap - use it for early console Comment out a bunch of thing so that a GENERIC kernel boots on my cats with cyclone firmware To generate a diff of this commit: cvs rdiff -u -r1.22 -r1.22.22.1 src/sys/arch/arm/footbridge/footbridge_io.c cvs rdiff -u -r1.83 -r1.83.6.1 src/sys/arch/cats/cats/cats_machdep.c cvs rdiff -u -r1.161 -r1.161.8.1 src/sys/arch/cats/conf/GENERIC 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/arm/footbridge/footbridge_io.c diff -u src/sys/arch/arm/footbridge/footbridge_io.c:1.22 src/sys/arch/arm/footbridge/footbridge_io.c:1.22.22.1 --- src/sys/arch/arm/footbridge/footbridge_io.c:1.22 Sat Feb 22 20:33:00 2014 +++ src/sys/arch/arm/footbridge/footbridge_io.c Wed Jul 5 15:48:01 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: footbridge_io.c,v 1.22 2014/02/22 20:33:00 matt Exp $ */ +/* $NetBSD: footbridge_io.c,v 1.22.22.1 2017/07/05 15:48:01 martin Exp $ */ /* * Copyright (c) 1997 Causality Limited @@ -39,7 +39,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: footbridge_io.c,v 1.22 2014/02/22 20:33:00 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: footbridge_io.c,v 1.22.22.1 2017/07/05 15:48:01 martin Exp $"); #include #include @@ -182,8 +182,8 @@ int footbridge_mem_bs_map(void *t, bus_addr_t bpa, bus_size_t size, int flags, bus_space_handle_t *bshp) { - bus_addr_t startpa, endpa, pa; - vaddr_t va; + paddr_t startpa, endpa, pa; + const struct pmap_devmap *pd; /* Round the allocation to page boundries */ startpa = trunc_page(bpa); @@ -200,12 +200,19 @@ footbridge_mem_bs_map(void *t, bus_addr_ return 0; } + pa = bpa; + if ((pd = pmap_devmap_find_pa(pa, size)) != NULL) { + /* Device was statically mapped. */ + *bshp = pd->pd_va + (pa - pd->pd_pa); + return 0; + } + /* * Eventually this function will do the mapping check for overlapping / * multiple mappings */ - va = uvm_km_alloc(kernel_map, endpa - startpa, 0, + vaddr_t va = uvm_km_alloc(kernel_map, endpa - startpa, 0, UVM_KMF_VAONLY | UVM_KMF_NOWAIT); if (va == 0) return ENOMEM; Index: src/sys/arch/cats/cats/cats_machdep.c diff -u src/sys/arch/cats/cats/cats_machdep.c:1.83 src/sys/arch/cats/cats/cats_machdep.c:1.83.6.1 --- src/sys/arch/cats/cats/cats_machdep.c:1.83 Sun Mar 19 12:46:21 2017 +++ src/sys/arch/cats/cats/cats_machdep.c Wed Jul 5 15:48:01 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: cats_machdep.c,v 1.83 2017/03/19 12:46:21 skrll Exp $ */ +/* $NetBSD: cats_machdep.c,v 1.83.6.1 2017/07/05 15:48:01 martin Exp $ */ /* * Copyright (c) 1997,1998 Mark Brinicombe. @@ -40,7 +40,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: cats_machdep.c,v 1.83 2017/03/19 12:46:21 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cats_machdep.c,v 1.83.6.1 2017/07/05 15:48:01 martin Exp $"); #include "opt_ddb.h" #include "opt_modular.h" @@ -266,7 +266,7 @@ initarm(void *arm_bootargs) pmap_devmap_bootstrap((vaddr_t)ebsabootinfo.bt_l1, cats_devmap); #ifdef FCOM_INIT_ARM - fcomcnattach(DC21285_ARMCSR_BASE, comcnspeed, comcnmode); + fcomcnattach(DC21285_ARMCSR_VBASE, comcnspeed, comcnmode); #endif /* Talk to the user */ Index: src/sys/arch/cats/conf/GENERIC diff -u src/sys/arch/cats/conf/GENERIC:1.161 src/sys/arch/cats/conf/GENERIC:1.161.8.1 --- src/sys/arch/cats/conf/GENERIC:1.161 Tue Dec 13 20:42:16 2016 +++ src/sys/arch/cats/conf/GENERIC Wed Jul 5 15:48:02 2017 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.161 2016/12/13 20:42:16 christos Exp $ +# $NetBSD: GENERIC,v 1.161.8.1 2017/07/05 15:48:02 martin Exp $ # # GENERIC machine description file # @@ -53,22 +53,22 @@ makeoptions CPUFLAGS="-march=armv4 -mtun # File systems file-system FFS # UFS -file-system LFS # log-structured file system +#file-system LFS # log-structured file system file-system MFS # memory file system file-system NFS # Network file system -file-system ADOSFS # AmigaDOS-compatible file system -file-system EXT2FS # second extended file system (linux) +#file-system ADOSFS # AmigaDOS-compatible file system +#file-system EXT2FS # second extended file system (linux) file-system CD9660 # ISO 9660 + Rock Ridge file system file-system MSDOSFS # MS-DOS file system file-system FDESC # /dev/fd file-system KERNFS # /kern file-system NULLFS # loopback file system -file-system OVERLAY # overlay filesystem +#file-system OVERLAY # overlay fi
CVS commit: [netbsd-8] src/sys/miscfs/genfs
Module Name:src Committed By: martin Date: Wed Jul 5 15:50:24 UTC 2017 Modified Files: src/sys/miscfs/genfs [netbsd-8]: genfs_io.c Log Message: Pull up following revision(s) (requested by hannken in ticket #84): sys/miscfs/genfs/genfs_io.c: revision 1.70 Add missing check for dead or dying vnode to the entry of genfs_getpages(). To generate a diff of this commit: cvs rdiff -u -r1.68.6.1 -r1.68.6.2 src/sys/miscfs/genfs/genfs_io.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/miscfs/genfs/genfs_io.c diff -u src/sys/miscfs/genfs/genfs_io.c:1.68.6.1 src/sys/miscfs/genfs/genfs_io.c:1.68.6.2 --- src/sys/miscfs/genfs/genfs_io.c:1.68.6.1 Sun Jun 4 20:35:01 2017 +++ src/sys/miscfs/genfs/genfs_io.c Wed Jul 5 15:50:24 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: genfs_io.c,v 1.68.6.1 2017/06/04 20:35:01 bouyer Exp $ */ +/* $NetBSD: genfs_io.c,v 1.68.6.2 2017/07/05 15:50:24 martin Exp $ */ /* * Copyright (c) 1982, 1986, 1989, 1993 @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.68.6.1 2017/06/04 20:35:01 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: genfs_io.c,v 1.68.6.2 2017/07/05 15:50:24 martin Exp $"); #include #include @@ -139,6 +139,13 @@ genfs_getpages(void *v) KASSERT(vp->v_type == VREG || vp->v_type == VDIR || vp->v_type == VLNK || vp->v_type == VBLK); + error = vdead_check(vp, VDEAD_NOWAIT); + if (error) { + if ((flags & PGO_LOCKED) == 0) + mutex_exit(uobj->vmobjlock); + return error; + } + startover: error = 0; const voff_t origvsize = vp->v_size;
CVS commit: [netbsd-8] src/external/gpl3/gcc/usr.bin
Module Name:src Committed By: martin Date: Wed Jul 5 15:56:58 UTC 2017 Modified Files: src/external/gpl3/gcc/usr.bin/backend [netbsd-8]: Makefile src/external/gpl3/gcc/usr.bin/host-libcpp [netbsd-8]: Makefile Log Message: Pull up following revision(s) (requested by joerg in ticket #85): external/gpl3/gcc/usr.bin/backend/Makefile: revision 1.37 external/gpl3/gcc/usr.bin/host-libcpp/Makefile: revision 1.3 Honor HOST_CXX. To generate a diff of this commit: cvs rdiff -u -r1.36 -r1.36.4.1 src/external/gpl3/gcc/usr.bin/backend/Makefile cvs rdiff -u -r1.2 -r1.2.6.1 \ src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/gcc/usr.bin/backend/Makefile diff -u src/external/gpl3/gcc/usr.bin/backend/Makefile:1.36 src/external/gpl3/gcc/usr.bin/backend/Makefile:1.36.4.1 --- src/external/gpl3/gcc/usr.bin/backend/Makefile:1.36 Tue Feb 14 00:20:20 2017 +++ src/external/gpl3/gcc/usr.bin/backend/Makefile Wed Jul 5 15:56:58 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.36 2017/02/14 00:20:20 rin Exp $ +# $NetBSD: Makefile,v 1.36.4.1 2017/07/05 15:56:58 martin Exp $ LIBISPRIVATE= yes @@ -210,7 +210,7 @@ auto-build.h: gmp.h Makefile mkdir .ab && \ (cd .ab && \ AWK=${TOOL_AWK:Q} \ - CC=${ORIGHOST_CC:Q} CFLAGS=${HOST_CFLAGS:Q} \ + CC=${ORIGHOST_CC:Q} CFLAGS=${HOST_CFLAGS:Q} CXX=${HOST_CXX:Q} \ MAKE=${TOOL_GMAKE:Q} \ CONFIG_SHELL=${HOST_SH:Q} \ gcc_cv_ld=${LD:Q} \ Index: src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile diff -u src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.2 src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.2.6.1 --- src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile:1.2 Sun Aug 14 16:04:50 2016 +++ src/external/gpl3/gcc/usr.bin/host-libcpp/Makefile Wed Jul 5 15:56:58 2017 @@ -1,14 +1,14 @@ -# $NetBSD: Makefile,v 1.2 2016/08/14 16:04:50 tls Exp $ +# $NetBSD: Makefile,v 1.2.6.1 2017/07/05 15:56:58 martin Exp $ libcpp/libcpp.a: [ ! -d libcpp ] && mkdir libcpp || true (cd libcpp; \ - CC=${HOST_CC:Q} \ + CC=${HOST_CC:Q} CXX=${HOST_CXX:Q} \ CFLAGS=${HOST_CFLAGS:Q} \ MAKE=${TOOL_GMAKE:Q} \ CONFIG_SHELL=${HOST_SH:Q} \ ${HOST_SH} ${DIST}/libcpp/configure -v am_cv_func_iconv=no \ - && CC=${HOST_CC:Q} CFLAGS=${HOST_CFLAGS:Q} ${TOOL_GMAKE}) + && CC=${HOST_CC:Q} CXX=${HOST_CXX:Q} CFLAGS=${HOST_CFLAGS:Q} ${TOOL_GMAKE}) cleandir: -rm -rf libcpp
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Wed Jul 5 16:03:19 UTC 2017 Modified Files: src/doc [netbsd-8]: CHANGES-8.0 Log Message: Tickets #60, #83, #84, #85 To generate a diff of this commit: cvs rdiff -u -r1.1.2.17 -r1.1.2.18 src/doc/CHANGES-8.0 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-8.0 diff -u src/doc/CHANGES-8.0:1.1.2.17 src/doc/CHANGES-8.0:1.1.2.18 --- src/doc/CHANGES-8.0:1.1.2.17 Tue Jul 4 16:36:40 2017 +++ src/doc/CHANGES-8.0 Wed Jul 5 16:03:19 2017 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-8.0,v 1.1.2.17 2017/07/04 16:36:40 martin Exp $ +# $NetBSD: CHANGES-8.0,v 1.1.2.18 2017/07/05 16:03:19 martin Exp $ A complete list of changes from the initial NetBSD 8.0 branch on 2017-06-04 until the 8.0 release: @@ -1652,3 +1652,46 @@ sys/net/if_media.h1.58-1.59 Add 1000BASE-KX and 2500BASE-KX [msaitoh, ticket #82] +sys/arch/amd64/conf/GENERIC (patch) +sys/arch/amd64/conf/XEN3_DOM0 (patch) +sys/arch/amd64/conf/XEN3_DOMU (patch) +sys/arch/cobalt/conf/GENERIC (patch) +sys/arch/evbarm/conf/BEAGLEBOARD (patch) +sys/arch/evbarm/conf/BEAGLEBOARDXM (patch) +sys/arch/evbarm/conf/BEAGLEBONE (patch) +sys/arch/evbarm/conf/GENERIC.common (patch) +sys/arch/i386/conf/GENERIC (patch) +sys/arch/i386/conf/XEN3_DOM0 (patch) +sys/arch/i386/conf/XEN3_DOMU (patch) +sys/arch/landisk/conf/GENERIC (patch) +sys/arch/mvmeppc/conf/GENERIC (patch) +sys/arch/pmax/conf/GENERIC (patch) +sys/arch/shark/conf/GENERIC (patch) +sys/arch/sparc64/conf/GENERIC (patch) +sys/arch/zaurus/conf/GENERIC (patch) + + Remove options DIAGNOSTIC/DEBUG and the PAX debug options. + [snj, #60] + +sys/arch/arm/footbridge/footbridge_io.c 1.23 +sys/arch/cats/cats/cats_machdep.c 1.84 +sys/arch/cats/conf/GENERIC 1.162 + + Use devmap if available. + Now that bus_space can use devmap - use it for early console. + Comment out a bunch of thing so that a GENERIC kernel boots on + cats with cyclone firmware. + [skrll, ticket #83] + +sys/miscfs/genfs/genfs_io.c 1.70 + + Add missing check for dead or dying vnode to the entry of + genfs_getpages(). + [hannken, ticket #84] + +external/gpl3/gcc/usr.bin/backend/Makefile 1.37 +external/gpl3/gcc/usr.bin/host-libcpp/Makefile 1.3 + + Honor HOST_CXX - fixes the build on systems without g++. + [joerg, ticket #85] +
CVS commit: src
Module Name:src Committed By: jmcneill Date: Wed Jul 5 17:19:52 UTC 2017 Modified Files: src/etc/etc.evbarm: Makefile.inc Removed Files: src/sys/arch/evbarm/conf: SUNXI_INSTALL Log Message: Remove SUNXI_INSTALL kernel To generate a diff of this commit: cvs rdiff -u -r1.85 -r1.86 src/etc/etc.evbarm/Makefile.inc cvs rdiff -u -r1.1 -r0 src/sys/arch/evbarm/conf/SUNXI_INSTALL Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/etc.evbarm/Makefile.inc diff -u src/etc/etc.evbarm/Makefile.inc:1.85 src/etc/etc.evbarm/Makefile.inc:1.86 --- src/etc/etc.evbarm/Makefile.inc:1.85 Sun Jul 2 22:39:44 2017 +++ src/etc/etc.evbarm/Makefile.inc Wed Jul 5 17:19:52 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.85 2017/07/02 22:39:44 jmcneill Exp $ +# $NetBSD: Makefile.inc,v 1.86 2017/07/05 17:19:52 jmcneill Exp $ # # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets # @@ -124,8 +124,8 @@ EVBARM_BOARDS.armv7+= PANDABOARD EVBARM_BOARDS.armv7hf+= PANDABOARD EVBARM_BOARDS.armv7+= RPI2 EVBARM_BOARDS.armv7hf+= RPI2 -EVBARM_BOARDS.armv7+= SUNXI -EVBARM_BOARDS.armv7hf+= SUNXI +KERNEL_SETS.armv7+= SUNXI +KERNEL_SETS.armv7hf+= SUNXI .endif IMAGE.rel= ${RELEASEDIR}/${RELEASEMACHINEDIR}
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Wed Jul 5 17:54:46 UTC 2017 Modified Files: src/sys/kern: uipc_domain.c Log Message: don't print diagnostic for AF_LINK To generate a diff of this commit: cvs rdiff -u -r1.98 -r1.99 src/sys/kern/uipc_domain.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/kern/uipc_domain.c diff -u src/sys/kern/uipc_domain.c:1.98 src/sys/kern/uipc_domain.c:1.99 --- src/sys/kern/uipc_domain.c:1.98 Sat Jul 1 22:39:18 2017 +++ src/sys/kern/uipc_domain.c Wed Jul 5 13:54:46 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: uipc_domain.c,v 1.98 2017/07/02 02:39:18 christos Exp $ */ +/* $NetBSD: uipc_domain.c,v 1.99 2017/07/05 17:54:46 christos Exp $ */ /* * Copyright (c) 1982, 1986, 1993 @@ -32,7 +32,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: uipc_domain.c,v 1.98 2017/07/02 02:39:18 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uipc_domain.c,v 1.99 2017/07/05 17:54:46 christos Exp $"); #include #include @@ -281,11 +281,13 @@ sockaddr_getsize_by_family(sa_family_t a static void sockaddr_checklen(const struct sockaddr *sa) { + // Can't tell how much was allocated, if it was allocated. + if (sa->sa_family == AF_LINK) + return; + socklen_t len = sockaddr_getsize_by_family(sa->sa_family); if (len == 0 || len == sa->sa_len) return; - if (sa->sa_family == AF_LINK && sa->sa_len <= len) - return; char buf[512]; sockaddr_format(sa, buf, sizeof(buf));
CVS commit: src/sys/arch/evbarm/fdt
Module Name:src Committed By: chs Date: Wed Jul 5 19:30:51 UTC 2017 Modified Files: src/sys/arch/evbarm/fdt: fdt_machdep.c Log Message: the extent code cannot use the full range of u_long, so ignore the last page before 4GB too. ok jmcneill@ To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/sys/arch/evbarm/fdt/fdt_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/evbarm/fdt/fdt_machdep.c diff -u src/sys/arch/evbarm/fdt/fdt_machdep.c:1.8 src/sys/arch/evbarm/fdt/fdt_machdep.c:1.9 --- src/sys/arch/evbarm/fdt/fdt_machdep.c:1.8 Wed Jul 5 01:08:45 2017 +++ src/sys/arch/evbarm/fdt/fdt_machdep.c Wed Jul 5 19:30:51 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: fdt_machdep.c,v 1.8 2017/07/05 01:08:45 jmcneill Exp $ */ +/* $NetBSD: fdt_machdep.c,v 1.9 2017/07/05 19:30:51 chs Exp $ */ /*- * Copyright (c) 2015-2017 Jared McNeill @@ -27,7 +27,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: fdt_machdep.c,v 1.8 2017/07/05 01:08:45 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: fdt_machdep.c,v 1.9 2017/07/05 19:30:51 chs Exp $"); #include "opt_machdep.h" #include "opt_ddb.h" @@ -410,8 +410,8 @@ initarm(void *arg) #if !defined(_LP64) /* Cannot map memory above 4GB */ - if (memory_addr + memory_size > 0x1) - memory_size = 0x1 - memory_addr; + if (memory_addr + memory_size >= 0x1) + memory_size = 0x1 - memory_addr - PAGE_SIZE; #endif ram_size = (bus_size_t)memory_size;
CVS commit: src/bin/sh
Module Name:src Committed By: kre Date: Wed Jul 5 19:47:11 UTC 2017 Modified Files: src/bin/sh: trap.c Log Message: DEBUG and white space changes only. Convert TRACE() calls for DEBUg mode to the new style. NFC (when not debugging sh). To generate a diff of this commit: cvs rdiff -u -r1.40 -r1.41 src/bin/sh/trap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/bin/sh/trap.c diff -u src/bin/sh/trap.c:1.40 src/bin/sh/trap.c:1.41 --- src/bin/sh/trap.c:1.40 Sun May 7 15:01:18 2017 +++ src/bin/sh/trap.c Wed Jul 5 19:47:11 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: trap.c,v 1.40 2017/05/07 15:01:18 kre Exp $ */ +/* $NetBSD: trap.c,v 1.41 2017/07/05 19:47:11 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)trap.c 8.5 (Berkeley) 6/5/95"; #else -__RCSID("$NetBSD: trap.c,v 1.40 2017/05/07 15:01:18 kre Exp $"); +__RCSID("$NetBSD: trap.c,v 1.41 2017/07/05 19:47:11 kre Exp $"); #endif #endif /* not lint */ @@ -484,6 +484,9 @@ SHELLPROC { void onsig(int signo) { + CTRACE(DBG_SIG, ("Signal %d, had: pending %d, gotsig[%d]=%d\n", + signo, pendingsigs, signo, gotsig[signo])); + signal(signo, onsig); if (signo == SIGINT && trap[SIGINT] == NULL) { onint(); @@ -518,6 +521,8 @@ dotrap(void) } gotsig[i] = 0; savestatus=exitstatus; + CTRACE(DBG_TRAP|DBG_SIG, ("dotrap %d: \"%s\"\n", i, + trap[i] ? trap[i] : "-NULL-")); tr = savestr(trap[i]); /* trap code may free trap[i] */ evalstring(tr, 0); ckfree(tr); @@ -566,7 +571,9 @@ exitshell(int status) struct jmploc loc1, loc2; char *p; - TRACE(("pid %d, exitshell(%d)\n", getpid(), status)); + CTRACE(DBG_ERRS|DBG_PROCS|DBG_CMDS|DBG_TRAP, + ("pid %d, exitshell(%d)\n", getpid(), status)); + if (setjmp(loc1.loc)) { goto l1; } @@ -576,13 +583,14 @@ exitshell(int status) handler = &loc1; if ((p = trap[0]) != NULL && *p != '\0') { trap[0] = NULL; + VTRACE(DBG_TRAP, ("exit trap: \"%s\"\n", p)); evalstring(p, 0); } -l1: handler = &loc2; /* probably unnecessary */ + l1: handler = &loc2; /* probably unnecessary */ flushall(); #if JOBS setjobctl(0); #endif -l2: _exit(status); + l2: _exit(status); /* NOTREACHED */ }
CVS commit: src
Module Name:src Committed By: jmcneill Date: Wed Jul 5 19:50:49 UTC 2017 Modified Files: src/distrib/evbarm/instkernel/ramdisk: Makefile src/etc/etc.evbarm: Makefile.inc Log Message: Copy install ramdisk to releasedir. Provide both a raw ffs and Legacy U-Boot version of it. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 src/distrib/evbarm/instkernel/ramdisk/Makefile cvs rdiff -u -r1.86 -r1.87 src/etc/etc.evbarm/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/evbarm/instkernel/ramdisk/Makefile diff -u src/distrib/evbarm/instkernel/ramdisk/Makefile:1.16 src/distrib/evbarm/instkernel/ramdisk/Makefile:1.17 --- src/distrib/evbarm/instkernel/ramdisk/Makefile:1.16 Fri Jan 27 15:20:31 2017 +++ src/distrib/evbarm/instkernel/ramdisk/Makefile Wed Jul 5 19:50:49 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.16 2017/01/27 15:20:31 rin Exp $ +# $NetBSD: Makefile,v 1.17 2017/07/05 19:50:49 jmcneill Exp $ .include .include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib" @@ -38,6 +38,11 @@ ${CRUNCHBIN}: libhack.o .include "${DISTRIBDIR}/common/Makefile.makedev" .include "${DISTRIBDIR}/common/Makefile.image" -release: +release: ${IMAGE} + ${RELEASE_INSTALL} ${IMAGE} \ + ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/ramdisk/ + ${TOOL_MKUBOOTIMAGE} -A arm -C none -O linux -T ramdisk \ + -a 0 -n "NetBSD/${MACHINE_ARCH} ramdisk" ${IMAGE} \ + ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/ramdisk/${IMAGE:S/.fs/.ub/} .include Index: src/etc/etc.evbarm/Makefile.inc diff -u src/etc/etc.evbarm/Makefile.inc:1.86 src/etc/etc.evbarm/Makefile.inc:1.87 --- src/etc/etc.evbarm/Makefile.inc:1.86 Wed Jul 5 17:19:52 2017 +++ src/etc/etc.evbarm/Makefile.inc Wed Jul 5 19:50:49 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.86 2017/07/05 17:19:52 jmcneill Exp $ +# $NetBSD: Makefile.inc,v 1.87 2017/07/05 19:50:49 jmcneill Exp $ # # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets # @@ -197,4 +197,5 @@ snap_md_post: check_DESTDIR check_RELEAS KERNEL_SUFFIXES= bin srec ub INSTALLATION_DIRS+= binary/gzimg \ - installation/instkernel + installation/instkernel \ + installation/ramdisk
CVS commit: src/bin/sh
Module Name:src Committed By: kre Date: Wed Jul 5 19:54:21 UTC 2017 Modified Files: src/bin/sh: input.c Log Message: Mostly DEBUG and white space changes. Convert DEEBUG TRACE() calls to the new format. Also #if 0 a function definition that is used nowhere. While here, change the function of pushfile() slightly - it now sets the buf pointer in the top (new) input descriptor to NULL, instead of simply leaving it - code that needs a buffer always (before and after) must malloc() one and assign it after the call. But code which does not (which will be reading from a string or similar) now does not have to explicitly set it to NULL (cleaner interface.) NFC intended (or observed.) To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/bin/sh/input.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/bin/sh/input.c diff -u src/bin/sh/input.c:1.59 src/bin/sh/input.c:1.60 --- src/bin/sh/input.c:1.59 Fri Jun 30 23:02:56 2017 +++ src/bin/sh/input.c Wed Jul 5 19:54:21 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: input.c,v 1.59 2017/06/30 23:02:56 kre Exp $ */ +/* $NetBSD: input.c,v 1.60 2017/07/05 19:54:21 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)input.c 8.3 (Berkeley) 6/9/95"; #else -__RCSID("$NetBSD: input.c,v 1.59 2017/06/30 23:02:56 kre Exp $"); +__RCSID("$NetBSD: input.c,v 1.60 2017/07/05 19:54:21 kre Exp $"); #endif #endif /* not lint */ @@ -131,6 +131,7 @@ SHELLPROC { #endif +#if 0 /* this is unused */ /* * Read a line from the script. */ @@ -156,7 +157,7 @@ pfgets(char *line, int len) *p = '\0'; return line; } - +#endif /* @@ -178,7 +179,7 @@ preadfd(void) char *buf = parsefile->buf; parsenextc = buf; -retry: + retry: #ifndef SMALL if (parsefile->fd == 0 && el) { static const char *rl_cp; @@ -211,6 +212,7 @@ retry: goto retry; if (parsefile->fd == 0 && errno == EWOULDBLOCK) { int flags = fcntl(0, F_GETFL, 0); + if (flags >= 0 && flags & O_NONBLOCK) { flags &=~ O_NONBLOCK; if (fcntl(0, F_SETFL, flags) >= 0) { @@ -255,7 +257,7 @@ preadbuffer(void) flushout(&output); flushout(&errout); -again: + again: if (parselleft <= 0) { if ((parselleft = preadfd()) == -1) { parselleft = parsenleft = EOF_NLEFT; @@ -294,7 +296,7 @@ again: } *q++ = *p++; -check: + check: if (--parselleft <= 0) { parsenleft = q - parsenextc - 1; if (parsenleft < 0) @@ -348,14 +350,20 @@ pushstring(const char *s, int len, struc { struct strpush *sp; + VTRACE(DBG_INPUT, + ("pushstring(\"%.*s\", %d)%s%s%s had: nl=%d ll=%d \"%.*s\"\n", + len, s, len, ap ? " for alias:'" : "", + ap ? ap->name : "", ap ? "'" : "", + parsenleft, parselleft, parsenleft, parsenextc)); + INTOFF; -/*debugprintf("*** calling pushstring: %s, %d\n", s, len);*/ if (parsefile->strpush) { sp = ckmalloc(sizeof (struct strpush)); sp->prev = parsefile->strpush; parsefile->strpush = sp; } else sp = parsefile->strpush = &(parsefile->basestrpush); + sp->prevstring = parsenextc; sp->prevnleft = parsenleft; sp->prevlleft = parselleft; @@ -376,7 +384,11 @@ popstring(void) parsenextc = sp->prevstring; parsenleft = sp->prevnleft; parselleft = sp->prevlleft; -/*debugprintf("*** calling popstring: restoring to '%s'\n", parsenextc);*/ + + VTRACE(DBG_INPUT, ("popstring()%s%s%s nl=%d ll=%d \"%.*s\"\n", + sp->ap ? " from alias:'" : "", sp->ap ? sp->ap->name : "", + sp->ap ? "'" : "", parsenleft, parselleft, parsenleft, parsenextc)); + if (sp->ap) sp->ap->flag &= ~ALIASINUSE; parsefile->strpush = sp->prev; @@ -398,6 +410,8 @@ setinputfile(const char *fname, int push int fd2; struct stat sb; + CTRACE(DBG_INPUT,("setinputfile(\"%s\", %spush)\n",fname,push?"":"no")); + INTOFF; if ((fd = open(fname, O_RDONLY)) < 0) error("Can't open %s", fname); @@ -458,12 +472,12 @@ input_fd_swap(int from, int to) void setinputfd(int fd, int push) { + VTRACE(DBG_INPUT, ("setinputfd(%d, %spush)\n", fd, push?"":"no")); + register_sh_fd(fd, input_fd_swap); (void) fcntl(fd, F_SETFD, FD_CLOEXEC); - if (push) { + if (push) pushfile(); - parsefile->buf = ckmalloc(BUFSIZ); - } if (parsefile->fd > 0) sh_close(parsefile->fd); parsefile->fd = fd; @@ -471,7 +485,9 @@ setinputfd(int fd, int push) parsefile->buf = ckmalloc(BUFSIZ); parselleft = parsenleft = 0; plinno = 1; - CTRACE(DBG_INPUT, ("setinputfd(%d, %d); plinno=1\n", fd, push)); + + CTRACE(DBG_INPUT, ("setinputfd(%d, %spush) done; plinno=1\n", fd, + push ? "" : "no")); } @@ -488,10 +504,11 @@ setinputstring(char *string, int push, i pushfile(); parsenextc = string; parselleft = parsenleft = st
CVS commit: [netbsd-8] src/lib/libexecinfo
Module Name:src Committed By: snj Date: Wed Jul 5 19:55:21 UTC 2017 Modified Files: src/lib/libexecinfo [netbsd-8]: execinfo.h Log Message: Pull up following revision(s) (requested by kamil in ticket #86): lib/libexecinfo/execinfo.h: revision 1.3 make this standalone. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.26.1 src/lib/libexecinfo/execinfo.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libexecinfo/execinfo.h diff -u src/lib/libexecinfo/execinfo.h:1.2 src/lib/libexecinfo/execinfo.h:1.2.26.1 --- src/lib/libexecinfo/execinfo.h:1.2 Sat Jun 9 21:22:17 2012 +++ src/lib/libexecinfo/execinfo.h Wed Jul 5 19:55:21 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: execinfo.h,v 1.2 2012/06/09 21:22:17 christos Exp $ */ +/* $NetBSD: execinfo.h,v 1.2.26.1 2017/07/05 19:55:21 snj Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. @@ -31,7 +31,14 @@ #ifndef _EXECINFO_H_ #define _EXECINFO_H_ -#include +#include +#include +#include + +#ifdef _BSD_SIZE_T_ +typedef _BSD_SIZE_T_size_t; +#undef _BSD_SIZE_T_ +#endif __BEGIN_DECLS size_t backtrace(void **, size_t);
CVS commit: [netbsd-8] src/sys/arch/evbarm/conf
Module Name:src Committed By: snj Date: Wed Jul 5 19:57:46 UTC 2017 Modified Files: src/sys/arch/evbarm/conf [netbsd-8]: std.tegra Log Message: Pull up following revision(s) (requested by skrll in ticket #87): sys/arch/evbarm/conf/std.tegra: revision 1.14 Define __HAVE_CPU_UAREA_ALLOC_IDLELWP to make use of the idlelwp stacks created by arm32_kvminit.c To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.13.2.1 src/sys/arch/evbarm/conf/std.tegra 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/evbarm/conf/std.tegra diff -u src/sys/arch/evbarm/conf/std.tegra:1.13 src/sys/arch/evbarm/conf/std.tegra:1.13.2.1 --- src/sys/arch/evbarm/conf/std.tegra:1.13 Tue May 30 22:00:25 2017 +++ src/sys/arch/evbarm/conf/std.tegra Wed Jul 5 19:57:46 2017 @@ -1,4 +1,4 @@ -# $NetBSD: std.tegra,v 1.13 2017/05/30 22:00:25 jmcneill Exp $ +# $NetBSD: std.tegra,v 1.13.2.1 2017/07/05 19:57:46 snj Exp $ # machine evbarm arm @@ -12,6 +12,7 @@ options MODULAR_DEFAULT_AUTOLOAD options __HAVE_CPU_COUNTER options __HAVE_FAST_SOFTINTS # should be in types.h options ARM_HAS_VBAR +options __HAVE_CPU_UAREA_ALLOC_IDLELWP #options __HAVE_MM_MD_DIRECT_MAPPED_PHYS #options PMAP_NEED_ALLOC_POOLPAGE options TPIDRPRW_IS_CURCPU
CVS commit: src/bin/sh
Module Name:src Committed By: kre Date: Wed Jul 5 19:58:10 UTC 2017 Modified Files: src/bin/sh: exec.c Log Message: DEBUG changes: convert DEBUG TRACE() calls to new format. ALso, cause exec failures to always cause the shell to exit with status 126 or 127, whatever the cause. 127 is intended for lookup failures (and is used that way), 126 is used for anything else that goes wrong (as in several other shells.) We no longer use 2 (more easily confused with an exit status of the command exec'd) for shell exec failures. To generate a diff of this commit: cvs rdiff -u -r1.50 -r1.51 src/bin/sh/exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/bin/sh/exec.c diff -u src/bin/sh/exec.c:1.50 src/bin/sh/exec.c:1.51 --- src/bin/sh/exec.c:1.50 Sat Jun 17 07:22:12 2017 +++ src/bin/sh/exec.c Wed Jul 5 19:58:10 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: exec.c,v 1.50 2017/06/17 07:22:12 kre Exp $ */ +/* $NetBSD: exec.c,v 1.51 2017/07/05 19:58:10 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)exec.c 8.4 (Berkeley) 6/8/95"; #else -__RCSID("$NetBSD: exec.c,v 1.50 2017/06/17 07:22:12 kre Exp $"); +__RCSID("$NetBSD: exec.c,v 1.51 2017/07/05 19:58:10 kre Exp $"); #endif #endif /* not lint */ @@ -144,18 +144,28 @@ shellexec(char **argv, char **envp, cons /* Map to POSIX errors */ switch (e) { - case EACCES: + case EACCES: /* particularly this (unless no search perm) */ + /* + * should perhaps check if this EACCES is an exec() + * EACESS or a namei() EACESS - the latter should be 127 + * - but not today + */ + case EINVAL: /* also explicitly these */ + case ENOEXEC: + default: /* and anything else */ exerrno = 126; break; - case ENOENT: + + case ENOENT: /* these are the "pathname lookup failed" errors */ + case ELOOP: + case ENOTDIR: + case ENAMETOOLONG: exerrno = 127; break; - default: - exerrno = 2; - break; } - TRACE(("shellexec failed for %s, errno %d, vforked %d, suppressint %d\n", - argv[0], e, vforked, suppressint )); + CTRACE(DBG_ERRS|DBG_CMDS|DBG_EVAL, + ("shellexec failed for %s, errno %d, vforked %d, suppressint %d\n", + argv[0], e, vforked, suppressint)); exerror(EXEXEC, "%s: %s", argv[0], errmsg(e, E_EXEC)); /* NOTREACHED */ } @@ -186,7 +196,7 @@ tryexec(char *cmd, char **argv, char **e exraise(EXSHELLPROC); } #ifdef DEBUG - TRACE(("execve(cmd=%s) returned ENOEXEC\n", cmd)); + VTRACE(DBG_CMDS, ("execve(cmd=%s) returned ENOEXEC\n", cmd)); #endif initshellproc(); setinputfile(cmd, 0); @@ -600,7 +610,8 @@ loop: if (fullname[0] == '/' && idx <= prev) { if (idx < prev) goto loop; - TRACE(("searchexec \"%s\": no change\n", name)); + VTRACE(DBG_CMDS, ("searchexec \"%s\": no change\n", + name)); goto success; } while (stat(fullname, &statb) < 0) { @@ -643,7 +654,8 @@ loop: goto loop; } #endif - TRACE(("searchexec \"%s\" returns \"%s\"\n", name, fullname)); + VTRACE(DBG_CMDS, ("searchexec \"%s\" returns \"%s\"\n", name, + fullname)); INTOFF; if (act & DO_ALTPATH) { /*
CVS commit: [netbsd-8] src/sys/arch
Module Name:src Committed By: snj Date: Wed Jul 5 19:59:29 UTC 2017 Modified Files: src/sys/arch/amd64/amd64 [netbsd-8]: locore.S src/sys/arch/i386/i386 [netbsd-8]: locore.S machdep.c trap.c Log Message: Pull up following revision(s) (requested by maxv in ticket #88): sys/arch/amd64/amd64/locore.S: revision 1.124 sys/arch/i386/i386/locore.S: revision 1.146 sys/arch/i386/i386/machdep.c: revision 1.783 sys/arch/i386/i386/trap.c: revision 1.288 Remove the osyscall call gate on i386, and emulate it. There is a one- instruction race in it that could panic the kernel. To generate a diff of this commit: cvs rdiff -u -r1.123 -r1.123.6.1 src/sys/arch/amd64/amd64/locore.S cvs rdiff -u -r1.145 -r1.145.6.1 src/sys/arch/i386/i386/locore.S cvs rdiff -u -r1.782 -r1.782.6.1 src/sys/arch/i386/i386/machdep.c cvs rdiff -u -r1.287 -r1.287.6.1 src/sys/arch/i386/i386/trap.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/locore.S diff -u src/sys/arch/amd64/amd64/locore.S:1.123 src/sys/arch/amd64/amd64/locore.S:1.123.6.1 --- src/sys/arch/amd64/amd64/locore.S:1.123 Sat Mar 25 15:07:21 2017 +++ src/sys/arch/amd64/amd64/locore.S Wed Jul 5 19:59:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.123 2017/03/25 15:07:21 maxv Exp $ */ +/* $NetBSD: locore.S,v 1.123.6.1 2017/07/05 19:59:29 snj Exp $ */ /* * Copyright-o-rama! @@ -1409,7 +1409,6 @@ IDTVEC(osyscall) addq $0x10,%rsp #endif pushq $2 /* size of instruction for restart */ -osyscall1: pushq $T_ASTFLT /* trap # for doing ASTs */ INTRENTRY STI(si) Index: src/sys/arch/i386/i386/locore.S diff -u src/sys/arch/i386/i386/locore.S:1.145 src/sys/arch/i386/i386/locore.S:1.145.6.1 --- src/sys/arch/i386/i386/locore.S:1.145 Thu Feb 2 19:12:09 2017 +++ src/sys/arch/i386/i386/locore.S Wed Jul 5 19:59:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.145 2017/02/02 19:12:09 maxv Exp $ */ +/* $NetBSD: locore.S,v 1.145.6.1 2017/07/05 19:59:29 snj Exp $ */ /* * Copyright-o-rama! @@ -128,7 +128,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.145 2017/02/02 19:12:09 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.145.6.1 2017/07/05 19:59:29 snj Exp $"); #include "opt_compat_oldboot.h" #include "opt_copy_symtab.h" @@ -1239,30 +1239,12 @@ ENTRY(savectx) END(savectx) /* - * osyscall() - * - * Old call gate entry for syscall - */ -IDTVEC(osyscall) -#ifndef XEN - /* XXX we are in trouble! interrupts be off here. */ - cli /* must be first instruction */ -#endif - pushfl /* set eflags in trap frame */ - popl 8(%esp) - orl $PSL_I,8(%esp) /* re-enable ints on return to user */ - pushl $7 /* size of instruction for restart */ - jmp syscall1 -IDTVEC_END(osyscall) - -/* * syscall() * * Trap gate entry for syscall */ IDTVEC(syscall) pushl $2 /* size of instruction for restart */ -syscall1: pushl $T_ASTFLT /* trap # for doing ASTs */ INTRENTRY STI(%eax) Index: src/sys/arch/i386/i386/machdep.c diff -u src/sys/arch/i386/i386/machdep.c:1.782 src/sys/arch/i386/i386/machdep.c:1.782.6.1 --- src/sys/arch/i386/i386/machdep.c:1.782 Fri Mar 24 17:09:36 2017 +++ src/sys/arch/i386/i386/machdep.c Wed Jul 5 19:59:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.782 2017/03/24 17:09:36 maxv Exp $ */ +/* $NetBSD: machdep.c,v 1.782.6.1 2017/07/05 19:59:29 snj Exp $ */ /*- * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009 @@ -67,7 +67,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.782 2017/03/24 17:09:36 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.782.6.1 2017/07/05 19:59:29 snj Exp $"); #include "opt_beep.h" #include "opt_compat_ibcs2.h" @@ -933,7 +933,6 @@ setsegment(struct segment_descriptor *sd #define IDTVEC(name) __CONCAT(X, name) typedef void (vector)(void); extern vector IDTVEC(syscall); -extern vector IDTVEC(osyscall); extern vector *IDTVEC(exceptions)[]; extern vector IDTVEC(svr4_fasttrap); void (*svr4_fasttrap_vec)(void) = (void (*)(void))nullop; @@ -1290,14 +1289,9 @@ init386(paddr_t first_avail) #endif /* XEN */ /* make ldt gates and memory segments */ - setgate(&ldtstore[LSYS5CALLS_SEL].gd, &IDTVEC(osyscall), 1, - SDT_SYS386CGT, SEL_UPL, GSEL(GCODE_SEL, SEL_KPL)); - ldtstore[LUCODE_SEL] = gdtstore[GUCODE_SEL]; ldtstore[LUCODEBIG_SEL] = gdtstore[GUCODEBIG_SEL]; ldtstore[LUDATA_SEL] = gdtstore[GUDATA_SEL]; - ldtstore[LSOL26CALLS_SEL] = ldtstore[LBSDICALLS_SEL] = - ldtstore[LSYS5CALLS_SEL]; #ifndef XEN /* exceptions */ Index: src/sys/arch/i386/i386/trap.c diff -u src/sys/arch/i386/i386/trap.c:1.287 src/sys/arch/i386/i386/trap.c:1.287.6.1 --- src/sys/arch/i386/i386/trap.c:1.287 Sat Mar 18 13:39:23 2017 +++ src/sys/arch/i386/i386/trap.c Wed Jul 5 19:59:29 2017 @@ -1,5 +1,5 @@ -/* $NetBSD: trap.c,v 1.287 2017/03/18 13:39:23 maxv Exp $ */ +/* $NetBSD: trap.c,v 1.287.6.1 201
CVS commit: src/bin/sh
Module Name:src Committed By: kre Date: Wed Jul 5 20:00:27 UTC 2017 Modified Files: src/bin/sh: cd.c error.c main.c var.c Log Message: DEBUG only changes. Convert the TRACE() calls in the remaining files that still used it to the new format. NFC. To generate a diff of this commit: cvs rdiff -u -r1.49 -r1.50 src/bin/sh/cd.c cvs rdiff -u -r1.39 -r1.40 src/bin/sh/error.c cvs rdiff -u -r1.71 -r1.72 src/bin/sh/main.c cvs rdiff -u -r1.63 -r1.64 src/bin/sh/var.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/bin/sh/cd.c diff -u src/bin/sh/cd.c:1.49 src/bin/sh/cd.c:1.50 --- src/bin/sh/cd.c:1.49 Sat Jun 17 04:19:12 2017 +++ src/bin/sh/cd.c Wed Jul 5 20:00:27 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: cd.c,v 1.49 2017/06/17 04:19:12 kre Exp $ */ +/* $NetBSD: cd.c,v 1.50 2017/07/05 20:00:27 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)cd.c 8.2 (Berkeley) 5/4/95"; #else -__RCSID("$NetBSD: cd.c,v 1.49 2017/06/17 04:19:12 kre Exp $"); +__RCSID("$NetBSD: cd.c,v 1.50 2017/07/05 20:00:27 kre Exp $"); #endif #endif /* not lint */ @@ -164,7 +164,7 @@ docd(const char *dest, int print) int first; int badstat; - TRACE(("docd(\"%s\", %d) called\n", dest, print)); + CTRACE(DBG_CMDS, ("docd(\"%s\", %d) called\n", dest, print)); /* * Check each component of the path. If we find a symlink or Index: src/bin/sh/error.c diff -u src/bin/sh/error.c:1.39 src/bin/sh/error.c:1.40 --- src/bin/sh/error.c:1.39 Wed Jun 1 02:50:02 2016 +++ src/bin/sh/error.c Wed Jul 5 20:00:27 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: error.c,v 1.39 2016/06/01 02:50:02 kre Exp $ */ +/* $NetBSD: error.c,v 1.40 2017/07/05 20:00:27 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)error.c 8.2 (Berkeley) 5/4/95"; #else -__RCSID("$NetBSD: error.c,v 1.39 2016/06/01 02:50:02 kre Exp $"); +__RCSID("$NetBSD: error.c,v 1.40 2017/07/05 20:00:27 kre Exp $"); #endif #endif /* not lint */ @@ -159,11 +159,12 @@ exverror(int cond, const char *msg, va_l #ifdef DEBUG if (msg) { - TRACE(("exverror(%d, \"", cond)); - TRACEV((msg, ap)); - TRACE(("\") pid=%d\n", getpid())); + CTRACE(DBG_ERRS, ("exverror(%d, \"", cond)); + CTRACEV(DBG_ERRS, (msg, ap)); + CTRACE(DBG_ERRS, ("\") pid=%d\n", getpid())); } else - TRACE(("exverror(%d, NULL) pid=%d\n", cond, getpid())); + CTRACE(DBG_ERRS, ("exverror(%d, NULL) pid=%d\n", cond, + getpid())); #endif if (msg) exvwarning(-1, msg, ap); Index: src/bin/sh/main.c diff -u src/bin/sh/main.c:1.71 src/bin/sh/main.c:1.72 --- src/bin/sh/main.c:1.71 Mon Jun 19 02:49:33 2017 +++ src/bin/sh/main.c Wed Jul 5 20:00:27 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.71 2017/06/19 02:49:33 kre Exp $ */ +/* $NetBSD: main.c,v 1.72 2017/07/05 20:00:27 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -42,7 +42,7 @@ __COPYRIGHT("@(#) Copyright (c) 1991, 19 #if 0 static char sccsid[] = "@(#)main.c 8.7 (Berkeley) 7/19/95"; #else -__RCSID("$NetBSD: main.c,v 1.71 2017/06/19 02:49:33 kre Exp $"); +__RCSID("$NetBSD: main.c,v 1.72 2017/07/05 20:00:27 kre Exp $"); #endif #endif /* not lint */ @@ -263,7 +263,7 @@ cmdloop(int top) int numeof = 0; enum skipstate skip; - TRACE(("cmdloop(%d) called\n", top)); + CTRACE(DBG_ALWAYS, ("cmdloop(%d) called\n", top)); setstackmark(&smark); for (;;) { if (pendingsigs) @@ -277,8 +277,7 @@ cmdloop(int top) nflag = 0; } n = parsecmd(inter); - TRACE(("cmdloop: "); showtree(n)); - /* showtree(n); DEBUG */ + VXTRACE(DBG_PARSE|DBG_EVAL|DBG_CMDS,("cmdloop: "),showtree(n)); if (n == NEOF) { if (!top || numeof >= 50) break; Index: src/bin/sh/var.c diff -u src/bin/sh/var.c:1.63 src/bin/sh/var.c:1.64 --- src/bin/sh/var.c:1.63 Fri Jun 30 23:05:45 2017 +++ src/bin/sh/var.c Wed Jul 5 20:00:27 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: var.c,v 1.63 2017/06/30 23:05:45 kre Exp $ */ +/* $NetBSD: var.c,v 1.64 2017/07/05 20:00:27 kre Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = "@(#)var.c 8.3 (Berkeley) 5/4/95"; #else -__RCSID("$NetBSD: var.c,v 1.63 2017/06/30 23:05:45 kre Exp $"); +__RCSID("$NetBSD: var.c,v 1.64 2017/07/05 20:00:27 kre Exp $"); #endif #endif /* not lint */ @@ -954,7 +954,7 @@ poplocalvars(void) while ((lvp = localvars) != NULL) { localvars = lvp->next; vp = lvp->vp; - TRACE(("poplocalvar %s", vp ? vp->text : "-")); + VTRACE(DBG_VARS, ("poplocalvar %s", vp ? vp->text : "-")); if (vp == NULL) { /* $- saved */ memcpy(optlist, lvp->text, sizeof_optlist); ckfree(lvp->text);
CVS commit: [netbsd-8] src/etc/mtree
Module Name:src Committed By: snj Date: Wed Jul 5 20:01:01 UTC 2017 Modified Files: src/etc/mtree [netbsd-8]: NetBSD.dist.tests Log Message: Pull up following revision(s) (requested by kamil in ticket #89): etc/mtree/NetBSD.dist.tests: revision 1.148 G/C libpthread_dbg from mtree Remove entries: - ./usr/libdata/debug/usr/tests/lib/libpthread_dbg - ./usr/tests/lib/libpthread_dbg Noted by via private mail. To generate a diff of this commit: cvs rdiff -u -r1.147 -r1.147.2.1 src/etc/mtree/NetBSD.dist.tests Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/mtree/NetBSD.dist.tests diff -u src/etc/mtree/NetBSD.dist.tests:1.147 src/etc/mtree/NetBSD.dist.tests:1.147.2.1 --- src/etc/mtree/NetBSD.dist.tests:1.147 Sat May 27 21:02:55 2017 +++ src/etc/mtree/NetBSD.dist.tests Wed Jul 5 20:01:01 2017 @@ -1,4 +1,4 @@ -# $NetBSD: NetBSD.dist.tests,v 1.147 2017/05/27 21:02:55 bouyer Exp $ +# $NetBSD: NetBSD.dist.tests,v 1.147.2.1 2017/07/05 20:01:01 snj Exp $ ./usr/libdata/debug/usr/tests ./usr/libdata/debug/usr/tests/atf @@ -116,7 +116,6 @@ ./usr/libdata/debug/usr/tests/lib/libprop ./usr/libdata/debug/usr/tests/lib/libpthread ./usr/libdata/debug/usr/tests/lib/libpthread/dlopen -./usr/libdata/debug/usr/tests/lib/libpthread_dbg ./usr/libdata/debug/usr/tests/lib/librefuse ./usr/libdata/debug/usr/tests/lib/librt ./usr/libdata/debug/usr/tests/lib/librumpclient @@ -303,7 +302,6 @@ ./usr/tests/lib/libprop ./usr/tests/lib/libpthread ./usr/tests/lib/libpthread/dlopen -./usr/tests/lib/libpthread_dbg ./usr/tests/lib/librefuse ./usr/tests/lib/librt ./usr/tests/lib/librumpclient
CVS commit: [netbsd-8] src/sys/arch/i386/conf
Module Name:src Committed By: snj Date: Wed Jul 5 20:02:27 UTC 2017 Modified Files: src/sys/arch/i386/conf [netbsd-8]: kern.ldscript.Xen Log Message: Pull up following revision(s) (requested by bouyer in ticket #90): sys/arch/i386/conf/kern.ldscript.Xen: revision 1.14 Restore alignement of _end to rev 1.12: this is where the Xen loader puts the symbol table and should not be changed (maybe we should change this symbol name). keep kernel_end PAGE-aligned. Makes ddb work again on Xen/i386 To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.13.8.1 src/sys/arch/i386/conf/kern.ldscript.Xen 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/i386/conf/kern.ldscript.Xen diff -u src/sys/arch/i386/conf/kern.ldscript.Xen:1.13 src/sys/arch/i386/conf/kern.ldscript.Xen:1.13.8.1 --- src/sys/arch/i386/conf/kern.ldscript.Xen:1.13 Tue Aug 2 14:03:34 2016 +++ src/sys/arch/i386/conf/kern.ldscript.Xen Wed Jul 5 20:02:27 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: kern.ldscript.Xen,v 1.13 2016/08/02 14:03:34 maxv Exp $ */ +/* $NetBSD: kern.ldscript.Xen,v 1.13.8.1 2017/07/05 20:02:27 snj Exp $ */ #include "assym.h" @@ -54,14 +54,15 @@ SECTIONS *(COMMON) . = ALIGN(32 / 8); } + . = ALIGN(32 / 8); + _end = . ; + PROVIDE (end = .) ; . = ALIGN(__PAGE_SIZE); /* End of the kernel image */ __kernel_end = . ; - _end = . ; - PROVIDE (end = .) ; .note.netbsd.ident : { KEEP(*(.note.netbsd.ident));
CVS commit: [netbsd-8] src/sys
Module Name:src Committed By: snj Date: Wed Jul 5 20:04:40 UTC 2017 Modified Files: src/sys/kern [netbsd-8]: kern_event.c src/sys/miscfs/genfs [netbsd-8]: genfs_vnops.c src/sys/sys [netbsd-8]: event.h Log Message: Pull up following revision(s) (requested by christos in ticket #91): sys/kern/kern_event.c: revision 1.92 sys/miscfs/genfs/genfs_vnops.c: revision 1.198 sys/sys/event.h: revision 1.30 Provide EVFILT_WRITE; this is what FreeBSD does and go wants it. Makes go unit tests pass. -- fix file descriptor locking (from joerg). fixes kernel crashes by running go To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.91.2.1 src/sys/kern/kern_event.c cvs rdiff -u -r1.195.4.1 -r1.195.4.2 src/sys/miscfs/genfs/genfs_vnops.c cvs rdiff -u -r1.28 -r1.28.2.1 src/sys/sys/event.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/kern/kern_event.c diff -u src/sys/kern/kern_event.c:1.91 src/sys/kern/kern_event.c:1.91.2.1 --- src/sys/kern/kern_event.c:1.91 Thu May 11 23:50:17 2017 +++ src/sys/kern/kern_event.c Wed Jul 5 20:04:40 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_event.c,v 1.91 2017/05/11 23:50:17 christos Exp $ */ +/* $NetBSD: kern_event.c,v 1.91.2.1 2017/07/05 20:04:40 snj Exp $ */ /*- * Copyright (c) 2008, 2009 The NetBSD Foundation, Inc. @@ -58,7 +58,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_event.c,v 1.91 2017/05/11 23:50:17 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_event.c,v 1.91.2.1 2017/07/05 20:04:40 snj Exp $"); #include #include @@ -1021,8 +1021,9 @@ kqueue_register(struct kqueue *kq, struc if (error != 0) { #ifdef DIAGNOSTIC -printf("%s: event not supported for file type" -" %d (error %d)\n", __func__, kn->kn_obj ? +printf("%s: event type %d not supported for " +"file type %d (error %d)\n", __func__, +kn->kn_filter, kn->kn_obj ? ((file_t *)kn->kn_obj)->f_type : -1, error); #endif /* knote_detach() drops fdp->fd_lock */ @@ -1204,10 +1205,19 @@ kqueue_scan(file_t *fp, size_t maxevents error = 0; } } + mutex_spin_exit(&kq->kq_lock); } else { /* mark end of knote list */ TAILQ_INSERT_TAIL(&kq->kq_head, marker, kn_tqe); + /* + * Acquire the fdp->fd_lock interlock to avoid races with + * file creation/destruction from other threads. + */ + mutex_spin_exit(&kq->kq_lock); + mutex_enter(&fdp->fd_lock); + mutex_spin_enter(&kq->kq_lock); + while (count != 0) { kn = TAILQ_FIRST(&kq->kq_head); /* get next knote */ while ((kn->kn_status & KN_MARKER) != 0) { @@ -1218,6 +1228,7 @@ kqueue_scan(file_t *fp, size_t maxevents (timeout = gettimeleft(&ats, &sleepts)) <= 0)) goto done; + mutex_exit(&fdp->fd_lock); goto retry; } /* someone else's marker. */ @@ -1239,6 +1250,7 @@ kqueue_scan(file_t *fp, size_t maxevents KASSERT(kn->kn_fop != NULL); KASSERT(kn->kn_fop->f_event != NULL); KERNEL_LOCK(1, NULL); /* XXXSMP */ +KASSERT(mutex_owned(&fdp->fd_lock)); rv = (*kn->kn_fop->f_event)(kn, 0); KERNEL_UNLOCK_ONE(NULL); /* XXXSMP */ mutex_spin_enter(&kq->kq_lock); @@ -1261,10 +1273,10 @@ kqueue_scan(file_t *fp, size_t maxevents nkev++; if (kn->kn_flags & EV_ONESHOT) { /* delete ONESHOT events after retrieval */ -mutex_spin_exit(&kq->kq_lock); -mutex_enter(&fdp->fd_lock); kn->kn_status &= ~KN_BUSY; +mutex_spin_exit(&kq->kq_lock); knote_detach(kn, fdp, true); +mutex_enter(&fdp->fd_lock); mutex_spin_enter(&kq->kq_lock); } else if (kn->kn_flags & EV_CLEAR) { /* clear state after retrieval */ @@ -1286,9 +1298,11 @@ kqueue_scan(file_t *fp, size_t maxevents if (nkev == kevcnt) { /* do copyouts in kevcnt chunks */ mutex_spin_exit(&kq->kq_lock); +mutex_exit(&fdp->fd_lock); error = (*keops->keo_put_events) (keops->keo_private, kevbuf, ulistp, nevents, nkev); +mutex_enter(&fdp->fd_lock); mutex_spin_enter(&kq->kq_lock); nevents += nkev; nkev = 0; @@ -1301,9 +1315,10 @@ kqueue_scan(file_t *fp, size_t maxevents break; } } - } done: - mutex_spin_exit(&kq->kq_lock); + mutex_spin_exit(&kq->kq_lock); + mutex_exit(&fdp->fd_lock); + } if (nkev != 0) { /* copyout remaining events */ error = (*keops->keo_put_events)(keops->keo_private, Index: src/sys/miscfs/genfs/genfs_vnops.c diff -u src/sys/miscfs/genfs/genfs_vnops.c:1.195.4.1 src/sys/miscfs/genfs/genfs_vnops.c:1.195.4.2 --- src/sys/miscfs/genfs/genfs_vnops.c:1.195.4.1 Sun Jun 4 20:35:01 2017 +++ src/sys/miscfs/genfs/genfs_vnops.c Wed Jul 5 20:04:40 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: genfs_vnops.c,v 1.195.4.1 2017/06/04 20:35:01 bouyer Exp $ */ +/* $NetBSD: genfs_vnops.c,v 1.195.4.2 2017/07/05 20:04:40 snj Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -57,7 +
CVS commit: [netbsd-8] src/sys/arch/arm/allwinner
Module Name:src Committed By: snj Date: Wed Jul 5 20:06:26 UTC 2017 Modified Files: src/sys/arch/arm/allwinner [netbsd-8]: awin_can.c Log Message: Pull up following revision(s) (requested by bouyer in ticket #92): sys/arch/arm/allwinner/awin_can.c: revision 1.3 In the RX IRQ handler, release the receive buffer in the error paths. Fix a hang I've been seeing under high traffic. To generate a diff of this commit: cvs rdiff -u -r1.2.2.2 -r1.2.2.3 src/sys/arch/arm/allwinner/awin_can.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/arm/allwinner/awin_can.c diff -u src/sys/arch/arm/allwinner/awin_can.c:1.2.2.2 src/sys/arch/arm/allwinner/awin_can.c:1.2.2.3 --- src/sys/arch/arm/allwinner/awin_can.c:1.2.2.2 Sun Jul 2 15:08:29 2017 +++ src/sys/arch/arm/allwinner/awin_can.c Wed Jul 5 20:06:26 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: awin_can.c,v 1.2.2.2 2017/07/02 15:08:29 bouyer Exp $ */ +/* $NetBSD: awin_can.c,v 1.2.2.3 2017/07/05 20:06:26 snj Exp $ */ /*- * Copyright (c) 2017 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ #include -__KERNEL_RCSID(1, "$NetBSD: awin_can.c,v 1.2.2.2 2017/07/02 15:08:29 bouyer Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_can.c,v 1.2.2.3 2017/07/05 20:06:26 snj Exp $"); #include #include @@ -239,12 +239,14 @@ awin_can_rx_intr(struct awin_can_softc * if (dlc > CAN_MAX_DLC) { ifp->if_ierrors++; + awin_can_write(sc, AWIN_CAN_CMD_REG, AWIN_CAN_CMD_REL_RX_BUF); return; } m = m_gethdr(M_NOWAIT, MT_HEADER); if (m == NULL) { ifp->if_ierrors++; + awin_can_write(sc, AWIN_CAN_CMD_REG, AWIN_CAN_CMD_REL_RX_BUF); return; } cf = mtod(m, struct can_frame *);
CVS commit: [netbsd-8] src/sbin/gpt
Module Name:src Committed By: snj Date: Wed Jul 5 20:07:42 UTC 2017 Modified Files: src/sbin/gpt [netbsd-8]: biosboot.c Log Message: Pull up following revision(s) (requested by mrg in ticket #93): sbin/gpt/biosboot.c: revision 1.28 only do wedges if not the tools version. fixes build on netbsd-4, and any other place that might have the same ioctl name while having something not quite right (in this case, cpuid_t in headers not working properly..) To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.27.4.1 src/sbin/gpt/biosboot.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sbin/gpt/biosboot.c diff -u src/sbin/gpt/biosboot.c:1.27 src/sbin/gpt/biosboot.c:1.27.4.1 --- src/sbin/gpt/biosboot.c:1.27 Thu Feb 16 03:32:17 2017 +++ src/sbin/gpt/biosboot.c Wed Jul 5 20:07:42 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: biosboot.c,v 1.27 2017/02/16 03:32:17 christos Exp $ */ +/* $NetBSD: biosboot.c,v 1.27.4.1 2017/07/05 20:07:42 snj Exp $ */ /* * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -37,18 +37,22 @@ #include #ifdef __RCSID -__RCSID("$NetBSD: biosboot.c,v 1.27 2017/02/16 03:32:17 christos Exp $"); +__RCSID("$NetBSD: biosboot.c,v 1.27.4.1 2017/07/05 20:07:42 snj Exp $"); #endif #include #include #include -#ifdef DIOCGWEDGEINFO -#include -#endif #include #include +#if defined(DIOCGWEDGEINFO) && !defined(HAVE_NBTOOL_CONFIG_H) +#define USE_WEDGES +#endif +#ifdef USE_WEDGES +#include +#endif + #include #include #include @@ -252,7 +256,7 @@ biosboot(gpt_t gpt, daddr_t start, uint6 static int cmd_biosboot(gpt_t gpt, int argc, char *argv[]) { -#ifdef DIOCGWEDGEINFO +#ifdef USE_WEDGES struct dkwedge_info dkw; #endif int ch; @@ -289,7 +293,7 @@ cmd_biosboot(gpt_t gpt, int argc, char * if (argc != optind) return usage(); -#ifdef DIOCGWEDGEINFO +#ifdef USE_WEDGES if ((gpt->sb.st_mode & S_IFMT) != S_IFREG && ioctl(gpt->fd, DIOCGWEDGEINFO, &dkw) != -1) { if (entry > 0)
CVS commit: [netbsd-8] src/sys/arch/evbarm/conf
Module Name:src Committed By: snj Date: Wed Jul 5 20:11:18 UTC 2017 Modified Files: src/sys/arch/evbarm/conf [netbsd-8]: files.integrator Log Message: Pull up following revision(s) (requested by christos in ticket #94): sys/arch/evbarm/conf/files.integrator: 1.12, 1.13 we don't support 'no device' so re-define it; it will get both file attachments but that is not an error. -- XXX: fix conflict with plrtc in sys/conf/files by re-defining. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.11.10.1 src/sys/arch/evbarm/conf/files.integrator 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/evbarm/conf/files.integrator diff -u src/sys/arch/evbarm/conf/files.integrator:1.11 src/sys/arch/evbarm/conf/files.integrator:1.11.10.1 --- src/sys/arch/evbarm/conf/files.integrator:1.11 Tue Jan 27 16:35:47 2015 +++ src/sys/arch/evbarm/conf/files.integrator Wed Jul 5 20:11:18 2017 @@ -1,4 +1,4 @@ -# $NetBSD: files.integrator,v 1.11 2015/01/27 16:35:47 jmcneill Exp $ +# $NetBSD: files.integrator,v 1.11.10.1 2017/07/05 20:11:18 snj Exp $ # # ARM, Ltd. Integrator evaluation board configuraiton info # @@ -29,7 +29,7 @@ attach plmmc at ifpga with plmmc_ifpga file arch/evbarm/ifpga/plmmc_ifpga.c plmmc_ifpga # Integrator real-time clock -device plrtc +# XXX: dev/ic/pl031.c attach plrtc at ifpga file arch/evbarm/ifpga/pl030_rtc.c plrtc
CVS commit: [netbsd-8] src
Module Name:src Committed By: snj Date: Wed Jul 5 20:13:37 UTC 2017 Modified Files: src/etc/etc.vax [netbsd-8]: MAKEDEV.conf Makefile.inc src/sys/arch/vax/conf [netbsd-8]: files.vax majors.vax Added Files: src/sys/arch/vax/conf [netbsd-8]: GENERIC_USB Log Message: Pull up following revision(s) (requested by flxd in ticket #95): etc/etc.vax/MAKEDEV.conf: revision 1.19 etc/etc.vax/Makefile.inc: revision 1.25 sys/arch/vax/conf/GENERIC_USB: revision 1.1 sys/arch/vax/conf/files.vax: revision 1.123 sys/arch/vax/conf/majors.vax: revision 1.27 USB for vax (similar to pmax; no/negligible impact on legacy): * Add USB device files/majors. * Make kernel configs with USB work. * Provide a USB-enabled kernel config. -- Add GENERIC_USB to vax kernel sets, but not to sysinst (yet), as bootloader cannot handle kernels that large (yet). To generate a diff of this commit: cvs rdiff -u -r1.17.26.1 -r1.17.26.2 src/etc/etc.vax/MAKEDEV.conf cvs rdiff -u -r1.24 -r1.24.34.1 src/etc/etc.vax/Makefile.inc cvs rdiff -u -r0 -r1.1.2.2 src/sys/arch/vax/conf/GENERIC_USB cvs rdiff -u -r1.120.10.1 -r1.120.10.2 src/sys/arch/vax/conf/files.vax cvs rdiff -u -r1.26 -r1.26.10.1 src/sys/arch/vax/conf/majors.vax Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/etc.vax/MAKEDEV.conf diff -u src/etc/etc.vax/MAKEDEV.conf:1.17.26.1 src/etc/etc.vax/MAKEDEV.conf:1.17.26.2 --- src/etc/etc.vax/MAKEDEV.conf:1.17.26.1 Wed Jun 21 18:16:13 2017 +++ src/etc/etc.vax/MAKEDEV.conf Wed Jul 5 20:13:36 2017 @@ -1,4 +1,4 @@ -# $NetBSD: MAKEDEV.conf,v 1.17.26.1 2017/06/21 18:16:13 snj Exp $ +# $NetBSD: MAKEDEV.conf,v 1.17.26.2 2017/07/05 20:13:36 snj Exp $ all_md) makedev mt0 mt1 ts0 ts1 st0 st1 uk0 ss0 cd0 vt0 @@ -7,6 +7,7 @@ all_md) makedev scsibus0 scsibus1 scsibus2 scsibus3 makedev ses0 ses1 ses2 ses3 makedev audio speaker + makedev usbs makedev std_vax ;; Index: src/etc/etc.vax/Makefile.inc diff -u src/etc/etc.vax/Makefile.inc:1.24 src/etc/etc.vax/Makefile.inc:1.24.34.1 --- src/etc/etc.vax/Makefile.inc:1.24 Sun Jan 15 17:36:55 2012 +++ src/etc/etc.vax/Makefile.inc Wed Jul 5 20:13:36 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.24 2012/01/15 17:36:55 joerg Exp $ +# $NetBSD: Makefile.inc,v 1.24.34.1 2017/07/05 20:13:36 snj Exp $ # # etc.vax/Makefile.inc -- vax-specific etc Makefile targets # @@ -6,7 +6,7 @@ # If you change the list of distributed kernels, don't forget # to update the release documentation in distrib/notes/common/contents -KERNEL_SETS= GENERIC GENERIC.MP +KERNEL_SETS= GENERIC GENERIC.MP GENERIC_USB BUILD_KERNELS= INSTALL Index: src/sys/arch/vax/conf/files.vax diff -u src/sys/arch/vax/conf/files.vax:1.120.10.1 src/sys/arch/vax/conf/files.vax:1.120.10.2 --- src/sys/arch/vax/conf/files.vax:1.120.10.1 Sat Jul 1 08:39:21 2017 +++ src/sys/arch/vax/conf/files.vax Wed Jul 5 20:13:37 2017 @@ -1,4 +1,4 @@ -# $NetBSD: files.vax,v 1.120.10.1 2017/07/01 08:39:21 snj Exp $ +# $NetBSD: files.vax,v 1.120.10.2 2017/07/05 20:13:37 snj Exp $ # # new style config file for vax architecture # @@ -180,6 +180,11 @@ device si: scsi, ncr5380sbc attach si at vsbus with si_vsbus file arch/vax/vsa/ncr.c si_vsbus +# +# Machine-independent ATA drivers +# +include "dev/ata/files.ata" + # Monochrome framebuffer on VS3100. device smg: displaydev, wsemuldisplaydev attach smg at vsbus @@ -412,4 +417,12 @@ include "compat/vax1k/files.vax1k" #arch/vax/if/if_vv.c optional vv device-driver #arch/vax/if/raw_hy.c optional hy device-driver +# this wants to be probed as late as possible. +# +# Machine-independent USB device support +# +include "dev/usb/files.usb" + +include "dev/bluetooth/files.bluetooth" + include "arch/vax/conf/majors.vax" Index: src/sys/arch/vax/conf/majors.vax diff -u src/sys/arch/vax/conf/majors.vax:1.26 src/sys/arch/vax/conf/majors.vax:1.26.10.1 --- src/sys/arch/vax/conf/majors.vax:1.26 Sun Jul 5 03:06:27 2015 +++ src/sys/arch/vax/conf/majors.vax Wed Jul 5 20:13:37 2017 @@ -1,4 +1,4 @@ -# $NetBSD: majors.vax,v 1.26 2015/07/05 03:06:27 matt Exp $ +# $NetBSD: majors.vax,v 1.26.10.1 2017/07/05 20:13:37 snj Exp $ # # Device majors for vax # @@ -97,3 +97,5 @@ device-major uu block 13 uu # Majors up to 143 are reserved for machine-dependent drivers. # New machine-independent driver majors are assigned in # sys/conf/majors. + +include "conf/majors.usb" Added files: Index: src/sys/arch/vax/conf/GENERIC_USB diff -u /dev/null src/sys/arch/vax/conf/GENERIC_USB:1.1.2.2 --- /dev/null Wed Jul 5 20:13:37 2017 +++ src/sys/arch/vax/conf/GENERIC_USB Wed Jul 5 20:13:37 2017 @@ -0,0 +1,16 @@ +# $NetBSD: GENERIC_USB,v 1.1.2.2 2017/07/05 20:13:37 snj Exp $ +# +# GENERIC kernel with USB + +include "arch/vax/conf/GENERIC" + +# TC-USB +tcu* at tc? slot ? offset ? +slhci* at tcu? +gpio* at gpiobus? + +# USB bus support +usb* at slhci? + +incl
CVS commit: [netbsd-8] src/usr.bin/mkubootimage
Module Name:src Committed By: snj Date: Wed Jul 5 20:15:33 UTC 2017 Modified Files: src/usr.bin/mkubootimage [netbsd-8]: mkubootimage.c Log Message: Pull up following revision(s) (requested by jmcneill in ticket #96): usr.bin/mkubootimage/mkubootimage.c: revision 1.19 Load address is not required for "ramdisk" images. To generate a diff of this commit: cvs rdiff -u -r1.18 -r1.18.8.1 src/usr.bin/mkubootimage/mkubootimage.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/usr.bin/mkubootimage/mkubootimage.c diff -u src/usr.bin/mkubootimage/mkubootimage.c:1.18 src/usr.bin/mkubootimage/mkubootimage.c:1.18.8.1 --- src/usr.bin/mkubootimage/mkubootimage.c:1.18 Tue Sep 30 10:21:50 2014 +++ src/usr.bin/mkubootimage/mkubootimage.c Wed Jul 5 20:15:33 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: mkubootimage.c,v 1.18 2014/09/30 10:21:50 msaitoh Exp $ */ +/* $NetBSD: mkubootimage.c,v 1.18.8.1 2017/07/05 20:15:33 snj Exp $ */ /*- * Copyright (c) 2010 Jared D. McNeill @@ -30,7 +30,7 @@ #endif #include -__RCSID("$NetBSD: mkubootimage.c,v 1.18 2014/09/30 10:21:50 msaitoh Exp $"); +__RCSID("$NetBSD: mkubootimage.c,v 1.18.8.1 2017/07/05 20:15:33 snj Exp $"); #include #include @@ -429,7 +429,8 @@ main(int argc, char *argv[]) if (image_arch == IH_ARCH_UNKNOWN || image_type == IH_TYPE_UNKNOWN || - (image_type != IH_TYPE_SCRIPT && image_loadaddr == 0) || + (image_type != IH_TYPE_SCRIPT && image_type != IH_TYPE_RAMDISK && + image_loadaddr == 0) || image_name == NULL) usage();
CVS commit: [netbsd-8] src/sys
Module Name:src Committed By: snj Date: Wed Jul 5 20:19:22 UTC 2017 Modified Files: src/sys/opencrypto [netbsd-8]: crypto.c cryptodev.c cryptodev.h cryptosoft.c src/sys/rump/dev/lib/libopencrypto [netbsd-8]: opencrypto_component.c Log Message: Pull up following revision(s) (requested by knakahara in ticket #97): sys/opencrypto/crypto.c: 1.87-1.91 sys/opencrypto/cryptodev.c: 1.93-1.95 sys/opencrypto/cryptodev.h: 1.37 sys/opencrypto/cryptosoft.c: 1.52 sys/rump/dev/lib/libopencrypto/opencrypto_component.c: 1.5 sanitize count used for kmem_alloc size. Hmm, who uses CIOCNGSESSION, CIOCNFSESSION, CIOCNCRYPTM or CIOCNFKEYM? -- sanitize in CIOCNCRYPTM and initialize comp_alg in CIOCNGSESSION -- must release cap->cc_lock before calling cap->cc_newsession() because of spinlock. -- refactor crypto_newsession() like FreeBSD. -- support multiple encryption drivers (port from FreeBSD). -- Divide crp_devflags from crp_flags to write exclusively. CRYPTO_F_DQRETQ(new name is CRYPTODEV_F_RET) is used by cryptodev.c only. It should be divided to other member. -- Reduce crypto_ret_q_mtx lock regions. crypto.c does not access the members of crp when the crp is in crp_q or crp_ret_q. Furthermore, crp_q and crp_ret_q are protected by each mutex, so the members of crp is not shared. That means crp_flags is not required mutex in crypto.c. -- fix cryptosoft.c:r1.51 mistake. swcrypto_attach() must not be called from module_init_class(). swcrypto_attach() will call softint_establish(), it must be called after cpus attached. module_init_class() is too early to call softint_establish(). -- simplify mutex_enter/exit(crypto_q_mtx), and fix missing exit. -- reduce rump waring message. pointed out by ozaki-r@n.o, thanks. To generate a diff of this commit: cvs rdiff -u -r1.78.2.1 -r1.78.2.2 src/sys/opencrypto/crypto.c cvs rdiff -u -r1.92 -r1.92.2.1 src/sys/opencrypto/cryptodev.c cvs rdiff -u -r1.34.2.1 -r1.34.2.2 src/sys/opencrypto/cryptodev.h cvs rdiff -u -r1.51 -r1.51.2.1 src/sys/opencrypto/cryptosoft.c cvs rdiff -u -r1.4 -r1.4.10.1 \ src/sys/rump/dev/lib/libopencrypto/opencrypto_component.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/opencrypto/crypto.c diff -u src/sys/opencrypto/crypto.c:1.78.2.1 src/sys/opencrypto/crypto.c:1.78.2.2 --- src/sys/opencrypto/crypto.c:1.78.2.1 Thu Jun 22 05:36:41 2017 +++ src/sys/opencrypto/crypto.c Wed Jul 5 20:19:21 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: crypto.c,v 1.78.2.1 2017/06/22 05:36:41 snj Exp $ */ +/* $NetBSD: crypto.c,v 1.78.2.2 2017/07/05 20:19:21 snj Exp $ */ /* $FreeBSD: src/sys/opencrypto/crypto.c,v 1.4.2.5 2003/02/26 00:14:05 sam Exp $ */ /* $OpenBSD: crypto.c,v 1.41 2002/07/17 23:52:38 art Exp $ */ @@ -53,7 +53,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: crypto.c,v 1.78.2.1 2017/06/22 05:36:41 snj Exp $"); +__KERNEL_RCSID(0, "$NetBSD: crypto.c,v 1.78.2.2 2017/07/05 20:19:21 snj Exp $"); #include #include @@ -501,27 +501,50 @@ crypto_destroy(bool exit_kthread) return 0; } -/* - * Create a new session. - */ -int -crypto_newsession(u_int64_t *sid, struct cryptoini *cri, int hard) +static bool +crypto_driver_suitable(struct cryptocap *cap, struct cryptoini *cri) { struct cryptoini *cr; - struct cryptocap *cap; - u_int32_t hid, lid; - int err = EINVAL; - mutex_enter(&crypto_drv_mtx); + for (cr = cri; cr; cr = cr->cri_next) + if (cap->cc_alg[cr->cri_alg] == 0) { + DPRINTF("alg %d not supported\n", cr->cri_alg); + return false; + } + return true; +} + +#define CRYPTO_ACCEPT_HARDWARE 0x1 +#define CRYPTO_ACCEPT_SOFTWARE 0x2 +/* + * The algorithm we use here is pretty stupid; just use the + * first driver that supports all the algorithms we need. + * If there are multiple drivers we choose the driver with + * the fewest active sessions. We prefer hardware-backed + * drivers to software ones. + * + * XXX We need more smarts here (in real life too, but that's + * XXX another story altogether). + */ +static struct cryptocap * +crypto_select_driver_lock(struct cryptoini *cri, int hard) +{ + u_int32_t hid; + int accept; + struct cryptocap *cap, *best; + + best = NULL; /* - * The algorithm we use here is pretty stupid; just use the - * first driver that supports all the algorithms we need. - * - * XXX We need more smarts here (in real life too, but that's - * XXX another story altogether). + * hard == 0 can use both hardware and software drivers. + * We use hardware drivers prior to software drivers, so search + * hardware drivers at first time. */ - + if (hard >= 0) + accept = CRYPTO_ACCEPT_HARDWARE; + else + accept = CRYPTO_ACCEPT_SOFTWARE; +again: for (hid = 0; hid < crypto_drivers_num; hid++) { cap = crypto_checkdriver(hid); if (cap == NULL) @@ -540,54 +563,85 @@ crypto_newsession(u_int64_t *sid, struct } /* Hardware required -- ignore software dr
CVS commit: [netbsd-8] src/sys/arch/x86/x86
Module Name:src Committed By: snj Date: Wed Jul 5 20:23:09 UTC 2017 Modified Files: src/sys/arch/x86/x86 [netbsd-8]: pmap.c Log Message: Pull up following revision(s) (requested by jdolecek in ticket #98): sys/arch/x86/x86/pmap.c: revision 1.252 remove panicstr KASSERT() in pmap_kremove_local() - kernel dump can legitimely invoked also without panic - via reboot -d fixes PR kern/49610 by Manuel Bouyer To generate a diff of this commit: cvs rdiff -u -r1.245 -r1.245.6.1 src/sys/arch/x86/x86/pmap.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/x86/x86/pmap.c diff -u src/sys/arch/x86/x86/pmap.c:1.245 src/sys/arch/x86/x86/pmap.c:1.245.6.1 --- src/sys/arch/x86/x86/pmap.c:1.245 Fri Mar 24 10:58:06 2017 +++ src/sys/arch/x86/x86/pmap.c Wed Jul 5 20:23:08 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.245 2017/03/24 10:58:06 maxv Exp $ */ +/* $NetBSD: pmap.c,v 1.245.6.1 2017/07/05 20:23:08 snj Exp $ */ /*- * Copyright (c) 2008, 2010, 2016, 2017 The NetBSD Foundation, Inc. @@ -171,7 +171,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.245 2017/03/24 10:58:06 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.245.6.1 2017/07/05 20:23:08 snj Exp $"); #include "opt_user_ldt.h" #include "opt_lockdebug.h" @@ -1146,14 +1146,13 @@ pmap_kremove(vaddr_t sva, vsize_t len) /* * pmap_kremove_local: like pmap_kremove(), but only worry about * TLB invalidations on the current CPU. this is only intended - * for use while writing kernel crash dumps. + * for use while writing kernel crash dumps, either after panic + * or via reboot -d. */ void pmap_kremove_local(vaddr_t sva, vsize_t len) { - - KASSERT(panicstr != NULL); pmap_kremove1(sva, len, true); }
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: snj Date: Wed Jul 5 20:27:50 UTC 2017 Modified Files: src/doc [netbsd-8]: CHANGES-8.0 Log Message: 86-98 To generate a diff of this commit: cvs rdiff -u -r1.1.2.18 -r1.1.2.19 src/doc/CHANGES-8.0 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-8.0 diff -u src/doc/CHANGES-8.0:1.1.2.18 src/doc/CHANGES-8.0:1.1.2.19 --- src/doc/CHANGES-8.0:1.1.2.18 Wed Jul 5 16:03:19 2017 +++ src/doc/CHANGES-8.0 Wed Jul 5 20:27:50 2017 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-8.0,v 1.1.2.18 2017/07/05 16:03:19 martin Exp $ +# $NetBSD: CHANGES-8.0,v 1.1.2.19 2017/07/05 20:27:50 snj Exp $ A complete list of changes from the initial NetBSD 8.0 branch on 2017-06-04 until the 8.0 release: @@ -1695,3 +1695,101 @@ external/gpl3/gcc/usr.bin/host-libcpp/Ma Honor HOST_CXX - fixes the build on systems without g++. [joerg, ticket #85] +lib/libexecinfo/execinfo.h 1.3 + + Make this standalone. Makes Clang 5.0.0svn happy. + [kamil, ticket #86] + +sys/arch/evbarm/conf/std.tegra 1.14 + + Define __HAVE_CPU_UAREA_ALLOC_IDLELWP to make use of the + idlelwp stacks created by arm32_kvminit.c + [skrll, ticket #87] + +sys/arch/amd64/amd64/locore.S 1.124 +sys/arch/i386/i386/locore.S 1.146 +sys/arch/i386/i386/machdep.c 1.783 +sys/arch/i386/i386/trap.c 1.288 + + Remove the osyscall call gate on i386, and emulate it. There is + a one-instruction race in it that could panic the kernel. + [maxv, ticket #88] + +etc/mtree/NetBSD.dist.tests 1.148 + + Remove entries: + - ./usr/libdata/debug/usr/tests/lib/libpthread_dbg + - ./usr/tests/lib/libpthread_dbg + [kamil, ticket #89] + +sys/arch/i386/conf/kern.ldscript.Xen 1.14 + + Restore alignement of _end to rev 1.12. Makes ddb work again + on Xen/i386 + [bouyer, ticket #90] + +sys/kern/kern_event.c1.92 +sys/miscfs/genfs/genfs_vnops.c 1.198 +sys/sys/event.h 1.30 + + Provide EVFILT_WRITE. Fix file descriptor locking. + These make Go happy. + [christos, ticket #91] + +sys/arch/arm/allwinner/awin_can.c 1.3 + + Fix a hang under high traffic. + [bouyer, ticket #92] + +sbin/gpt/biosboot.c1.28 + + Only do wedges if not the tools version. Fixes build on netbsd-4, + and any other place that might have DIOCGWEDGEINFO and something + not quite right. + [mrg, ticket #93] + +sys/arch/evbarm/conf/files.integrator 1.12, 1.13 + + Fix plrtc conflict. + [christos, ticket #94] + +etc/etc.vax/MAKEDEV.conf 1.19 +etc/etc.vax/Makefile.inc 1.25 +sys/arch/vax/conf/GENERIC_USB 1.1 +sys/arch/vax/conf/files.vax 1.123 +sys/arch/vax/conf/majors.vax 1.27 + + Add VAX USB support. + [flxd, ticket #95] + +usr.bin/mkubootimage/mkubootimage.c 1.19 + + Load address is not required for "ramdisk" images. + [jmcneill, ticket #96] + +sys/opencrypto/crypto.c1.87-1.91 +sys/opencrypto/cryptodev.c 1.93-1.95 +sys/opencrypto/cryptodev.h 1.37 +sys/opencrypto/cryptosoft.c 1.52 +sys/rump/dev/lib/libopencrypto/opencrypto_component.c 1.5 + + opencrypto: + - reduce rump waring message. + - simplify mutex_enter/exit(crypto_q_mtx), and fix missing exit + - fix cryptosoft.c:r1.51 mistake. swcrypto_attach() must not be + called from module_init_class(). + - Reduce crypto_ret_q_mtx lock regions. + - Divide crp_devflags from crp_flags to write exclusively. + - support multiple encryption drivers (port from FreeBSD). + - refactor crypto_newsession() like FreeBSD. + - must release cap->cc_lock before calling cap->cc_newsession() + because of spinlock. + - sanitize in CIOCNCRYPTM and initialize comp_alg in CIOCNGSESSION + - sanitize count used for kmem_alloc size. + [knakahara, ticket #97] + +sys/arch/x86/x86/pmap.c1.252 + + Fix "reboot -d". PR kern/49610. + [jdolecek, ticket #98] +
CVS commit: src/sys/arch/arm/cortex
Module Name:src Committed By: skrll Date: Wed Jul 5 20:53:41 UTC 2017 Modified Files: src/sys/arch/arm/cortex: a9_mpsubr.S Log Message: Make fp 0 on entry to idle_stack to ensure we mark that we're top of stack To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.48 src/sys/arch/arm/cortex/a9_mpsubr.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/arm/cortex/a9_mpsubr.S diff -u src/sys/arch/arm/cortex/a9_mpsubr.S:1.47 src/sys/arch/arm/cortex/a9_mpsubr.S:1.48 --- src/sys/arch/arm/cortex/a9_mpsubr.S:1.47 Tue Oct 4 15:18:23 2016 +++ src/sys/arch/arm/cortex/a9_mpsubr.S Wed Jul 5 20:53:40 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: a9_mpsubr.S,v 1.47 2016/10/04 15:18:23 kiyohara Exp $ */ +/* $NetBSD: a9_mpsubr.S,v 1.48 2017/07/05 20:53:40 skrll Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. * All rights reserved. @@ -778,6 +778,7 @@ cortex_mpcontinuation: movw r2, #:lower16:MD_CPU_HATCH // pass md_cpu_hatch movt r2, #:upper16:MD_CPU_HATCH // pass md_cpu_hatch bl _C_LABEL(cpu_hatch) + mov fp, #0// top stack frame b _C_LABEL(idle_loop) // never to return ASEND(cortex_mpcontinuation)
CVS commit: src/sys/arch/evbarm/awin
Module Name:src Committed By: chs Date: Wed Jul 5 23:04:09 UTC 2017 Modified Files: src/sys/arch/evbarm/awin: awin_start.S Log Message: in the awin_start startup code, set up a tiny stack in case a C function wants to use it. in the various *_mpinit functions, avoid using caller-saved registers since these call C functions. these changes allow -fno-omit-frame-pointer to work. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/arch/evbarm/awin/awin_start.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/evbarm/awin/awin_start.S diff -u src/sys/arch/evbarm/awin/awin_start.S:1.13 src/sys/arch/evbarm/awin/awin_start.S:1.14 --- src/sys/arch/evbarm/awin/awin_start.S:1.13 Mon Dec 26 13:28:59 2016 +++ src/sys/arch/evbarm/awin/awin_start.S Wed Jul 5 23:04:09 2017 @@ -41,7 +41,7 @@ #include #include -RCSID("$NetBSD: awin_start.S,v 1.13 2016/12/26 13:28:59 rjs Exp $") +RCSID("$NetBSD: awin_start.S,v 1.14 2017/07/05 23:04:09 chs Exp $") #if defined(VERBOSE_INIT_ARM) #define XPUTC(n) mov r0, n; bl xputc @@ -170,6 +170,10 @@ _C_LABEL(awin_start): #endif lsr r1, r1, #16 + /* Set up a small stack in case gtmr_bootdelay() wants it */ + movw sp, #:lower16:awin_initstkbase + movt sp, #:upper16:awin_initstkbase + // MP init based on SoC ID #if defined(ALLWINNER_A20) # if defined(ALLWINNER_A31) @@ -209,6 +213,13 @@ _C_LABEL(awin_start): .popsection #endif + .pushsection .bss + .align 8 +awin_initstk: + .space 32 +awin_initstkbase: + .popsection + #include #if defined(MULTIPROCESSOR) @@ -323,11 +334,11 @@ a31_mpinit: setend le // everything here is little-endian #endif - mov r12, #1 // CPU number + mov r10, #1 // CPU number a31_mpinit_cpu: - add r1, r12, #'0' + add r1, r10, #'0' XPUTC2(r1) /* Set where the other CPU(s) are going to execute */ @@ -339,7 +350,7 @@ a31_mpinit_cpu: /* Assert CPU core reset */ mov r1, #0 mov r2, #0x40 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_CPUCFG_CPU0_RST_CTRL_REG str r1, [r5, r7] dsb @@ -347,7 +358,7 @@ a31_mpinit_cpu: /* Ensure CPUX reset also invalidates its L1 caches */ ldr r1, [r5, #AWIN_CPUCFG_GENCTRL_REG] mov r0, #1 - lsl r0, r0, r12 + lsl r0, r0, r10 bic r1, r1, r0 str r1, [r5, #AWIN_CPUCFG_GENCTRL_REG] dsb @@ -355,13 +366,13 @@ a31_mpinit_cpu: /* Release power clamp */ mov r1, #0xe7 mov r2, #0x4 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_PRCM_CPUX_PWR_CLAMP_REG str r1, [r6, r7] dsb mov r2, #0x40 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_CPUCFG_CPU0_PWR_CLAMP_STATUS_REG 1: ldr r1, [r5, r7] @@ -375,13 +386,13 @@ a31_mpinit_cpu: /* Restore power clamp */ mov r1, #0 mov r2, #0x4 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_PRCM_CPUX_PWR_CLAMP_REG str r1, [r6, r7] dsb mov r2, #0x40 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_CPUCFG_CPU0_PWR_CLAMP_STATUS_REG 1: ldr r1, [r5, r7] @@ -395,7 +406,7 @@ a31_mpinit_cpu: /* Clear power-off gating */ ldr r1, [r6, #AWIN_A31_PRCM_PWROFF_GATING_REG] mov r0, #1 - lsl r0, r0, r12 + lsl r0, r0, r10 bic r1, r1, r0 str r1, [r6, #AWIN_A31_PRCM_PWROFF_GATING_REG] dsb @@ -407,14 +418,14 @@ a31_mpinit_cpu: /* Bring CPUX out of reset */ mov r1, #(AWIN_A31_CPUCFG_RST_CTRL_CPU_RESET|AWIN_A31_CPUCFG_RST_CTRL_CORE_RESET) mov r2, #0x40 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A31_CPUCFG_CPU0_RST_CTRL_REG str r1, [r5, r7] dsb /* If there is another CPU, start it */ - add r12, r12, #1 - cmp r12, #3 + add r10, r10, #1 + cmp r10, #3 ble a31_mpinit_cpu #ifdef __ARMEB__ @@ -462,11 +473,11 @@ a80_mpinit: setend le // everything here is little-endian #endif - mov r12, #1 // CPU number + mov r10, #1 // CPU number a80_mpinit_cpu: - add r1, r12, #'0' + add r1, r10, #'0' XPUTC2(r1) /* Set where the other CPU(s) are going to execute */ @@ -478,27 +489,27 @@ a80_mpinit_cpu: /* Assert CPU power on reset */ ldr r1, [r6, #AWIN_A80_RPRCM_CLUSTER0_RST_REG] mov r0, #1 - lsl r0, r0, r12 + lsl r0, r0, r10 bic r1, r1, r0 str r1, [r6, #AWIN_A80_RPRCM_CLUSTER0_RST_REG] /* Assert CPU core reset */ ldr r1, [r5, #AWIN_A80_RCPUCFG_CLUSTER0_RST_REG] mov r0, #1 - lsl r0, r0, r12 + lsl r0, r0, r10 bic r1, r1, r0 str r1, [r5, #AWIN_A80_RCPUCFG_CLUSTER0_RST_REG] /* Release power clamp */ mov r1, #0x00 mov r2, #0x4 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A80_RPRCM_CLUSTER0_PRW_CLAMP_REG str r1, [r6, r7] dsb mov r2, #0x40 - mul r7, r12, r2 + mul r7, r10, r2 add r7, r7, #AWIN_A80_RPRCM_CLUSTER0_PRW_CLAMP_STATUS_REG 1: ldr r1, [r5, r7] @@ -512,7 +523,7 @@ a80_mpinit_cpu: /* Clear power-off gating */ ldr r1, [r6, #AWIN_A80_RPRCM_CLUSTER0_PWR_GATING_REG] mov r0, #1 - lsl r0, r0, r12 + lsl r0, r0, r10 bic r1, r1, r0 str r1, [r6, #AWIN_A80_
CVS commit: src
Module Name:src Committed By: jmcneill Date: Thu Jul 6 00:17:04 UTC 2017 Modified Files: src/distrib/utils/embedded: mkimage src/distrib/utils/embedded/conf: armv7.conf src/etc/etc.evbarm: Makefile.inc Log Message: Replace HUMMINGBIRD_A31 with SUNXI kernel on armv7.img and include .dtb files for SUNXI and TEGRA kernels on the MSDOS partition. To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/distrib/utils/embedded/mkimage cvs rdiff -u -r1.12 -r1.13 src/distrib/utils/embedded/conf/armv7.conf cvs rdiff -u -r1.87 -r1.88 src/etc/etc.evbarm/Makefile.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/utils/embedded/mkimage diff -u src/distrib/utils/embedded/mkimage:1.65 src/distrib/utils/embedded/mkimage:1.66 --- src/distrib/utils/embedded/mkimage:1.65 Sat Jun 10 23:26:32 2017 +++ src/distrib/utils/embedded/mkimage Thu Jul 6 00:17:04 2017 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mkimage,v 1.65 2017/06/10 23:26:32 christos Exp $ +# $NetBSD: mkimage,v 1.66 2017/07/06 00:17:04 jmcneill Exp $ # # Copyright (c) 2013, 2014 The NetBSD Foundation, Inc. # All rights reserved. @@ -51,6 +51,7 @@ set -e DIR="$(cd "$(dirname "$0")" && pwd)" PROG="$(basename "$0")" +MAKE=${TOOL_MAKE:-make} DISKLABEL=${TOOL_DISKLABEL:-disklabel} FDISK=${TOOL_FDISK:-fdisk} MAKEFS=${TOOL_MAKEFS:-makefs} Index: src/distrib/utils/embedded/conf/armv7.conf diff -u src/distrib/utils/embedded/conf/armv7.conf:1.12 src/distrib/utils/embedded/conf/armv7.conf:1.13 --- src/distrib/utils/embedded/conf/armv7.conf:1.12 Wed Apr 12 23:35:29 2017 +++ src/distrib/utils/embedded/conf/armv7.conf Thu Jul 6 00:17:04 2017 @@ -1,4 +1,4 @@ -# $NetBSD: armv7.conf,v 1.12 2017/04/12 23:35:29 jmcneill Exp $ +# $NetBSD: armv7.conf,v 1.13 2017/07/06 00:17:04 jmcneill Exp $ # ARMv7 customization script used by mkimage # board=armv7 @@ -8,10 +8,11 @@ resize=true . ${DIR}/conf/evbarm.conf kernels_beagle="BEAGLEBOARD BEAGLEBONE" -kernels_awin="BPI CUBIEBOARD CUBIETRUCK HUMMINGBIRD_A31" +kernels_awin="BPI CUBIEBOARD CUBIETRUCK" kernels_rpi="RPI2" kernels_amlogic="ODROID-C1" kernels_tegra="TEGRA" +kernels_sunxi="SUNXI" make_label() { make_label_evbarm @@ -105,6 +106,9 @@ run bootcmd EOF } +populate_sunxi() { +} + populate_tegra() { tegra_kernelimg=netbsd-TEGRA.ub tegra_loadaddr=0x9000 @@ -124,7 +128,7 @@ populate() { echo "${bar} looking for kernels in ${kernel} ${bar}" kernels="" # .ub kernels - for k in $kernels_beagle $kernels_awin $kernels_amlogic $kernels_tegra; do + for k in $kernels_beagle $kernels_awin $kernels_sunxi $kernels_amlogic $kernels_tegra; do f="${kernel}/netbsd-${k}.ub.gz" test -f "${f}" && kernels="${kernels} ${f}" done @@ -133,6 +137,14 @@ populate() { f="${kernel}/netbsd-${k}.bin.gz" test -f "${f}" && kernels="${kernels} ${f}" done + # .dtb files + for k in $kernels_sunxi $kernels_tegra; do + dtbs="$(${MAKE} -C ${KERNOBJDIR}/${k} -v DTB)" + for dtb in $dtbs; do + f="${kernel}/${dtb}.gz" + test -f "${f}" && kernels="${kernels} ${f}" + done + done # install kernels to /boot partition for k in ${kernels}; do @@ -154,4 +166,5 @@ populate() { populate_rpi populate_amlogic populate_tegra + populate_sunxi } Index: src/etc/etc.evbarm/Makefile.inc diff -u src/etc/etc.evbarm/Makefile.inc:1.87 src/etc/etc.evbarm/Makefile.inc:1.88 --- src/etc/etc.evbarm/Makefile.inc:1.87 Wed Jul 5 19:50:49 2017 +++ src/etc/etc.evbarm/Makefile.inc Thu Jul 6 00:17:04 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.87 2017/07/05 19:50:49 jmcneill Exp $ +# $NetBSD: Makefile.inc,v 1.88 2017/07/06 00:17:04 jmcneill Exp $ # # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets # @@ -134,6 +134,7 @@ IMAGE.kern= ${IMAGE.rel}/binary/kernel IMAGE.instk= ${IMAGE.rel}/installation/instkernel __mkimage: .USE + TOOL_MAKE=${MAKE} \ TOOL_MAKEFS=${TOOL_MAKEFS} \ TOOL_DISKLABEL=${TOOL_DISKLABEL} \ TOOL_FDISK=${TOOL_FDISK} \ @@ -143,6 +144,8 @@ __mkimage: .USE TOOL_MKUBOOTIMAGE=${TOOL_MKUBOOTIMAGE} \ TOOL_MTREE=${TOOL_MTREE} \ HOST_SH=${HOST_SH} \ + KERNOBJDIR=${KERNOBJDIR} \ + MACHINE=${MACHINE} \ ${HOST_SH} ${MKIMAGE} -x -h ${.TARGET:S/smp_//} -D ${DESTDIR} \ -S ${NETBSDSRCDIR} -B ${IMAGEENDIAN} ${MKI_OPTS.${.TARGET}} \ ${IMAGE.dir}/${.TARGET:S/smp_//}.img.gz
CVS commit: src
Module Name:src Committed By: jmcneill Date: Thu Jul 6 00:35:28 UTC 2017 Modified Files: src/etc/etc.evbarm: Makefile.inc src/sys/arch/evbarm/conf: std.tegra Removed Files: src/sys/arch/evbarm/conf: TEGRA_INSTALL Log Message: Enable memory disk support in the TEGRA kernel and remove TEGRA_INSTALL. To generate a diff of this commit: cvs rdiff -u -r1.88 -r1.89 src/etc/etc.evbarm/Makefile.inc cvs rdiff -u -r1.1 -r0 src/sys/arch/evbarm/conf/TEGRA_INSTALL cvs rdiff -u -r1.15 -r1.16 src/sys/arch/evbarm/conf/std.tegra Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/etc.evbarm/Makefile.inc diff -u src/etc/etc.evbarm/Makefile.inc:1.88 src/etc/etc.evbarm/Makefile.inc:1.89 --- src/etc/etc.evbarm/Makefile.inc:1.88 Thu Jul 6 00:17:04 2017 +++ src/etc/etc.evbarm/Makefile.inc Thu Jul 6 00:35:28 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.88 2017/07/06 00:17:04 jmcneill Exp $ +# $NetBSD: Makefile.inc,v 1.89 2017/07/06 00:35:28 jmcneill Exp $ # # etc.evbarm/Makefile.inc -- evbarm-specific etc Makefile targets # @@ -103,8 +103,8 @@ EVBARM_BOARDS.armv7hf+= CUBOX-I #EVBARM_BOARDS.armv7+= IGEPV2 EVBARM_BOARDS.armv7+= IMX6UL-STARTER EVBARM_BOARDS.armv7hf+= IMX6UL-STARTER -EVBARM_BOARDS.armv7+= TEGRA -EVBARM_BOARDS.armv7hf+= TEGRA +KERNEL_SETS.armv7+= TEGRA +KERNEL_SETS.armv7hf+= TEGRA EVBARM_BOARDS.armv7+= ARMADILLO-IOT-G3 EVBARM_BOARDS.armv7hf+= ARMADILLO-IOT-G3 EVBARM_BOARDS.armv7+= KOBO Index: src/sys/arch/evbarm/conf/std.tegra diff -u src/sys/arch/evbarm/conf/std.tegra:1.15 src/sys/arch/evbarm/conf/std.tegra:1.16 --- src/sys/arch/evbarm/conf/std.tegra:1.15 Wed Jul 5 01:08:44 2017 +++ src/sys/arch/evbarm/conf/std.tegra Thu Jul 6 00:35:28 2017 @@ -1,4 +1,4 @@ -# $NetBSD: std.tegra,v 1.15 2017/07/05 01:08:44 jmcneill Exp $ +# $NetBSD: std.tegra,v 1.16 2017/07/06 00:35:28 jmcneill Exp $ # machine evbarm arm @@ -30,3 +30,8 @@ makeoptions BOARDMKFRAG="${THISARM}/conf options ARM_INTR_IMPL="" options ARM_GENERIC_TODR + +# initrd support +options MEMORY_DISK_HOOKS +options MEMORY_DISK_DYNAMIC +pseudo-device md
CVS commit: src/external/gpl3/binutils/usr.sbin/dbsym
Module Name:src Committed By: chs Date: Thu Jul 6 02:34:00 UTC 2017 Modified Files: src/external/gpl3/binutils/usr.sbin/dbsym: dbsym.c Log Message: copy the CTF section too, if there is one. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c diff -u src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c:1.4 src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c:1.5 --- src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c:1.4 Sun Aug 17 19:12:59 2014 +++ src/external/gpl3/binutils/usr.sbin/dbsym/dbsym.c Thu Jul 6 02:34:00 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: dbsym.c,v 1.4 2014/08/17 19:12:59 joerg Exp $ */ +/* $NetBSD: dbsym.c,v 1.5 2017/07/06 02:34:00 chs Exp $ */ /* * Copyright (c) 2001 Simon Burge (for Wasabi Systems) @@ -39,7 +39,7 @@ __COPYRIGHT("@(#) Copyright (c) 1996 Christopher G. Demetriou.\ Copyright 2001 Simon Burge.\ All rights reserved."); -__RCSID("$NetBSD: dbsym.c,v 1.4 2014/08/17 19:12:59 joerg Exp $"); +__RCSID("$NetBSD: dbsym.c,v 1.5 2017/07/06 02:34:00 chs Exp $"); #endif /* not lint */ #include @@ -362,8 +362,9 @@ load_symtab(bfd *abfd, int fd, char **sy Elf32_External_Shdr *s32hdr = NULL; Elf64_External_Shdr *s64hdr = NULL; void *shdr; + char *shstrtab = NULL; u_int32_t osymtabsize, sh_offset; - int elftype, e_shnum, i, sh_size; + int elftype, e_shnum, i, sh_size, rv = 1, shstridx; off_t e_shoff; if (lseek(fd, 0, SEEK_SET) < 0) @@ -422,8 +423,19 @@ load_symtab(bfd *abfd, int fd, char **sy if (read(fd, shdr, sh_size) != sh_size) goto out; + shstridx = (ISELF64 + ? bfd_get_16(abfd, e64_hdr.e_shstrndx) + : bfd_get_16(abfd, e32_hdr.e_shstrndx)); + shstrtab = malloc(shstridx); + if (shstrtab == NULL) + goto out; + if (pread(fd, shstrtab, SH_SIZE(shstridx), SH_OFFSET(shstridx)) != + SH_SIZE(shstridx)) + goto out; + for (i = 0; i < e_shnum; i++) { - if (SH_TYPE(i) == SHT_SYMTAB || SH_TYPE(i) == SHT_STRTAB) { + if (SH_TYPE(i) == SHT_SYMTAB || SH_TYPE(i) == SHT_STRTAB || + !strcmp(shstrtab + SH_NAME(i), ".SUNW_ctf")) { osymtabsize = *symtabsize; *symtabsize += roundup(SH_SIZE(i), ISELF64 ? 8 : 4); if ((*symtab = realloc(*symtab, *symtabsize)) == NULL) @@ -467,10 +479,11 @@ load_symtab(bfd *abfd, int fd, char **sy bfd_put_16(abfd, 0, e32_hdr.e_phnum); } memcpy(*symtab, &ehdr, sizeof(ehdr)); + rv = 0; - free(shdr); - return (0); out: + if (shstrtab != NULL) + free(shstrtab); free(shdr); - return (1); + return (rv); }
CVS commit: [netbsd-8] src/sys/arch/arm/cortex
Module Name:src Committed By: martin Date: Thu Jul 6 05:28:43 UTC 2017 Modified Files: src/sys/arch/arm/cortex [netbsd-8]: a9_mpsubr.S Log Message: Pull up following revision(s) (requested by skrll in ticket #99): sys/arch/arm/cortex/a9_mpsubr.S: revision 1.48 Make fp 0 on entry to idle_stack to ensure we mark that we're top of stack To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.47.8.1 src/sys/arch/arm/cortex/a9_mpsubr.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/arm/cortex/a9_mpsubr.S diff -u src/sys/arch/arm/cortex/a9_mpsubr.S:1.47 src/sys/arch/arm/cortex/a9_mpsubr.S:1.47.8.1 --- src/sys/arch/arm/cortex/a9_mpsubr.S:1.47 Tue Oct 4 15:18:23 2016 +++ src/sys/arch/arm/cortex/a9_mpsubr.S Thu Jul 6 05:28:43 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: a9_mpsubr.S,v 1.47 2016/10/04 15:18:23 kiyohara Exp $ */ +/* $NetBSD: a9_mpsubr.S,v 1.47.8.1 2017/07/06 05:28:43 martin Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. * All rights reserved. @@ -778,6 +778,7 @@ cortex_mpcontinuation: movw r2, #:lower16:MD_CPU_HATCH // pass md_cpu_hatch movt r2, #:upper16:MD_CPU_HATCH // pass md_cpu_hatch bl _C_LABEL(cpu_hatch) + mov fp, #0// top stack frame b _C_LABEL(idle_loop) // never to return ASEND(cortex_mpcontinuation)
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Thu Jul 6 05:29:43 UTC 2017 Modified Files: src/doc [netbsd-8]: CHANGES-8.0 Log Message: Ticket #99 To generate a diff of this commit: cvs rdiff -u -r1.1.2.19 -r1.1.2.20 src/doc/CHANGES-8.0 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-8.0 diff -u src/doc/CHANGES-8.0:1.1.2.19 src/doc/CHANGES-8.0:1.1.2.20 --- src/doc/CHANGES-8.0:1.1.2.19 Wed Jul 5 20:27:50 2017 +++ src/doc/CHANGES-8.0 Thu Jul 6 05:29:43 2017 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-8.0,v 1.1.2.19 2017/07/05 20:27:50 snj Exp $ +# $NetBSD: CHANGES-8.0,v 1.1.2.20 2017/07/06 05:29:43 martin Exp $ A complete list of changes from the initial NetBSD 8.0 branch on 2017-06-04 until the 8.0 release: @@ -1793,3 +1793,9 @@ sys/arch/x86/x86/pmap.c1.252 Fix "reboot -d". PR kern/49610. [jdolecek, ticket #98] +sys/arch/arm/cortex/a9_mpsubr.S 1.48 + + Make fp 0 on entry to idle_stack to ensure we mark that we're top of + stack. + [skrll, ticket #99] +
CVS commit: src/sys/arch/arm/include/arm32
Module Name:src Committed By: skrll Date: Thu Jul 6 06:31:24 UTC 2017 Modified Files: src/sys/arch/arm/include/arm32: pmap.h Log Message: Trailing whitespace To generate a diff of this commit: cvs rdiff -u -r1.147 -r1.148 src/sys/arch/arm/include/arm32/pmap.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/arm/include/arm32/pmap.h diff -u src/sys/arch/arm/include/arm32/pmap.h:1.147 src/sys/arch/arm/include/arm32/pmap.h:1.148 --- src/sys/arch/arm/include/arm32/pmap.h:1.147 Thu May 25 20:42:41 2017 +++ src/sys/arch/arm/include/arm32/pmap.h Thu Jul 6 06:31:24 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.h,v 1.147 2017/05/25 20:42:41 skrll Exp $ */ +/* $NetBSD: pmap.h,v 1.148 2017/07/06 06:31:24 skrll Exp $ */ /* * Copyright (c) 2002, 2003 Wasabi Systems, Inc. @@ -488,7 +488,7 @@ extern int pmap_needs_pte_sync; * Finally, MEMC, GENERIC and XSCALE MMUs do not need PTE syncs. * * Use run time evaluation for all other cases. - * + * */ #if (ARM_NMMUS == 1) #if (ARM_MMU_SA1 + ARM_MMU_V6 != 0)