CVS commit: src/external/public-domain/sqlite/dist
Module Name:src Committed By: christos Date: Mon Dec 17 16:26:38 UTC 2012 Modified Files: src/external/public-domain/sqlite/dist: sqlite3.1 Log Message: now that I know how to escape a period, nothing can stop me :-) To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/external/public-domain/sqlite/dist/sqlite3.1 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/public-domain/sqlite/dist/sqlite3.1 diff -u src/external/public-domain/sqlite/dist/sqlite3.1:1.3 src/external/public-domain/sqlite/dist/sqlite3.1:1.4 --- src/external/public-domain/sqlite/dist/sqlite3.1:1.3 Sun Dec 16 18:37:34 2012 +++ src/external/public-domain/sqlite/dist/sqlite3.1 Mon Dec 17 11:26:38 2012 @@ -1,4 +1,4 @@ -.\ $NetBSD: sqlite3.1,v 1.3 2012/12/16 23:37:34 wiz Exp $ +.\ $NetBSD: sqlite3.1,v 1.4 2012/12/17 16:26:38 christos Exp $ .Dd December 16, 2012 .Dt SQLITE3 1 .Os @@ -67,7 +67,7 @@ used to control the output format, exami database files, or perform administrative operations upon the attached databases (such as rebuilding indices). Meta-commands are always prefixed with a dot -.Dq \. . +.Dq \. . .Pp A list of available meta-commands can be viewed at any time by issuing the '.help' command.
CVS commit: src/sys/arch/arm/arm32
Module Name:src Committed By: matt Date: Mon Dec 17 17:10:48 UTC 2012 Modified Files: src/sys/arch/arm/arm32: genassym.cf Log Message: Add CPU_VFP_ID and PCB_VFP_FPEXC To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/sys/arch/arm/arm32/genassym.cf 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/arm32/genassym.cf diff -u src/sys/arch/arm/arm32/genassym.cf:1.59 src/sys/arch/arm/arm32/genassym.cf:1.60 --- src/sys/arch/arm/arm32/genassym.cf:1.59 Mon Dec 10 06:50:28 2012 +++ src/sys/arch/arm/arm32/genassym.cf Mon Dec 17 17:10:48 2012 @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.59 2012/12/10 06:50:28 matt Exp $ +# $NetBSD: genassym.cf,v 1.60 2012/12/17 17:10:48 matt Exp $ # Copyright (c) 1982, 1990 The Regents of the University of California. # All rights reserved. @@ -140,6 +140,7 @@ define PCB_LR offsetof(struct pcb, pcb define PCB_PC offsetof(struct pcb, pcb_un.un_32.pcb32_pc) define PCB_USER_PID_RW offsetof(struct pcb, pcb_un.un_32.pcb32_user_pid_rw) define PCB_ONFAULT offsetof(struct pcb, pcb_onfault) +define PCB_VFP_FPEXC offsetof(struct pcb, pcb_vfp.vfp_fpexc) define PCB_SIZE sizeof(struct pcb) @@ -192,6 +193,9 @@ define CI_IDLELWP offsetof(struct cpu_i define CI_CC_NTRAP offsetof(struct cpu_info, ci_data.cpu_ntrap) define CI_CC_NINTR offsetof(struct cpu_info, ci_data.cpu_nintr) define CI_CC_NSOFT offsetof(struct cpu_info, ci_data.cpu_nsoft) +ifdef FPU_VFP +define CI_VFP_ID offsetof(struct cpu_info, ci_vfp_id) +endif define VFP_FPEXC_EN VFP_FPEXC_EN
CVS commit: src/sys/dev/isa
Module Name:src Committed By: mbalmer Date: Mon Dec 17 17:44:18 UTC 2012 Modified Files: src/sys/dev/isa: ptcd.c Log Message: Fix the CVS Id marker. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/dev/isa/ptcd.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/dev/isa/ptcd.c diff -u src/sys/dev/isa/ptcd.c:1.1 src/sys/dev/isa/ptcd.c:1.2 --- src/sys/dev/isa/ptcd.c:1.1 Sun Dec 16 13:09:20 2012 +++ src/sys/dev/isa/ptcd.c Mon Dec 17 17:44:18 2012 @@ -1,4 +1,4 @@ -/* $NetBSD */ +/* $NetBSD: ptcd.c,v 1.2 2012/12/17 17:44:18 mbalmer Exp $ */ /* * Copyright (c) 2012 Marc Balmer m...@msys.ch
CVS commit: src/sys/arch/arm/arm32
Module Name:src Committed By: matt Date: Mon Dec 17 17:45:01 UTC 2012 Modified Files: src/sys/arch/arm/arm32: cpuswitch.S Log Message: Make sure to load the FPEXC context on context switch (if there a VFP) so that the VFP state will be what the LWP expects. (This isn't needed on PPC or MIPS since their FPU/VEC state is reflected in the PSL/CPO_STATUS which is handled automatically.) To generate a diff of this commit: cvs rdiff -u -r1.75 -r1.76 src/sys/arch/arm/arm32/cpuswitch.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/arm32/cpuswitch.S diff -u src/sys/arch/arm/arm32/cpuswitch.S:1.75 src/sys/arch/arm/arm32/cpuswitch.S:1.76 --- src/sys/arch/arm/arm32/cpuswitch.S:1.75 Mon Dec 10 01:37:30 2012 +++ src/sys/arch/arm/arm32/cpuswitch.S Mon Dec 17 17:45:01 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: cpuswitch.S,v 1.75 2012/12/10 01:37:30 matt Exp $ */ +/* $NetBSD: cpuswitch.S,v 1.76 2012/12/17 17:45:01 matt Exp $ */ /* * Copyright 2003 Wasabi Systems, Inc. @@ -89,7 +89,7 @@ #include machine/asm.h #include machine/cpu.h - RCSID($NetBSD: cpuswitch.S,v 1.75 2012/12/10 01:37:30 matt Exp $) + RCSID($NetBSD: cpuswitch.S,v 1.76 2012/12/17 17:45:01 matt Exp $) /* LINTSTUB: include sys/param.h */ @@ -141,26 +141,26 @@ ENTRY(cpu_switchto) mov r4, r0 #ifdef TPIDRPRW_IS_CURCPU - GET_CURCPU(r7) + GET_CURCPU(r3) #elif defined(TPIDRPRW_IS_CURLWP) mcr p15, 0, r0, c13, c0, 4 /* get old lwp (r4 maybe 0) */ - ldr r7, [r0, #(L_CPU)] /* get cpu from old lwp */ + ldr r3, [r0, #(L_CPU)] /* get cpu from old lwp */ #elif !defined(MULTIPROCESSOR) - ldr r7, [r6, #L_CPU] /* get cpu from new lwp */ + ldr r3, [r6, #L_CPU] /* get cpu from new lwp */ #else #error curcpu() method not defined #endif + /* rem: r3 = curcpu() */ /* rem: r4 = old lwp */ /* rem: r6 = new lwp */ - /* rem: r7 = curcpu() */ #ifndef __HAVE_UNNESTED_INTRS IRQdisable #endif #ifdef MULTIPROCESSOR - str r7, [r6, #(L_CPU)] + str r3, [r6, #(L_CPU)] #else /* l-l_cpu initialized in fork1() for single-processor */ #endif @@ -169,7 +169,7 @@ ENTRY(cpu_switchto) mcr p15, 0, r6, c13, c0, 4 /* set current lwp */ #endif /* We have a new curlwp now so make a note it */ - str r6, [r7, #(CI_CURLWP)] + str r6, [r3, #(CI_CURLWP)] /* Get the new pcb */ ldr r7, [r6, #(L_PCB)] @@ -179,6 +179,7 @@ ENTRY(cpu_switchto) IRQenable #endif + /* rem: r3 = curlwp */ /* rem: r4 = old lwp */ /* rem: r6 = new lwp */ /* rem: r7 = new pcb */ @@ -193,6 +194,7 @@ ENTRY(cpu_switchto) teq r4, #0 beq .Ldo_switch + /* rem: r3 = curlwp */ /* rem: r4 = old lwp */ /* rem: r6 = new lwp */ /* rem: r7 = new pcb */ @@ -204,7 +206,7 @@ ENTRY(cpu_switchto) ldr r5, [r4, #(L_PCB)] /* Save all the registers in the old lwp's pcb */ -#if defined(__XSCALE__) || defined(_ARM_ARCH_6) +#if defined(_ARM_ARCH_DWORD_OK) strd r8, [r5, #(PCB_R8)] strd r10, [r5, #(PCB_R10)] strd r12, [r5, #(PCB_R12)] @@ -225,6 +227,7 @@ ENTRY(cpu_switchto) * them for the new process. */ + /* rem: r3 = curlwp */ /* rem: r4 = old lwp */ /* rem: r5 = old pcb */ /* rem: r6 = new lwp */ @@ -234,6 +237,7 @@ ENTRY(cpu_switchto) /* Restore saved context */ .Ldo_switch: + /* rem: r3 = curlwp */ /* rem: r4 = old lwp */ /* rem: r6 = new lwp */ /* rem: r7 = new pcb */ @@ -249,6 +253,16 @@ ENTRY(cpu_switchto) mcr p15, 0, r0, c13, c0, 3 #endif +#ifdef FPU_VFP + /* + * If we have a VFP, we need to load FPEXC. + */ + ldr r0, [r3, #(CI_VFP_ID)] + cmp r0, #0 + ldrne r0, [r7, #(PCB_VFP_FPEXC)] + mcrne p10, 7, r0, c8, c0, 0 +#endif + ldr r5, [r6, #(L_PROC)] /* fetch the proc for below */ /* Restore all the saved registers */ @@ -258,18 +272,18 @@ ENTRY(cpu_switchto) ldr r10, [r7, #(PCB_R10)] ldr r11, [r7, #(PCB_R11)] ldr r12, [r7, #(PCB_R12)] - ldr r13, [r7, #(PCB_KSP)] -#elif defined(_ARM_ARCH_6) + ldr r13, [r7, #(PCB_KSP)] /* sp */ +#elif defined(_ARM_ARCH_DWORD_OK) ldrd r8, [r7, #(PCB_R8)] ldrd r10, [r7, #(PCB_R10)] - ldrd r12, [r7, #(PCB_R12)] + ldrd r12, [r7, #(PCB_R12)] /* sp */ #else add r0, r7, #PCB_R8 ldmia r0, {r8-r13} #endif /* Record the old lwp for pmap_activate()'s benefit */ - ldr r1, .Lpmap_previous_active_lwp + ldr r1, .Lpmap_previous_active_lwp /* XXXSMP */ str r4, [r1] /* rem: r4 = old lwp */
CVS commit: src/sys/dev/isa
Module Name:src Committed By: mbalmer Date: Mon Dec 17 17:46:27 UTC 2012 Modified Files: src/sys/dev/isa: ptcd.c Log Message: No need to include machine/pio.h now that inb() and outb() are no longer used. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/dev/isa/ptcd.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/dev/isa/ptcd.c diff -u src/sys/dev/isa/ptcd.c:1.2 src/sys/dev/isa/ptcd.c:1.3 --- src/sys/dev/isa/ptcd.c:1.2 Mon Dec 17 17:44:18 2012 +++ src/sys/dev/isa/ptcd.c Mon Dec 17 17:46:27 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: ptcd.c,v 1.2 2012/12/17 17:44:18 mbalmer Exp $ */ +/* $NetBSD: ptcd.c,v 1.3 2012/12/17 17:46:27 mbalmer Exp $ */ /* * Copyright (c) 2012 Marc Balmer m...@msys.ch @@ -36,8 +36,6 @@ #include sys/kernel.h #include sys/bus.h -#include machine/pio.h - #include dev/gpio/gpiovar.h #include dev/isa/isareg.h
CVS commit: [netbsd-6-0] src/distrib/notes/common
Module Name:src Committed By: riz Date: Mon Dec 17 17:52:07 UTC 2012 Modified Files: src/distrib/notes/common [netbsd-6-0]: main Log Message: Update release notes for 6.0.1. To generate a diff of this commit: cvs rdiff -u -r1.484.2.4 -r1.484.2.4.2.1 src/distrib/notes/common/main Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/notes/common/main diff -u src/distrib/notes/common/main:1.484.2.4 src/distrib/notes/common/main:1.484.2.4.2.1 --- src/distrib/notes/common/main:1.484.2.4 Fri Oct 12 22:06:59 2012 +++ src/distrib/notes/common/main Mon Dec 17 17:52:06 2012 @@ -1,4 +1,4 @@ -.\ $NetBSD: main,v 1.484.2.4 2012/10/12 22:06:59 riz Exp $ +.\ $NetBSD: main,v 1.484.2.4.2.1 2012/12/17 17:52:06 riz Exp $ .\ .\ Copyright (c) 1999-2012 The NetBSD Foundation, Inc. .\ All rights reserved. @@ -458,429 +458,51 @@ possible, it's likely that wouldn't exist. . .if \n[FOR_RELEASE] \{\ -.Ss Changes Between The NetBSD 5.0 and 6.0 Releases +.Ss Changes Between The NetBSD 6.0 and 6.0.1 Releases .Pp -The -.Nx -\*V release -provides numerous significant functional enhancements, including -support for many new devices, integration of hundreds of bug fixes, -new and updated kernel subsystems, and many user-land enhancements. -The result of these improvements is a stable operating system fit for -production use that rivals most commercially available systems. -.Pp -It is impossible to completely summarize the massive development that -went into the -.Nx -\*V release. The complete list of changes can be found in the -CHANGES: -.Lk http://ftp.NetBSD.org/pub/NetBSD/NetBSD-6.0/CHANGES -and -CHANGES-6.0: -.Lk http://ftp.NetBSD.org/pub/NetBSD/NetBSD-6.0/CHANGES-6.0 -files in the top level directory of the NetBSD 6.0 release tree. -.Pp -Some highlights include: -.Ss2 General kernel +CHANGES-6.0.1: +.Lk http://ftp.NetBSD.org/pub/NetBSD/NetBSD-6.0.1/CHANGES-6.0.1 +file in the top level directory of the NetBSD 6.0.1 release tree. An abbreviated list is as follows: +.Ss2 Security Fixes .(bullet -.Dv time_t -and -.Dv dev_t -are now 64 bits. -.It -Much-improved compat_linux support for running Linux binaries. -.It -Added a generic producer/consumer queue. -.It -Added a new ptree ( Patricia / RADIX tree ) implementation. -.It -Removed -.Dv MALLOC() -and -.Dv FREE() -macros. -.It -Compute -.Dv kern.ipc.shmmaxpages -on startup based on physical memory. Can be overridden via -.Xr sysctl 8 . -.It -.Xr kmem_alloc 9 : -Add more extensive runtime debugging facilities. -.It -File descriptor access performance improvements were made. -.It -.Xr cpu_reboot 9 : -tear down stacks of devices and file systems in an orderly fashion during shutdown. -.It -Added 'show vmem' and 'show all vmems' commands to -.Xr ddb 4 . -.It -Added high-priority -.Xr xcall 9 -support. -.It -Added direct select()/poll() support. -.It -Add PCU (Per-CPU Unit) interface to unify synchronization of per CPU context, like lazy FPU management. -.It -Added new system calls -.Xr pipe2 2 , -.Xr paccept 2 , -.Xr kqueue1 2 , -flags SOCK_CLOEXEC/SOCK_NONBLOCK to -.Xr socket 2 , -.Xr socketpair 2 , -F_DUPFD_CLOEXEC to -.Xr fcntl 2 , -and a MSG_CMSG_CLOEXEC to -.Xr recvfrom 2 -to be able to set close-on-exec to all newly created file descriptors. -.It -Major improvements to -.Xr uvm_map 9 , -.Xr uvm_km 9 , -.Xr vmem 9 , -and -.Xr kmem 9 -layers. -.It -Removed -.Xr ltsleep 9 -and wakeup_one(9). -.It -Rewrote most of the entropy-gathering and entropy-distributing code, separating the -.Xr rnd 4 -pseudodevice from the bitstream generation code -.Xr cprng 9 -and entropy-pool code -.Xr rnd 9 . +expat: Fix CVE-2012-1147, CVE-2012-1148 and CVE-2012-0876. .It -.Xr kmem_alloc 9 : -add more extensive runtime debugging facilities. -.It -Kernel support for -.Xr posix_spawn 3 . +BIND: Address CVE-2012-5688: Named could die on specific queries with dns64 enabled. .bullet) . -.Ss2 Networking +.Ss2 General kernel .(bullet -.Xr ip 4 : -added IP_RECVTTL option to let -.Xr recvmsg 2 -return the TTL of the received datagram. -.It -.Xr ip 4 : -added IP_MINTTL option to discard packets with a TTL lower than the option value. +posix_spawn(): Fix processes with attributes. .It -Added SOCK_SEQPACKET for local sockets. +Resolve races between vget() and vrele() resulting in vget() returning dead vnodes. .It -Added -.Dv net.inet.icmp.bmcastecho -.Xr sysctl 7 , -to disable ICMP replies to the braodcast address. +Prevent crash when unsupported fd's are used with kevent. .It -Make TCP window size autoscaling the default. -.It -Derive the mbuf cluster (NMBCLUSTERS) at boot time from the available memory. The default can be raised by changing -.Dv kern.mbuf.nmbclusters -. -.It -Added NPF, the NetBSD Packet Filter. -.It -.Xr udp 4 : -implement RFC6056 port selection algorithms. .bullet) . -.Ss2 File systems +.Ss2 Networking .(bullet -Added CHFS, a file system for flash devices. -.It
CVS commit: src
Module Name:src Committed By: apb Date: Mon Dec 17 18:17:27 UTC 2012 Modified Files: src/etc: rc.subr src/share/man/man8: rc.subr.8 Log Message: Add shell implementations of basename and dirname to rc.subr. They are supposed to mimic basename(1) and dirname(1), except that they are usable before /usr/bin is mounted. To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.92 src/etc/rc.subr cvs rdiff -u -r1.29 -r1.30 src/share/man/man8/rc.subr.8 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/rc.subr diff -u src/etc/rc.subr:1.91 src/etc/rc.subr:1.92 --- src/etc/rc.subr:1.91 Sat Apr 7 17:28:44 2012 +++ src/etc/rc.subr Mon Dec 17 18:17:27 2012 @@ -1,4 +1,4 @@ -# $NetBSD: rc.subr,v 1.91 2012/04/07 17:28:44 christos Exp $ +# $NetBSD: rc.subr,v 1.92 2012/12/17 18:17:27 apb Exp $ # # Copyright (c) 1997-2011 The NetBSD Foundation, Inc. # All rights reserved. @@ -1256,6 +1256,34 @@ collapse_backslash_newline() done } +# Shell implementations of basename and dirname, usable before +# the /usr file system is mounted. +# +basename() +{ + local file=$1 + local suffix=$2 + local base + + base=${file##*/} # remove up to and including last '/' + base=${base%${suffix}} # remove suffix, if any + command printf %s\n ${base} +} + +dirname() +{ + local file=$1 + local dir + + case $file in + /*/*) dir=${file%/*} ;; # common case: absolute path + /*) dir=/ ;; # special case: name in root dir + */*) dir=${file%/*} ;; # common case: relative path with '/' + *) dir=. ;; # special case: name without '/' + esac + command printf %s\n ${dir} +} + # Override the normal echo and printf commands, so that # partial lines printed by rc.d scripts appear immediately, # instead of being buffered by rc(8)'s post-processor. Index: src/share/man/man8/rc.subr.8 diff -u src/share/man/man8/rc.subr.8:1.29 src/share/man/man8/rc.subr.8:1.30 --- src/share/man/man8/rc.subr.8:1.29 Thu Aug 11 22:52:46 2011 +++ src/share/man/man8/rc.subr.8 Mon Dec 17 18:17:27 2012 @@ -1,4 +1,4 @@ -.\ $NetBSD: rc.subr.8,v 1.29 2011/08/11 22:52:46 apb Exp $ +.\ $NetBSD: rc.subr.8,v 1.30 2012/12/17 18:17:27 apb Exp $ .\ .\ Copyright (c) 2002-2011 The NetBSD Foundation, Inc. .\ All rights reserved. @@ -40,6 +40,8 @@ .It .Ic backup_file Ar action Ar file Ar current Ar backup .It +.Ic basename Ar file Op Ar suffix +.It .Ic checkyesno Ar var .It .Ic check_pidfile Ar pidfile Ar procname Op Ar interpreter @@ -48,6 +50,8 @@ .It .Ic collapse_backslash_newline .It +.Ic dirname Ar file +.It .Ic err Ar exitval Ar message .It .Ic load_rc_config Ar command @@ -157,6 +161,12 @@ otherwise is moved to .Ar backup . .El +.Ic basename Ar file Op Ar suffix +Just like +.Xr basename 1 , +except implemented using shell built-in commands, and usable before the +.Pa /usr/bin +direcory is available. .It Ic checkyesno Ar var Return 0 if .Ar var @@ -214,6 +224,12 @@ is handled as per Copy input to output, collapsing .Ao backslash Ac Ns Ao newline Ac to nothing, but leaving other backslashes alone. +.Ic dirname Ar file +Just like +.Xr dirname 1 , +except implemented using shell built-in commands, and usable before the +.Pa /usr/bin +direcory is available. .It Ic err Ar exitval Ar message Display an error message to .Em stderr ,
CVS commit: src/etc/rc.d
Module Name:src Committed By: apb Date: Mon Dec 17 18:20:50 UTC 2012 Modified Files: src/etc/rc.d: random_seed Log Message: Reinstate the dirname invocations that were recently removed from rc.d/random_seed. The new dirname shell function provided by rc.subr will be used, so it should work before the /usr file system is mounted. This should fix a problem in which the fs_safe shell function failed when passed the name of a file that did not exist. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/etc/rc.d/random_seed Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/etc/rc.d/random_seed diff -u src/etc/rc.d/random_seed:1.4 src/etc/rc.d/random_seed:1.5 --- src/etc/rc.d/random_seed:1.4 Fri Dec 14 18:42:25 2012 +++ src/etc/rc.d/random_seed Mon Dec 17 18:20:50 2012 @@ -1,6 +1,6 @@ #!/bin/sh # -# $NetBSD: random_seed,v 1.4 2012/12/14 18:42:25 apb Exp $ +# $NetBSD: random_seed,v 1.5 2012/12/17 18:20:50 apb Exp $ # # PROVIDE: random_seed @@ -59,7 +59,7 @@ random_load() { if [ -f $random_file ]; then - if ! fs_safe ${random_file}; then + if ! fs_safe $(dirname ${random_file}); then return 1 fi @@ -90,7 +90,7 @@ random_save() rm -Pf ${random_file} - if ! fs_safe ${random_file}; then + if ! fs_safe $(dirname ${random_file}); then return 1 fi
CVS commit: [netbsd-6-0] src
Module Name:src Committed By: riz Date: Mon Dec 17 18:49:09 UTC 2012 Modified Files: src/doc [netbsd-6-0]: CHANGES-6.0.1 LAST_MINUTE README.files src/sys/sys [netbsd-6-0]: param.h Log Message: Welcome to 6.0.1! To generate a diff of this commit: cvs rdiff -u -r1.1.2.37 -r1.1.2.38 src/doc/CHANGES-6.0.1 cvs rdiff -u -r1.2.40.1 -r1.2.40.1.4.1 src/doc/LAST_MINUTE cvs rdiff -u -r1.4.20.1 -r1.4.20.1.2.1 src/doc/README.files cvs rdiff -u -r1.408.2.6.2.1 -r1.408.2.6.2.2 src/sys/sys/param.h 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-6.0.1 diff -u src/doc/CHANGES-6.0.1:1.1.2.37 src/doc/CHANGES-6.0.1:1.1.2.38 --- src/doc/CHANGES-6.0.1:1.1.2.37 Mon Dec 17 00:33:00 2012 +++ src/doc/CHANGES-6.0.1 Mon Dec 17 18:49:08 2012 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-6.0.1,v 1.1.2.37 2012/12/17 00:33:00 riz Exp $ +# $NetBSD: CHANGES-6.0.1,v 1.1.2.38 2012/12/17 18:49:08 riz Exp $ A complete list of changes from the NetBSD 6.0 release to the NetBSD 6.0.1 release: @@ -292,3 +292,11 @@ sys/compat/netbsd32/netbsd32_fs.c 1.64 Fix inverted error check. [matt, ticket #756] +distrib/notes/common/main patched by hand +doc/LAST_MINUTE patched by hand +doc/README.filespatched by hand +sys/sys/param.h patched by hand + + Welcome to 6.0.1! + [riz] + Index: src/doc/LAST_MINUTE diff -u src/doc/LAST_MINUTE:1.2.40.1 src/doc/LAST_MINUTE:1.2.40.1.4.1 --- src/doc/LAST_MINUTE:1.2.40.1 Wed Feb 15 23:46:47 2012 +++ src/doc/LAST_MINUTE Mon Dec 17 18:49:09 2012 @@ -1,6 +1,6 @@ -# $NetBSD: LAST_MINUTE,v 1.2.40.1 2012/02/15 23:46:47 riz Exp $ +# $NetBSD: LAST_MINUTE,v 1.2.40.1.4.1 2012/12/17 18:49:09 riz Exp $ -This file contains important information on the NetBSD 6.0 release that +This file contains important information on the NetBSD 6.0.1 release that did not make it into the main documentation. [all] Index: src/doc/README.files diff -u src/doc/README.files:1.4.20.1 src/doc/README.files:1.4.20.1.2.1 --- src/doc/README.files:1.4.20.1 Fri Sep 7 22:13:38 2012 +++ src/doc/README.files Mon Dec 17 18:49:09 2012 @@ -1,8 +1,13 @@ -# $NetBSD: README.files,v 1.4.20.1 2012/09/07 22:13:38 bouyer Exp $ +# $NetBSD: README.files,v 1.4.20.1.2.1 2012/12/17 18:49:09 riz Exp $ What's in this directory: -CHANGES Changes between the XXX.XXX-1 and XXX.XXX releases. +CHANGES-6.0.1 Changes between the 6.0 and 6.0.1 releases. + +CHANGES-6.0 Changes between the creation of the netbsd-6 branch and + the 6.0 release. + +CHANGES Changes between the 5.0 and 6.0 releases. CHANGES.prev Changes in previous NetBSD releases. Index: src/sys/sys/param.h diff -u src/sys/sys/param.h:1.408.2.6.2.1 src/sys/sys/param.h:1.408.2.6.2.2 --- src/sys/sys/param.h:1.408.2.6.2.1 Wed Oct 17 22:44:46 2012 +++ src/sys/sys/param.h Mon Dec 17 18:49:08 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: param.h,v 1.408.2.6.2.1 2012/10/17 22:44:46 riz Exp $ */ +/* $NetBSD: param.h,v 1.408.2.6.2.2 2012/12/17 18:49:08 riz Exp $ */ /*- * Copyright (c) 1982, 1986, 1989, 1993 @@ -63,7 +63,7 @@ * 2.99.9 (299000900) */ -#define __NetBSD_Version__ 6 /* NetBSD 6.0.0_PATCH */ +#define __NetBSD_Version__ 60001 /* NetBSD 6.0.1 */ #define __NetBSD_Prereq__(M,m,p) (M) * 1) + \ (m) * 100) + (p) * 100) = __NetBSD_Version__)
CVS commit: src/lib/libc/gen
Module Name:src Committed By: christos Date: Tue Dec 18 01:39:56 UTC 2012 Modified Files: src/lib/libc/gen: glob.c Log Message: Do as the man page says, and for GLOB_NOCHECK return the original pattern, not a modified version with the backslash characters removed. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/lib/libc/gen/glob.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/lib/libc/gen/glob.c diff -u src/lib/libc/gen/glob.c:1.31 src/lib/libc/gen/glob.c:1.32 --- src/lib/libc/gen/glob.c:1.31 Sun Oct 30 17:53:43 2011 +++ src/lib/libc/gen/glob.c Mon Dec 17 20:39:56 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: glob.c,v 1.31 2011/10/30 21:53:43 christos Exp $ */ +/* $NetBSD: glob.c,v 1.32 2012/12/18 01:39:56 christos Exp $ */ /* * Copyright (c) 1989, 1993 @@ -37,7 +37,7 @@ #if 0 static char sccsid[] = @(#)glob.c 8.3 (Berkeley) 10/13/93; #else -__RCSID($NetBSD: glob.c,v 1.31 2011/10/30 21:53:43 christos Exp $); +__RCSID($NetBSD: glob.c,v 1.32 2012/12/18 01:39:56 christos Exp $); #endif #endif /* LIBC_SCCS and not lint */ @@ -163,7 +163,7 @@ static int g_lstat(Char *, __gl_stat_t static DIR *g_opendir(Char *, glob_t *); static Char *g_strchr(const Char *, int); static int g_stat(Char *, __gl_stat_t *, glob_t *); -static int glob0(const Char *, glob_t *, struct glob_limit *); +static int glob0(const char *, const Char *, glob_t *, struct glob_limit *); static int glob1(Char *, glob_t *, struct glob_limit *); static int glob2(Char *, Char *, Char *, const Char *, glob_t *, struct glob_limit *); @@ -171,8 +171,8 @@ static int glob3(Char *, Char *, Char * const Char *, glob_t *, struct glob_limit *); static int globextend(const Char *, glob_t *, struct glob_limit *); static const Char *globtilde(const Char *, Char *, size_t, glob_t *); -static int globexp1(const Char *, glob_t *, struct glob_limit *); -static int globexp2(const Char *, const Char *, glob_t *, int *, +static int globexp1(const char *, const Char *, glob_t *, struct glob_limit *); +static int globexp2(const char *, const Char *, const Char *, glob_t *, int *, struct glob_limit *); static int match(const Char *, const Char *, const Char *); #ifdef DEBUG @@ -222,9 +222,9 @@ glob(const char * __restrict pattern, in *bufnext = EOS; if (flags GLOB_BRACE) - return globexp1(patbuf, pglob, limit); + return globexp1(pattern, patbuf, pglob, limit); else - return glob0(patbuf, pglob, limit); + return glob0(pattern, patbuf, pglob, limit); } /* @@ -233,7 +233,7 @@ glob(const char * __restrict pattern, in * characters */ static int -globexp1(const Char *pattern, glob_t *pglob, struct glob_limit *limit) +globexp1(const char *orig, const Char *pattern, glob_t *pglob, struct glob_limit *limit) { const Char* ptr = pattern; int rv; @@ -249,13 +249,13 @@ globexp1(const Char *pattern, glob_t *pg /* Protect a single {}, for find(1), like csh */ if (pattern[0] == LBRACE pattern[1] == RBRACE pattern[2] == EOS) - return glob0(pattern, pglob, limit); + return glob0(orig, pattern, pglob, limit); while ((ptr = (const Char *) g_strchr(ptr, LBRACE)) != NULL) - if (!globexp2(ptr, pattern, pglob, rv, limit)) + if (!globexp2(orig, ptr, pattern, pglob, rv, limit)) return rv; - return glob0(pattern, pglob, limit); + return glob0(orig, pattern, pglob, limit); } @@ -265,7 +265,7 @@ globexp1(const Char *pattern, glob_t *pg * If it fails then it tries to glob the rest of the pattern and returns. */ static int -globexp2(const Char *ptr, const Char *pattern, glob_t *pglob, int *rv, +globexp2(const char *orig, const Char *ptr, const Char *pattern, glob_t *pglob, int *rv, struct glob_limit *limit) { int i; @@ -311,7 +311,7 @@ globexp2(const Char *ptr, const Char *pa * we use `pattern', not `patbuf' here so that that * unbalanced braces are passed to the match */ - *rv = glob0(pattern, pglob, limit); + *rv = glob0(orig, pattern, pglob, limit); return 0; } @@ -358,7 +358,7 @@ globexp2(const Char *ptr, const Char *pa #ifdef DEBUG qprintf(globexp2, patbuf); #endif -*rv = globexp1(patbuf, pglob, limit); +*rv = globexp1(orig, patbuf, pglob, limit); /* move after the comma, to the next string */ pl = pm + 1; @@ -471,7 +471,7 @@ globtilde(const Char *pattern, Char *pat * to find no matches. */ static int -glob0(const Char *pattern, glob_t *pglob, struct glob_limit *limit) +glob0(const char *orig, const Char *pattern, glob_t *pglob, struct glob_limit *limit) { const Char *qpatnext; int c, error; @@ -556,7 +556,17 @@ glob0(const Char *pattern, glob_t *pglob if ((pglob-gl_flags GLOB_NOCHECK) || ((pglob-gl_flags (GLOB_NOMAGIC|GLOB_MAGCHAR)) == GLOB_NOMAGIC)) { - return globextend(pattern, pglob, limit); + const u_char *patnext; + Char *bufend; + bufend = patbuf
CVS commit: src/sys/arch/arm/cortex
Module Name:src Committed By: matt Date: Tue Dec 18 06:05:56 UTC 2012 Modified Files: src/sys/arch/arm/cortex: cpu_in_cksum_asm_neon.S Log Message: Tighten up cpu_in_cksum_neon_v4hdr by 3 instructions. Swap the doubles on a partial qword load on BE platforms. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/cortex/cpu_in_cksum_asm_neon.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/cpu_in_cksum_asm_neon.S diff -u src/sys/arch/arm/cortex/cpu_in_cksum_asm_neon.S:1.1 src/sys/arch/arm/cortex/cpu_in_cksum_asm_neon.S:1.2 --- src/sys/arch/arm/cortex/cpu_in_cksum_asm_neon.S:1.1 Mon Dec 17 00:44:03 2012 +++ src/sys/arch/arm/cortex/cpu_in_cksum_asm_neon.S Tue Dec 18 06:05:56 2012 @@ -28,9 +28,8 @@ */ #include machine/asm.h -#include assym.h -RCSID($NetBSD: cpu_in_cksum_asm_neon.S,v 1.1 2012/12/17 00:44:03 matt Exp $) +RCSID($NetBSD: cpu_in_cksum_asm_neon.S,v 1.2 2012/12/18 06:05:56 matt Exp $) /* * uint32_t @@ -102,6 +101,9 @@ END(cpu_in_cksum_neon) partial_qword: str lr, [sp, #-8]! /* save LR */ vld1.64 {d4-d5}, [ip:128]! /* fetch data */ +#ifdef __ARMEB__ + vswp d5, d4 /* on BE, MSW should be in d5 */ +#endif veor q0, q0, q0 /* create a null mask */ movs r0, r1, lsl #3 /* any leading bytes? */ blne _C_LABEL(__neon_leading_qword_bitmask) @@ -123,16 +125,13 @@ partial_qword: * uint32_t cpu_in_cksum_neon_v4hdr(void *dptr) */ ENTRY(cpu_in_cksum_neon_v4hdr) - veor q1, q1, q1 bic ip, r0, #7 vld1.32 {d0-d2},[ip] /* it must be in 24 bytes */ - mov r1, #0 /* now we must clear one register */ tst r0, #4 /* depending on 64-bit alignment */ beq 1f vmov s0, s5 /* move last U32 to first U32 */ 1: vmovl.u32 q1, d2 /* move s5 to d3 and clear s5 */ - vmovl.u16 q2, d0 /* 4 U16 - 4 U32 */ - vadd.u32 q3, q3, q2 /* add 4 U32 to accumulator */ + vmovl.u16 q3, d0 /* 4 U16 - 4 U32 */ vmovl.u16 q2, d1 /* 4 U16 - 4 U32 */ vadd.u32 q3, q3, q2 /* add 4 U32 to accumulator */ vmovl.u16 q2, d2 /* 4 U16 - 4 U32 */
CVS commit: src/common/lib/libc/arch/arm/gen
Module Name:src Committed By: matt Date: Tue Dec 18 06:14:23 UTC 2012 Modified Files: src/common/lib/libc/arch/arm/gen: neon_mask.S Log Message: Don't need to include assym.h Add a missing comma. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/common/lib/libc/arch/arm/gen/neon_mask.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/common/lib/libc/arch/arm/gen/neon_mask.S diff -u src/common/lib/libc/arch/arm/gen/neon_mask.S:1.1 src/common/lib/libc/arch/arm/gen/neon_mask.S:1.2 --- src/common/lib/libc/arch/arm/gen/neon_mask.S:1.1 Mon Dec 17 00:46:14 2012 +++ src/common/lib/libc/arch/arm/gen/neon_mask.S Tue Dec 18 06:14:23 2012 @@ -28,11 +28,10 @@ */ #include machine/asm.h -#include assym.h #ifdef _ARM_ARCH_7 -RCSID($NetBSD: neon_mask.S,v 1.1 2012/12/17 00:46:14 matt Exp $) +RCSID($NetBSD: neon_mask.S,v 1.2 2012/12/18 06:14:23 matt Exp $) /* * __neon_loading_qword_bitmask(size_t len); @@ -45,7 +44,7 @@ ENTRY(__neon_leading_qword_bitmask) sublt r0, r0, #64 /* 1st dword needs MSBs cleared */ subge r1, r0, #128 /* 2nd dword needs MSBs cleared */ #else - rsblt r0, r0 #64 /* 1st dword needs LSBs cleared */ + rsblt r0, r0, #64 /* 1st dword needs LSBs cleared */ rsbge r1, r0, #128 /* 2nd dword needs LSBs cleared */ #endif movge r0, #0 /* 1st dword needs to left alone */
CVS commit: src/sys/arch/arm/arm32
Module Name:src Committed By: matt Date: Tue Dec 18 06:30:19 UTC 2012 Modified Files: src/sys/arch/arm/arm32: vm_machdep.c Log Message: Remove unneeded definitions. When forking a LWP, disable the VFP in the new LWP since it isn't the LWP that owns the VFP. To generate a diff of this commit: cvs rdiff -u -r1.63 -r1.64 src/sys/arch/arm/arm32/vm_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/arm/arm32/vm_machdep.c diff -u src/sys/arch/arm/arm32/vm_machdep.c:1.63 src/sys/arch/arm/arm32/vm_machdep.c:1.64 --- src/sys/arch/arm/arm32/vm_machdep.c:1.63 Mon Dec 10 01:37:31 2012 +++ src/sys/arch/arm/arm32/vm_machdep.c Tue Dec 18 06:30:18 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: vm_machdep.c,v 1.63 2012/12/10 01:37:31 matt Exp $ */ +/* $NetBSD: vm_machdep.c,v 1.64 2012/12/18 06:30:18 matt Exp $ */ /* * Copyright (c) 1994-1998 Mark Brinicombe. @@ -44,7 +44,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: vm_machdep.c,v 1.63 2012/12/10 01:37:31 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: vm_machdep.c,v 1.64 2012/12/18 06:30:18 matt Exp $); #include opt_armfpe.h #include opt_pmap_debug.h @@ -64,16 +64,13 @@ __KERNEL_RCSID(0, $NetBSD: vm_machdep.c #include uvm/uvm_extern.h +#include arm/vfpreg.h + #include machine/pcb.h #include machine/pmap.h #include machine/reg.h #include machine/vmparam.h -extern pv_addr_t systempage; - -int process_read_regs(struct proc *p, struct reg *regs); -int process_read_fpregs(struct proc *p, struct fpreg *regs); - void lwp_trampoline(void); /* @@ -114,30 +111,29 @@ void cpu_lwp_fork(struct lwp *l1, struct lwp *l2, void *stack, size_t stacksize, void (*func)(void *), void *arg) { - struct pcb *pcb1, *pcb2; struct switchframe *sf; vaddr_t uv; - pcb1 = lwp_getpcb(l1); - pcb2 = lwp_getpcb(l2); + const struct pcb * const pcb1 = lwp_getpcb(l1); + struct pcb * const pcb2 = lwp_getpcb(l2); #ifdef PMAP_DEBUG if (pmap_debug_level = 0) printf(cpu_lwp_fork: %p %p %p %p\n, l1, l2, curlwp, lwp0); #endif /* PMAP_DEBUG */ -#if 0 /* XXX */ - if (l1 == curlwp) { - /* Sync the PCB before we copy it. */ - savectx(curpcb); - } -#endif - - l2-l_md.md_flags = l1-l_md.md_flags MDLWP_VFPUSED; - /* Copy the pcb */ *pcb2 = *pcb1; +#ifdef FPU_VFP + /* + * Disable the VFP for a newly created LWP but remember if the + * VFP state is valid. + */ + pcb2-pcb_vfp.vfp_fpexc = ~VFP_FPEXC_EN; + l2-l_md.md_flags = l1-l_md.md_flags MDLWP_VFPUSED; +#endif + /* * Set up the kernel stack for the process. * Note: this stack is not in use if we are forking from p1
CVS commit: src/sys/arch/arm/arm
Module Name:src Committed By: matt Date: Tue Dec 18 06:31:58 UTC 2012 Modified Files: src/sys/arch/arm/arm: disassem.c Log Message: Start adding support for disassembling some NEON instructions. To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/arch/arm/arm/disassem.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/arm/disassem.c diff -u src/sys/arch/arm/arm/disassem.c:1.19 src/sys/arch/arm/arm/disassem.c:1.20 --- src/sys/arch/arm/arm/disassem.c:1.19 Thu Feb 16 02:34:56 2012 +++ src/sys/arch/arm/arm/disassem.c Tue Dec 18 06:31:58 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: disassem.c,v 1.19 2012/02/16 02:34:56 christos Exp $ */ +/* $NetBSD: disassem.c,v 1.20 2012/12/18 06:31:58 matt Exp $ */ /* * Copyright (c) 1996 Mark Brinicombe. @@ -49,7 +49,7 @@ #include sys/param.h -__KERNEL_RCSID(0, $NetBSD: disassem.c,v 1.19 2012/02/16 02:34:56 christos Exp $); +__KERNEL_RCSID(0, $NetBSD: disassem.c,v 1.20 2012/12/18 06:31:58 matt Exp $); #include sys/systm.h #include arch/arm/arm/disassem.h @@ -71,36 +71,42 @@ __KERNEL_RCSID(0, $NetBSD: disassem.c,v * * * 2 - print Operand 2 of a data processing instruction - * d - destination register (bits 12-15) - * n - n register (bits 16-19) - * s - s register (bits 8-11) - * o - indirect register rn (bits 16-19) (used by swap) - * m - m register (bits 0-3) * a - address operand of ldr/str instruction - * l - register list for ldm/stm instruction + * b - branch address + * c - comment field bits(0-23) + * d - destination register (bits 12-15) * f - 1st fp operand (register) (bits 12-14) * g - 2nd fp operand (register) (bits 16-18) * h - 3rd fp operand (register/immediate) (bits 0-4) - * b - branch address - * t - thumb branch address (bits 24, 0-23) * k - breakpoint comment (bits 0-3, 8-19) - * X - block transfer type - * Y - block transfer type (r13 base) - * c - comment field bits(0-23) + * l - register list for ldm/stm instruction + * m - m register (bits 0-3) + * n - n register (bits 16-19) + * o - indirect register rn (bits 16-19) (used by swap) * p - saved or current status register - * F - PSR transfer fields + * q - neon N register (7, 19-16) + * s - s register (bits 8-11) + * t - thumb branch address (bits 24, 0-23) + * u - neon M register (5, 3-0) + * v - co-processor data transfer registers + addressing mode + * w - neon D register (22, 15-12) + * x - instruction in hex + * y - co-processor data processing registers + * z - co-processor register transfer registers * D - destination-is-r15 (P) flag on TST, TEQ, CMP, CMN + * F - PSR transfer fields + * I - NEON operand size * L - co-processor transfer size - * S - set status flag + * N - quad neon operand * P - fp precision * Q - fp precision (for ldf/stf) * R - fp rounding - * v - co-processor data transfer registers + addressing mode + * S - set status flag + * U - neon unsigned. * W - writeback flag - * x - instruction in hex + * X - block transfer type + * Y - block transfer type (r13 base) * # - co-processor number - * y - co-processor data processing registers - * z - co-processor register transfer registers */ struct arm32_insn { @@ -222,6 +228,21 @@ static const struct arm32_insn arm32_i[] { 0x0e100090, 0x0c10, ldc, L#v }, { 0xfe100090, 0xfc00, stc2, L#v }, { 0x0e100090, 0x0c00, stc, L#v }, +{ 0xffb00f10, 0xf2000110, vand, Nuqw }, +{ 0xffb00f10, 0xf2100110, vbic, Nuqw }, +{ 0xffb00f10, 0xf2200110, vorr, Nuqw }, +{ 0xffb00f10, 0xf2300110, vorn, Nuqw }, +{ 0xffb00f10, 0xf3000110, veor, Nuqw }, +{ 0xffb00f10, 0xf3100110, vbsl, Nuqw }, +{ 0xffb00f10, 0xf3200110, vbit, Nuqw }, +{ 0xffb00f10, 0xf3300110, vbif, Nuqw }, +{ 0xfe800f10, 0xf3000400, vshl, SINuqw }, +{ 0xfe800f10, 0xf3000410, vqshl, SINuqw }, +{ 0xfe800f10, 0xf3000500, vrshl, SINuqw }, +{ 0xfe800f10, 0xf3000510, vqrshl, SINuqw }, +{ 0xffb00f10, 0xf2000800, vadd, INuqw }, +{ 0xffb00f10, 0xf2000810, vtst, INuqw }, +{ 0xffb00f10, 0xf3000800, vsub, INuqw }, { 0x, 0x, NULL, NULL } }; @@ -298,6 +319,8 @@ disasm(const disasm_interface_t *di, vad fmt = 0; matchp = 0; insn = di-di_readword(loc); + char neonfmt = 'd'; + char neonsign = 'u'; /* di-di_printf(loc=%08x insn=%08x : , loc, insn);*/ @@ -347,6 +370,11 @@ disasm(const disasm_interface_t *di, vad case 'd': di-di_printf(r%d, ((insn 12) 0x0f)); break; + /* u - neon destination register (bits 22, 12-15) */ + case 'u': + di-di_printf(%c%d, neonfmt, + ((insn 18) 0x10)|((insn 12) 0x0f)); + break; /* D - insert 'p' if Rd is R15 */ case 'D': if (((insn 12) 0x0f) == 15) @@ -356,6 +384,11 @@ disasm(const disasm_interface_t *di, vad case 'n': di-di_printf(r%d, ((insn 16) 0x0f)); break; + /* q - neon n register (bits 7, 16-19) */ + case 'q': +