CVS commit: src/sys/arch/mac68k/dev
Module Name:src Committed By: hauke Date: Fri Dec 7 08:04:02 UTC 2012 Modified Files: src/sys/arch/mac68k/dev: sbc.c Log Message: Remove the R1 syntactic sugar, since it collides with a #define in , breaking the build. The R1s serve to bring the buffer pointer to a 4 byte boundary, but that should be clear from the context. To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/sys/arch/mac68k/dev/sbc.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/mac68k/dev/sbc.c diff -u src/sys/arch/mac68k/dev/sbc.c:1.54 src/sys/arch/mac68k/dev/sbc.c:1.55 --- src/sys/arch/mac68k/dev/sbc.c:1.54 Mon Nov 23 00:11:44 2009 +++ src/sys/arch/mac68k/dev/sbc.c Fri Dec 7 08:04:02 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: sbc.c,v 1.54 2009/11/23 00:11:44 rmind Exp $ */ +/* $NetBSD: sbc.c,v 1.55 2012/12/07 08:04:02 hauke Exp $ */ /* * Copyright (C) 1996 Scott Reynolds. All rights reserved. @@ -45,7 +45,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: sbc.c,v 1.54 2009/11/23 00:11:44 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sbc.c,v 1.55 2012/12/07 08:04:02 hauke Exp $"); #include "opt_ddb.h" @@ -274,7 +274,6 @@ sbc_pdma_in(struct ncr5380_softc *ncr_sc } #define R4 *(u_int32_t *)data = *long_data, data += 4; -#define R1 *(u_int8_t *)data = *byte_data, data += 1; for (; resid >= 128; resid -= 128) { if (sbc_ready(ncr_sc)) goto interrupt; @@ -286,11 +285,10 @@ sbc_pdma_in(struct ncr5380_softc *ncr_sc while (resid) { if (sbc_ready(ncr_sc)) goto interrupt; - R1; + *(u_int8_t *)data = *byte_data, data += 1; resid--; } #undef R4 -#undef R1 interrupt: nofault = NULL; @@ -546,12 +544,10 @@ sbc_drq_intr(void *p) if (count && count < 4) { data = (u_int8_t *)dh->dh_addr; drq = (volatile u_int8_t *)sc->sc_drq_addr; - -#define R1 *data++ = *drq++ while (count) { -R1; count--; +*data++ = *drq++; +count--; } -#undef R1 dh->dh_addr += resid; dh->dh_len -= resid; } @@ -576,12 +572,10 @@ sbc_drq_intr(void *p) #undef R4 data = (u_int8_t *)long_data; drq = (volatile u_int8_t *)long_drq; - -#define R1 *data++ = *drq++ while (count) { -R1; count--; +*data++ = *drq++; +count--; } -#undef R1 dh->dh_len -= dcount; dh->dh_addr += dcount; }
CVS commit: src/sys/arch/sparc64/conf
Module Name:src Committed By: jdc Date: Fri Dec 7 12:57:02 UTC 2012 Modified Files: src/sys/arch/sparc64/conf: GENERIC Log Message: Add uthum (tested on U60 with Belkin F5U508 USB 2 and SB2000 built-in USB 1). To generate a diff of this commit: cvs rdiff -u -r1.155 -r1.156 src/sys/arch/sparc64/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/sparc64/conf/GENERIC diff -u src/sys/arch/sparc64/conf/GENERIC:1.155 src/sys/arch/sparc64/conf/GENERIC:1.156 --- src/sys/arch/sparc64/conf/GENERIC:1.155 Fri Nov 2 17:51:03 2012 +++ src/sys/arch/sparc64/conf/GENERIC Fri Dec 7 12:57:01 2012 @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.155 2012/11/02 17:51:03 jdc Exp $ +# $NetBSD: GENERIC,v 1.156 2012/12/07 12:57:01 jdc Exp $ # # GENERIC machine description file # @@ -22,7 +22,7 @@ include "arch/sparc64/conf/std.sparc64" options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident "GENERIC-$Revision: 1.155 $" +#ident "GENERIC-$Revision: 1.156 $" maxusers 64 @@ -593,6 +593,9 @@ wsmouse* at uep? mux 0 ukbd* at uhidev? reportid ? wskbd* at ukbd? console ? mux 1 +# USB TEMPer and TEMPerHUM +uthum* at uhidev? reportid ? + # USB serial adapter ucycom* at uhidev? reportid ?
CVS commit: src/sys/netipsec
Module Name:src Committed By: christos Date: Fri Dec 7 15:29:38 UTC 2012 Modified Files: src/sys/netipsec: ipsec.c Log Message: rename pcb_sp to policy to avoid: $SRC/arch/arm/include/pcb.h:#define pcb_sp pcb_un.un_32.pcb32_sp $SRC/arch/arm/include/pcb.h:#define pcb_sp pcb_sf.sf_r13 To generate a diff of this commit: cvs rdiff -u -r1.56 -r1.57 src/sys/netipsec/ipsec.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/netipsec/ipsec.c diff -u src/sys/netipsec/ipsec.c:1.56 src/sys/netipsec/ipsec.c:1.57 --- src/sys/netipsec/ipsec.c:1.56 Tue Mar 13 14:41:00 2012 +++ src/sys/netipsec/ipsec.c Fri Dec 7 10:29:38 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: ipsec.c,v 1.56 2012/03/13 18:41:00 elad Exp $ */ +/* $NetBSD: ipsec.c,v 1.57 2012/12/07 15:29:38 christos Exp $ */ /* $FreeBSD: /usr/local/www/cvsroot/FreeBSD/src/sys/netipsec/ipsec.c,v 1.2.2.2 2003/07/01 01:38:13 sam Exp $ */ /* $KAME: ipsec.c,v 1.103 2001/05/24 07:14:18 sakane Exp $ */ @@ -32,7 +32,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ipsec.c,v 1.56 2012/03/13 18:41:00 elad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ipsec.c,v 1.57 2012/12/07 15:29:38 christos Exp $"); /* * IPsec controller part. @@ -1155,12 +1155,12 @@ ipsec_delpcbpolicy(struct inpcbpolicy *p /* initialize policy in PCB */ int -ipsec_init_policy(struct socket *so, struct inpcbpolicy **pcb_sp) +ipsec_init_policy(struct socket *so, struct inpcbpolicy **policy) { struct inpcbpolicy *new; /* sanity check. */ - if (so == NULL || pcb_sp == NULL) + if (so == NULL || policy == NULL) panic("ipsec_init_policy: NULL pointer was passed"); new = malloc(sizeof(*new), M_SECA, M_NOWAIT|M_ZERO); @@ -1189,7 +1189,7 @@ ipsec_init_policy(struct socket *so, str new->sp_out->state = IPSEC_SPSTATE_ALIVE; new->sp_out->policy = IPSEC_POLICY_ENTRUST; - *pcb_sp = new; + *policy = new; return 0; } @@ -1278,7 +1278,7 @@ fail: /* set policy and ipsec request if present. */ static int ipsec_set_policy( - struct secpolicy **pcb_sp, + struct secpolicy **policy, int optname, const void *request, size_t len, @@ -1290,7 +1290,7 @@ ipsec_set_policy( int error; /* sanity check. */ - if (pcb_sp == NULL || *pcb_sp == NULL || request == NULL) + if (policy == NULL || *policy == NULL || request == NULL) return EINVAL; if (len < sizeof(*xpl)) return EINVAL; @@ -1321,8 +1321,8 @@ ipsec_set_policy( newsp->state = IPSEC_SPSTATE_ALIVE; /* clear old SP and set new SP */ - KEY_FREESP(pcb_sp); - *pcb_sp = newsp; + KEY_FREESP(policy); + *policy = newsp; KEYDEBUG(KEYDEBUG_IPSEC_DUMP, printf("ipsec_set_policy: new policy\n"); kdebug_secpolicy(newsp)); @@ -1331,14 +1331,14 @@ ipsec_set_policy( } static int -ipsec_get_policy(struct secpolicy *pcb_sp, struct mbuf **mp) +ipsec_get_policy(struct secpolicy *policy, struct mbuf **mp) { /* sanity check. */ - if (pcb_sp == NULL || mp == NULL) + if (policy == NULL || mp == NULL) return EINVAL; - *mp = key_sp2msg(pcb_sp); + *mp = key_sp2msg(policy); if (!*mp) { ipseclog((LOG_DEBUG, "ipsec_get_policy: No more memory.\n")); return ENOBUFS; @@ -1357,7 +1357,7 @@ ipsec4_set_policy(struct inpcb *inp, int size_t len, kauth_cred_t cred) { const struct sadb_x_policy *xpl; - struct secpolicy **pcb_sp; + struct secpolicy **policy; /* sanity check. */ if (inp == NULL || request == NULL) @@ -1372,10 +1372,10 @@ ipsec4_set_policy(struct inpcb *inp, int /* select direction */ switch (xpl->sadb_x_policy_dir) { case IPSEC_DIR_INBOUND: - pcb_sp = &inp->inp_sp->sp_in; + policy = &inp->inp_sp->sp_in; break; case IPSEC_DIR_OUTBOUND: - pcb_sp = &inp->inp_sp->sp_out; + policy = &inp->inp_sp->sp_out; break; default: ipseclog((LOG_ERR, "ipsec4_set_policy: invalid direction=%u\n", @@ -1383,7 +1383,7 @@ ipsec4_set_policy(struct inpcb *inp, int return EINVAL; } - return ipsec_set_policy(pcb_sp, optname, request, len, cred); + return ipsec_set_policy(policy, optname, request, len, cred); } int @@ -1391,7 +1391,7 @@ ipsec4_get_policy(struct inpcb *inp, con struct mbuf **mp) { const struct sadb_x_policy *xpl; - struct secpolicy *pcb_sp; + struct secpolicy *policy; /* sanity check. */ if (inp == NULL || request == NULL || mp == NULL) @@ -1404,10 +1404,10 @@ ipsec4_get_policy(struct inpcb *inp, con /* select direction */ switch (xpl->sadb_x_policy_dir) { case IPSEC_DIR_INBOUND: - pcb_sp = inp->inp_sp->sp_in; + policy = inp->inp_sp->sp_in; break; case IPSEC_DIR_OUTBOUND: - pcb_sp = inp->inp_sp->sp_out; + policy = inp->inp_sp->sp_out; break; default: ipseclog((LOG_ERR, "ipsec4_set_policy: invalid direction=%u\n", @@ -1415,7 +1415,7 @@ ipsec4_get_policy(struct inpcb *inp, con return EINVAL; } - return ipsec_get_policy(pcb_sp, mp); + return ipsec_get_policy(policy, mp); } /* delete policy in PCB */ @@ -14
CVS commit: src/external/gpl3/gcc/lib/libgcc
Module Name:src Committed By: christos Date: Fri Dec 7 15:38:04 UTC 2012 Modified Files: src/external/gpl3/gcc/lib/libgcc: Makefile.inc Log Message: If we did not include a specific arch file G_UNWIND_H will not be defined. Perhaps it is better to error out in that case? To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/external/gpl3/gcc/lib/libgcc/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/external/gpl3/gcc/lib/libgcc/Makefile.inc diff -u src/external/gpl3/gcc/lib/libgcc/Makefile.inc:1.15 src/external/gpl3/gcc/lib/libgcc/Makefile.inc:1.16 --- src/external/gpl3/gcc/lib/libgcc/Makefile.inc:1.15 Tue Aug 28 23:12:08 2012 +++ src/external/gpl3/gcc/lib/libgcc/Makefile.inc Fri Dec 7 10:38:04 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.15 2012/08/29 03:12:08 msaitoh Exp $ +# $NetBSD: Makefile.inc,v 1.16 2012/12/07 15:38:04 christos Exp $ .if ${MKGCC} != "no" .if exists(${.CURDIR}/../arch/${MACHINE_ARCH}.mk) @@ -143,7 +143,7 @@ dp-bit.c: ${.CURDIR}/Makefile .include "../Makefile.tconfigh" DPSRCS+= tconfig.h -.if ${MKGCC} != "no" +.if ${MKGCC} != "no" && defined(G_UNWIND_H) && !empty(G_UNWIND_H) # XXX figure out why Makefile.hacks doesn't work BUILDSYMLINKS+= ${G_UNWIND_H} unwind.h DPSRCS+= unwind.h
CVS commit: src/common/lib/libc/quad
Module Name:src Committed By: christos Date: Fri Dec 7 15:41:02 UTC 2012 Modified Files: src/common/lib/libc/quad: lshldi3.c Log Message: use explicit cast to pacify lint. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/common/lib/libc/quad/lshldi3.c 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/quad/lshldi3.c diff -u src/common/lib/libc/quad/lshldi3.c:1.3 src/common/lib/libc/quad/lshldi3.c:1.4 --- src/common/lib/libc/quad/lshldi3.c:1.3 Sun Aug 5 22:31:54 2012 +++ src/common/lib/libc/quad/lshldi3.c Fri Dec 7 10:41:02 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: lshldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $ */ +/* $NetBSD: lshldi3.c,v 1.4 2012/12/07 15:41:02 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -38,7 +38,7 @@ #if 0 static char sccsid[] = "@(#)lshldi3.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: lshldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $"); +__RCSID("$NetBSD: lshldi3.c,v 1.4 2012/12/07 15:41:02 christos Exp $"); #endif #endif /* LIBC_SCCS and not lint */ @@ -59,7 +59,7 @@ __lshldi3(quad_t a, qshift_t shift) return(a); aa.q = a; if (shift >= INT_BITS) { - aa.ul[H] = aa.ul[L] << (shift - INT_BITS); + aa.ul[H] = aa.ul[L] << (unsigned int)(shift - INT_BITS); aa.ul[L] = 0; } else { aa.ul[H] = (aa.ul[H] << shift) |
CVS commit: src/distrib/sets/lists/comp
Module Name:src Committed By: njoly Date: Fri Dec 7 18:36:25 UTC 2012 Modified Files: src/distrib/sets/lists/comp: ad.mips64eb ad.mips64el md.amd64 md.sparc64 shl.mi Log Message: Adjust libraries debug entries following recent bind update. To generate a diff of this commit: cvs rdiff -u -r1.93 -r1.94 src/distrib/sets/lists/comp/ad.mips64eb cvs rdiff -u -r1.95 -r1.96 src/distrib/sets/lists/comp/ad.mips64el cvs rdiff -u -r1.183 -r1.184 src/distrib/sets/lists/comp/md.amd64 cvs rdiff -u -r1.160 -r1.161 src/distrib/sets/lists/comp/md.sparc64 cvs rdiff -u -r1.239 -r1.240 src/distrib/sets/lists/comp/shl.mi Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/sets/lists/comp/ad.mips64eb diff -u src/distrib/sets/lists/comp/ad.mips64eb:1.93 src/distrib/sets/lists/comp/ad.mips64eb:1.94 --- src/distrib/sets/lists/comp/ad.mips64eb:1.93 Mon Nov 26 08:05:47 2012 +++ src/distrib/sets/lists/comp/ad.mips64eb Fri Dec 7 18:36:24 2012 @@ -1,4 +1,4 @@ -# $NetBSD: ad.mips64eb,v 1.93 2012/11/26 08:05:47 alnsn Exp $ +# $NetBSD: ad.mips64eb,v 1.94 2012/12/07 18:36:24 njoly Exp $ ./usr/bin/elf2aoutcomp-obsolete obsolete ./usr/bin/elf2ecoffcomp-sysutil-bin ./usr/include/gcc-4.5/loongson.h comp-c-include gcccmds,gcc=45 @@ -1303,7 +1303,7 @@ ./usr/libdata/debug/usr/lib/64/libatf-c++.so.0.0.debug comp-compat-shlib compat,pic,atf,debug ./usr/libdata/debug/usr/lib/64/libavl.so.0.0.debug comp-zfs-debug zfs,dynamicroot,debug,compat ./usr/libdata/debug/usr/lib/64/libbfd.so.12.0.debug comp-sys-debug binutils,debug,compat -./usr/libdata/debug/usr/lib/64/libbind9.so.5.7.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/libbind9.so.5.8.debug comp-bind-debug debug,compat ./usr/libdata/debug/usr/lib/64/libbluetooth.so.4.2.debug comp-sys-debug debug,compat ./usr/libdata/debug/usr/lib/64/libbsdmalloc.so.0.0.debug comp-sys-debug debug,compat ./usr/libdata/debug/usr/lib/64/libbz2.so.1.1.debug comp-sys-debug debug,compat @@ -1317,7 +1317,7 @@ ./usr/libdata/debug/usr/lib/64/libdes.so.8.1.debug comp-crypto-debug crypto,debug,compat ./usr/libdata/debug/usr/lib/64/libdevmapper.so.1.0.debug comp-lvm-debug lvm,debug,compat ./usr/libdata/debug/usr/lib/64/libdm.so.0.0.debug comp-sys-debug debug,compat -./usr/libdata/debug/usr/lib/64/libdns.so.5.7.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/libdns.so.5.8.debug comp-bind-debug debug,compat ./usr/libdata/debug/usr/lib/64/libdns_sd.so.0.0.debug comp-mdns-debug mdns,debug,compat ./usr/libdata/debug/usr/lib/64/libdtrace.so.2.0.debug comp-sys-debug dtrace,debug,compat ./usr/libdata/debug/usr/lib/64/libdwarf.so.0.0.debug comp-sys-debug debug,compat @@ -1343,9 +1343,9 @@ ./usr/libdata/debug/usr/lib/64/libhx509.so.5.0.debug comp-krb5-debug kerberos,debug,compat ./usr/libdata/debug/usr/lib/64/libintl.so.1.0.debug comp-sys-debug debug,compat ./usr/libdata/debug/usr/lib/64/libipsec.so.3.0.debug comp-net-debug debug,compat -./usr/libdata/debug/usr/lib/64/libisc.so.5.7.debug comp-bind-debug debug,compat -./usr/libdata/debug/usr/lib/64/libisccc.so.5.7.debug comp-bind-debug debug,compat -./usr/libdata/debug/usr/lib/64/libisccfg.so.5.7.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/libisc.so.5.8.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/libisccc.so.5.8.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/libisccfg.so.5.8.debug comp-bind-debug debug,compat ./usr/libdata/debug/usr/lib/64/libiscsi.so.2.0.debug comp-iscsi-debug iscsi,debug,compat ./usr/libdata/debug/usr/lib/64/libisns.so.0.0.debug comp-isns-debug debug,compat ./usr/libdata/debug/usr/lib/64/libkadm5clnt.so.12.0.debug comp-compat-shlib compat,pic,kerberos,debug,obsolete @@ -1362,7 +1362,7 @@ ./usr/libdata/debug/usr/lib/64/libldap.so.4.2.debug comp-ldap-debug ldap,debug,compat ./usr/libdata/debug/usr/lib/64/libldap_r.so.4.2.debug comp-ldap-debug ldap,debug,compat ./usr/libdata/debug/usr/lib/64/liblua.so.1.0.debug comp-sys-debug debug,compat -./usr/libdata/debug/usr/lib/64/liblwres.so.5.7.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/64/liblwres.so.5.8.debug comp-bind-debug debug,compat ./usr/libdata/debug/usr/lib/64/liblzf.so.1.0.debug comp-sys-debug debug,compat ./usr/libdata/debug/usr/lib/64/liblzma.so.1.1.debug comp-sys-debug debug,compat ./usr/libdata/debug/usr/lib/64/libm.so.0.10.debug comp-sys-debug debug,compat @@ -1460,7 +1460,7 @@ ./usr/libdata/debug/usr/lib/o32/libatf-c++.so.0.0.debug comp-compat-shlib compat,pic,atf,debug ./usr/libdata/debug/usr/lib/o32/libavl.so.0.0.debug comp-zfs-debug zfs,dynamicroot,debug,compat ./usr/libdata/debug/usr/lib/o32/libbfd.so.12.0.debug comp-sys-debug binutils,debug,compat -./usr/libdata/debug/usr/lib/o32/libbind9.so.5.7.debug comp-bind-debug debug,compat +./usr/libdata/debug/usr/lib/o32/libbind9.so.5.8.debug comp-bind
CVS commit: src/sys/arch/arm/include/arm32
Module Name:src Committed By: matt Date: Fri Dec 7 18:46:50 UTC 2012 Modified Files: src/sys/arch/arm/include/arm32: param.h Log Message: FPCONTEXTSIZE is dead. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/include/arm32/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/sys/arch/arm/include/arm32/param.h diff -u src/sys/arch/arm/include/arm32/param.h:1.17 src/sys/arch/arm/include/arm32/param.h:1.18 --- src/sys/arch/arm/include/arm32/param.h:1.17 Sat Feb 4 17:56:16 2012 +++ src/sys/arch/arm/include/arm32/param.h Fri Dec 7 18:46:50 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: param.h,v 1.17 2012/02/04 17:56:16 para Exp $ */ +/* $NetBSD: param.h,v 1.18 2012/12/07 18:46:50 matt Exp $ */ /* * Copyright (c) 1994,1995 Mark Brinicombe. @@ -72,17 +72,13 @@ /* * The USPACE area contains : * 1. the pcb structure for the process - * 2. the fp context for FP emulation - * 3. the kernel (svc) stack + * 2. the kernel (svc) stack * * The layout of the area looks like this * - * | uarea | FP context | kernel stack | + * | uarea | kernel stack | * * The size of the uarea is known. - * The size of the FP context is variable depending of the FP emulator - * in use and whether there is hardware FP support. However we can put - * an upper limit on it. * The kernel stack should be at least 4K is size. * * The stack top addresses are used to set the stack pointers. The stack bottom @@ -90,9 +86,8 @@ * */ -#define FPCONTEXTSIZE (0x100) #define USPACE_SVC_STACK_TOP (USPACE) -#define USPACE_SVC_STACK_BOTTOM (sizeof(struct pcb) + FPCONTEXTSIZE + 10) +#define USPACE_SVC_STACK_BOTTOM (sizeof(struct pcb)) #define arm_btop(x) ((x) >> PGSHIFT) #define arm_ptob(x) ((x) << PGSHIFT)
CVS commit: src/distrib/sets/lists/comp
Module Name:src Committed By: njoly Date: Fri Dec 7 18:48:56 UTC 2012 Modified Files: src/distrib/sets/lists/comp: mi Log Message: +dnssec-verify.debug To generate a diff of this commit: cvs rdiff -u -r1.1795 -r1.1796 src/distrib/sets/lists/comp/mi Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/sets/lists/comp/mi diff -u src/distrib/sets/lists/comp/mi:1.1795 src/distrib/sets/lists/comp/mi:1.1796 --- src/distrib/sets/lists/comp/mi:1.1795 Fri Dec 7 01:54:27 2012 +++ src/distrib/sets/lists/comp/mi Fri Dec 7 18:48:54 2012 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1795 2012/12/07 01:54:27 christos Exp $ +# $NetBSD: mi,v 1.1796 2012/12/07 18:48:54 njoly Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -4127,6 +4127,7 @@ ./usr/libdata/debug/usr/sbin/dnssec-revoke.debug comp-bind-debug debug ./usr/libdata/debug/usr/sbin/dnssec-settime.debug comp-bind-debug debug ./usr/libdata/debug/usr/sbin/dnssec-signzone.debug comp-bind-debug debug +./usr/libdata/debug/usr/sbin/dnssec-verify.debug comp-bind-debug debug ./usr/libdata/debug/usr/sbin/dtmfdecode.debug comp-isdn-debug debug ./usr/libdata/debug/usr/sbin/dtrace.debug comp-util-debug dtrace,debug ./usr/libdata/debug/usr/sbin/dumpfs.debug comp-sysutil-debug debug
CVS commit: src/sys/arch/arm/include
Module Name:src Committed By: matt Date: Fri Dec 7 18:49:13 UTC 2012 Modified Files: src/sys/arch/arm/include: mcontext.h reg.h Log Message: Extend vfpreg to include all 32 64-bit FP registers. For __ARM_EABI__, define __vfp_fstmx to have space for all 32 32-bit FP registers (It's a newly supported ABI so we can "break" binary compatibility. To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/sys/arch/arm/include/mcontext.h cvs rdiff -u -r1.3 -r1.4 src/sys/arch/arm/include/reg.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/mcontext.h diff -u src/sys/arch/arm/include/mcontext.h:1.12 src/sys/arch/arm/include/mcontext.h:1.13 --- src/sys/arch/arm/include/mcontext.h:1.12 Wed Dec 5 19:05:46 2012 +++ src/sys/arch/arm/include/mcontext.h Fri Dec 7 18:49:13 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: mcontext.h,v 1.12 2012/12/05 19:05:46 matt Exp $ */ +/* $NetBSD: mcontext.h,v 1.13 2012/12/07 18:49:13 matt Exp $ */ /*- * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc. @@ -76,9 +76,15 @@ typedef struct { } __fpregset_t; typedef struct { +#ifdef __ARM_EABI__ + unsigned int __vfp_fpscr; + uint64_t __vfp_fstmx[32]; + unsigned int __vfp_fpsid; +#else unsigned int __vfp_fpscr; unsigned int __vfp_fstmx[33]; unsigned int __vfp_fpsid; +#endif } __vfpregset_t; typedef struct { Index: src/sys/arch/arm/include/reg.h diff -u src/sys/arch/arm/include/reg.h:1.3 src/sys/arch/arm/include/reg.h:1.4 --- src/sys/arch/arm/include/reg.h:1.3 Wed Dec 5 19:05:46 2012 +++ src/sys/arch/arm/include/reg.h Fri Dec 7 18:49:13 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: reg.h,v 1.3 2012/12/05 19:05:46 matt Exp $ */ +/* $NetBSD: reg.h,v 1.4 2012/12/07 18:49:13 matt Exp $ */ /* * Copyright (C) 1994, 1995 Frank Lancaster @@ -51,7 +51,7 @@ struct vfpreg { uint32_t vfp_fpscr; uint32_t vfp_fpinst; uint32_t vfp_fpinst2; - uint32_t vfp_regs[33]; /* In case we need fstmx format. */ + uint64_t vfp_regs[33]; /* In case we need fstmx format. */ }; struct fpreg {
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: matt Date: Fri Dec 7 22:18:45 UTC 2012 Modified Files: src/sys/arch/arm/broadcom: files.bcm53xx Log Message: Add BCMETH_COUNTERS To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/broadcom/files.bcm53xx 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/broadcom/files.bcm53xx diff -u src/sys/arch/arm/broadcom/files.bcm53xx:1.2 src/sys/arch/arm/broadcom/files.bcm53xx:1.3 --- src/sys/arch/arm/broadcom/files.bcm53xx:1.2 Tue Oct 23 23:13:20 2012 +++ src/sys/arch/arm/broadcom/files.bcm53xx Fri Dec 7 22:18:45 2012 @@ -1,4 +1,4 @@ -# $NetBSD: files.bcm53xx,v 1.2 2012/10/23 23:13:20 matt Exp $ +# $NetBSD: files.bcm53xx,v 1.3 2012/12/07 22:18:45 matt Exp $ # # Configuration info for Broadcom BCM5301X ARM Peripherals # @@ -20,6 +20,7 @@ defparam opt_broadcom.hCONSPEED defparam opt_broadcom.hCONMODE defparam opt_broadcom.hMEMSIZE defflag opt_broadcom.hBCM53XX_CONSOLE_EARLY +defflag opt_broadcom.hBCMETH_COUNTERS # ChipCommonA attach point device bcmcca { [channel=-1] } : bus_space_generic, gpiobus, sysmon_wdog
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: matt Date: Fri Dec 7 22:21:03 UTC 2012 Modified Files: src/sys/arch/arm/broadcom: bcm53xx_eth.c Log Message: Make evcnt'ers optional. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/broadcom/bcm53xx_eth.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/broadcom/bcm53xx_eth.c diff -u src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.17 src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.18 --- src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.17 Thu Nov 8 21:32:48 2012 +++ src/sys/arch/arm/broadcom/bcm53xx_eth.c Fri Dec 7 22:21:03 2012 @@ -31,10 +31,11 @@ #define GMAC_PRIVATE #include "locators.h" +#include "opt_broadcom.h" #include -__KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth.c,v 1.17 2012/11/08 21:32:48 matt Exp $"); +__KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth.c,v 1.18 2012/12/07 22:21:03 matt Exp $"); #include #include @@ -63,6 +64,13 @@ __KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth. //#define BCMETH_MPSAFE +#ifdef BCMETH_COUNTERS +#define BCMETH_EVCNT_ADD(a,b) ((void)((a).ev_count += (b))) +#else +#define BCMETH_EVCNT_ADD(a,b) do { } while (/*CONSTCOND*/0) +#endif +#define BCMETH_EVCNT_INCR(a) BCMETH_EVCNT_ADD((a), 1) + #define BCMETH_RCVOFFSET 10 #define BCMETH_MAXTXMBUFS 128 #define BCMETH_NTXSEGS 30 @@ -148,12 +156,14 @@ struct bcmeth_softc { #define SOFT_RXINTR 0x01 #define SOFT_TXINTR 0x02 +#ifdef BCMETH_COUNTERS struct evcnt sc_ev_intr; struct evcnt sc_ev_soft_intr; struct evcnt sc_ev_work; struct evcnt sc_ev_tx_stall; struct evcnt sc_ev_rx_badmagic_lo; struct evcnt sc_ev_rx_badmagic_hi; +#endif struct ifqueue sc_rx_bufcache; struct bcmeth_mapcache *sc_rx_mapcache; @@ -386,6 +396,7 @@ bcmeth_ccb_attach(device_t parent, devic if_attach(ifp); ether_ifattach(ifp, sc->sc_enaddr); +#ifdef BCMETH_COUNTERS evcnt_attach_dynamic(&sc->sc_ev_intr, EVCNT_TYPE_INTR, NULL, xname, "intr"); evcnt_attach_dynamic(&sc->sc_ev_soft_intr, EVCNT_TYPE_INTR, @@ -398,6 +409,7 @@ bcmeth_ccb_attach(device_t parent, devic NULL, xname, "rx badmagic lo"); evcnt_attach_dynamic(&sc->sc_ev_rx_badmagic_hi, EVCNT_TYPE_MISC, NULL, xname, "rx badmagic hi"); +#endif } static int @@ -1056,9 +1068,9 @@ bcmeth_rxq_consume( if (rxsts == BCMETH_RCVMAGIC) { ifp->if_ierrors++; if ((m->m_ext.ext_paddr >> 28) == 8) { -sc->sc_ev_rx_badmagic_lo.ev_count++; +BCMETH_EVCNT_INCR(sc->sc_ev_rx_badmagic_lo); } else { -sc->sc_ev_rx_badmagic_hi.ev_count++; +BCMETH_EVCNT_INCR( sc->sc_ev_rx_badmagic_hi); } IF_ENQUEUE(&sc->sc_rx_bufcache, m); } else @@ -1709,7 +1721,7 @@ bcmeth_intr(void *arg) mutex_enter(sc->sc_hwlock); uint32_t intmask = sc->sc_intmask; - sc->sc_ev_intr.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_intr); for (;;) { uint32_t intstatus = bcmeth_read_4(sc, GMAC_INTSTATUS); @@ -1821,7 +1833,7 @@ bcmeth_soft_txintr(struct bcmeth_softc * */ if (!bcmeth_txq_consume(sc, &sc->sc_txq) || !bcmeth_txq_enqueue(sc, &sc->sc_txq)) { - sc->sc_ev_tx_stall.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_tx_stall); sc->sc_if.if_flags |= IFF_OACTIVE; } else { sc->sc_if.if_flags &= ~IFF_OACTIVE; @@ -1847,7 +1859,7 @@ bcmeth_soft_intr(void *arg) u_int soft_flags = atomic_swap_uint(&sc->sc_soft_flags, 0); - sc->sc_ev_soft_intr.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_soft_intr); if ((soft_flags & SOFT_TXINTR) || bcmeth_txq_active_p(sc, &sc->sc_txq)) { @@ -1857,7 +1869,7 @@ bcmeth_soft_intr(void *arg) */ if (!bcmeth_txq_consume(sc, &sc->sc_txq) || !bcmeth_txq_enqueue(sc, &sc->sc_txq)) { - sc->sc_ev_tx_stall.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_tx_stall); ifp->if_flags |= IFF_OACTIVE; } else { ifp->if_flags &= ~IFF_OACTIVE; @@ -1893,7 +1905,7 @@ bcmeth_worker(struct work *wk, void *arg mutex_enter(sc->sc_lock); - sc->sc_ev_work.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_work); uint32_t work_flags = atomic_swap_32(&sc->sc_work_flags, 0); if (work_flags & WORK_REINIT) {
CVS commit: [matt-nb6-plus] src/sys/arch/arm/broadcom
Module Name:src Committed By: matt Date: Fri Dec 7 22:47:13 UTC 2012 Modified Files: src/sys/arch/arm/broadcom [matt-nb6-plus]: bcm53xx_eth.c files.bcm53xx Log Message: Sync with HEAD. To generate a diff of this commit: cvs rdiff -u -r1.17.2.2 -r1.17.2.3 src/sys/arch/arm/broadcom/bcm53xx_eth.c cvs rdiff -u -r1.2.4.2 -r1.2.4.3 src/sys/arch/arm/broadcom/files.bcm53xx 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/broadcom/bcm53xx_eth.c diff -u src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.17.2.2 src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.17.2.3 --- src/sys/arch/arm/broadcom/bcm53xx_eth.c:1.17.2.2 Wed Nov 28 22:40:22 2012 +++ src/sys/arch/arm/broadcom/bcm53xx_eth.c Fri Dec 7 22:47:13 2012 @@ -31,10 +31,11 @@ #define GMAC_PRIVATE #include "locators.h" +#include "opt_broadcom.h" #include -__KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth.c,v 1.17.2.2 2012/11/28 22:40:22 matt Exp $"); +__KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth.c,v 1.17.2.3 2012/12/07 22:47:13 matt Exp $"); #include #include @@ -63,6 +64,13 @@ __KERNEL_RCSID(1, "$NetBSD: bcm53xx_eth. //#define BCMETH_MPSAFE +#ifdef BCMETH_COUNTERS +#define BCMETH_EVCNT_ADD(a,b) ((void)((a).ev_count += (b))) +#else +#define BCMETH_EVCNT_ADD(a,b) do { } while (/*CONSTCOND*/0) +#endif +#define BCMETH_EVCNT_INCR(a) BCMETH_EVCNT_ADD((a), 1) + #define BCMETH_RCVOFFSET 10 #define BCMETH_MAXTXMBUFS 128 #define BCMETH_NTXSEGS 30 @@ -148,12 +156,14 @@ struct bcmeth_softc { #define SOFT_RXINTR 0x01 #define SOFT_TXINTR 0x02 +#ifdef BCMETH_COUNTERS struct evcnt sc_ev_intr; struct evcnt sc_ev_soft_intr; struct evcnt sc_ev_work; struct evcnt sc_ev_tx_stall; struct evcnt sc_ev_rx_badmagic_lo; struct evcnt sc_ev_rx_badmagic_hi; +#endif struct ifqueue sc_rx_bufcache; struct bcmeth_mapcache *sc_rx_mapcache; @@ -386,6 +396,7 @@ bcmeth_ccb_attach(device_t parent, devic if_attach(ifp); ether_ifattach(ifp, sc->sc_enaddr); +#ifdef BCMETH_COUNTERS evcnt_attach_dynamic(&sc->sc_ev_intr, EVCNT_TYPE_INTR, NULL, xname, "intr"); evcnt_attach_dynamic(&sc->sc_ev_soft_intr, EVCNT_TYPE_INTR, @@ -398,6 +409,7 @@ bcmeth_ccb_attach(device_t parent, devic NULL, xname, "rx badmagic lo"); evcnt_attach_dynamic(&sc->sc_ev_rx_badmagic_hi, EVCNT_TYPE_MISC, NULL, xname, "rx badmagic hi"); +#endif } static int @@ -1056,9 +1068,9 @@ bcmeth_rxq_consume( if (rxsts == BCMETH_RCVMAGIC) { ifp->if_ierrors++; if ((m->m_ext.ext_paddr >> 28) == 8) { -sc->sc_ev_rx_badmagic_lo.ev_count++; +BCMETH_EVCNT_INCR(sc->sc_ev_rx_badmagic_lo); } else { -sc->sc_ev_rx_badmagic_hi.ev_count++; +BCMETH_EVCNT_INCR( sc->sc_ev_rx_badmagic_hi); } IF_ENQUEUE(&sc->sc_rx_bufcache, m); } else @@ -1709,7 +1721,7 @@ bcmeth_intr(void *arg) mutex_enter(sc->sc_hwlock); uint32_t intmask = sc->sc_intmask; - sc->sc_ev_intr.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_intr); for (;;) { uint32_t intstatus = bcmeth_read_4(sc, GMAC_INTSTATUS); @@ -1821,7 +1833,7 @@ bcmeth_soft_txintr(struct bcmeth_softc * */ if (!bcmeth_txq_consume(sc, &sc->sc_txq) || !bcmeth_txq_enqueue(sc, &sc->sc_txq)) { - sc->sc_ev_tx_stall.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_tx_stall); sc->sc_if.if_flags |= IFF_OACTIVE; } else { sc->sc_if.if_flags &= ~IFF_OACTIVE; @@ -1847,7 +1859,7 @@ bcmeth_soft_intr(void *arg) u_int soft_flags = atomic_swap_uint(&sc->sc_soft_flags, 0); - sc->sc_ev_soft_intr.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_soft_intr); if ((soft_flags & SOFT_TXINTR) || bcmeth_txq_active_p(sc, &sc->sc_txq)) { @@ -1857,7 +1869,7 @@ bcmeth_soft_intr(void *arg) */ if (!bcmeth_txq_consume(sc, &sc->sc_txq) || !bcmeth_txq_enqueue(sc, &sc->sc_txq)) { - sc->sc_ev_tx_stall.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_tx_stall); ifp->if_flags |= IFF_OACTIVE; } else { ifp->if_flags &= ~IFF_OACTIVE; @@ -1893,7 +1905,7 @@ bcmeth_worker(struct work *wk, void *arg mutex_enter(sc->sc_lock); - sc->sc_ev_work.ev_count++; + BCMETH_EVCNT_INCR(sc->sc_ev_work); uint32_t work_flags = atomic_swap_32(&sc->sc_work_flags, 0); if (work_flags & WORK_REINIT) { Index: src/sys/arch/arm/broadcom/files.bcm53xx diff -u src/sys/arch/arm/broadcom/files.bcm53xx:1.2.4.2 src/sys/arch/arm/broadcom/files.bcm53xx:1.2.4.3 --- src/sys/arch/arm/broadcom/files.bcm53xx:1.2.4.2 Wed Nov 28 22:40:24 2012 +++ src/sys/arch/arm/broadcom/files.bcm53xx Fri Dec 7 22:47:13 2012 @@ -1,4 +1,4 @@ -# $NetBSD: files.bcm53xx,v 1.2.4.2 2012/11/28 22:40:24 matt Exp $ +# $NetBSD: files.bcm53xx,v 1.2.4.3 2012/12/07 22:47:13 matt Exp $ # # Configuration info for Broadcom BCM5301X ARM Peripherals # @@ -20,6 +20,7 @@ defparam opt_broadcom.hCONSPEED defparam opt_broadcom.hCONMODE defparam opt_broadcom.hMEMSIZE defflag opt_broadcom.hBCM53XX_CONSOLE_EARLY +defflag opt_broadcom.hBCMET
CVS commit: src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++
Module Name:src Committed By: christos Date: Sat Dec 8 01:38:27 UTC 2012 Modified Files: src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++: eh_arm.cc unwind-cxx.h Log Message: fix inconsistencies in EABI decls. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc \ src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h 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/dist/libstdc++-v3/libsupc++/eh_arm.cc diff -u src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc:1.1.1.1 src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc:1.1.1.1 Mon Jun 20 21:24:47 2011 +++ src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/eh_arm.cc Fri Dec 7 20:38:26 2012 @@ -92,7 +92,12 @@ __cxa_type_match(_Unwind_Exception* ue_h } // ABI defined routine called at the start of a cleanup handler. -extern "C" bool +extern "C" +#ifdef __ARM_EABI_UNWINDER__ +void +#else +bool +#endif __cxa_begin_cleanup(_Unwind_Exception* ue_header) { __cxa_eh_globals *globals = __cxa_get_globals(); @@ -121,7 +126,9 @@ __cxa_begin_cleanup(_Unwind_Exception* u globals->propagatingExceptions = header; } +#ifndef __ARM_EABI_UNWINDER__ return true; +#endif } // Do the work for __cxa_end_cleanup. Returns the currently propagating Index: src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h diff -u src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h:1.1.1.1 src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h:1.2 --- src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h:1.1.1.1 Mon Jun 20 21:24:47 2011 +++ src/external/gpl3/gcc/dist/libstdc++-v3/libsupc++/unwind-cxx.h Fri Dec 7 20:38:26 2012 @@ -196,8 +196,8 @@ typedef enum { ctm_succeeded = 1, ctm_succeeded_with_ptr_to_base = 2 } __cxa_type_match_result; -extern "C" bool __cxa_type_match(_Unwind_Exception*, const std::type_info*, - bool, void**); +extern "C" __cxa_type_match_result __cxa_type_match(_Unwind_Exception*, +const std::type_info*, bool, void**); extern "C" void __cxa_begin_cleanup (_Unwind_Exception*); extern "C" void __cxa_end_cleanup (void); #endif
CVS commit: src/external/gpl3/gcc/lib/libgcc/libgcov
Module Name:src Committed By: christos Date: Sat Dec 8 02:35:06 UTC 2012 Modified Files: src/external/gpl3/gcc/lib/libgcc/libgcov: Makefile Log Message: XXX: Use earm for earmeb To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/gcc/lib/libgcc/libgcov/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/lib/libgcc/libgcov/Makefile diff -u src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile:1.2 src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile:1.3 --- src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile:1.2 Mon Aug 15 05:19:21 2011 +++ src/external/gpl3/gcc/lib/libgcc/libgcov/Makefile Fri Dec 7 21:35:06 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.2 2011/08/15 09:19:21 mrg Exp $ +# $NetBSD: Makefile,v 1.3 2012/12/08 02:35:06 christos Exp $ REQUIRETOOLS= yes NOPIC= # defined @@ -11,7 +11,12 @@ LIB= gcov .if ${MKGCC} != "no" +# XXX: Fix me +.if ${MACHINE_ARCH} == "earmeb" +.include "${.CURDIR}/arch/earm/defs.mk" +.else .include "${.CURDIR}/arch/${MACHINE_ARCH}/defs.mk" +.endif LIBGCOVSRCS= ${G_LIBGCOV:=.c}
CVS commit: src/sys/arch/arm/include
Module Name:src Committed By: christos Date: Sat Dec 8 02:41:54 UTC 2012 Modified Files: src/sys/arch/arm/include: mcontext.h Log Message: need stdint.h for uint64_t and it is messy to do it open-coded. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/include/mcontext.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/mcontext.h diff -u src/sys/arch/arm/include/mcontext.h:1.13 src/sys/arch/arm/include/mcontext.h:1.14 --- src/sys/arch/arm/include/mcontext.h:1.13 Fri Dec 7 13:49:13 2012 +++ src/sys/arch/arm/include/mcontext.h Fri Dec 7 21:41:54 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: mcontext.h,v 1.13 2012/12/07 18:49:13 matt Exp $ */ +/* $NetBSD: mcontext.h,v 1.14 2012/12/08 02:41:54 christos Exp $ */ /*- * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc. @@ -32,6 +32,7 @@ #ifndef _ARM_MCONTEXT_H_ #define _ARM_MCONTEXT_H_ +#include /* * General register state */
CVS commit: src/sys/arch/arm/arm
Module Name:src Committed By: matt Date: Sat Dec 8 06:46:50 UTC 2012 Modified Files: src/sys/arch/arm/arm: process_machdep.c Log Message: Make sure the enable bit is not set when restoring the VFP context since that has special meaning to the VFP PCU code. To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/sys/arch/arm/arm/process_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/arm/process_machdep.c diff -u src/sys/arch/arm/arm/process_machdep.c:1.24 src/sys/arch/arm/arm/process_machdep.c:1.25 --- src/sys/arch/arm/arm/process_machdep.c:1.24 Wed Dec 5 19:05:46 2012 +++ src/sys/arch/arm/arm/process_machdep.c Sat Dec 8 06:46:49 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: process_machdep.c,v 1.24 2012/12/05 19:05:46 matt Exp $ */ +/* $NetBSD: process_machdep.c,v 1.25 2012/12/08 06:46:49 matt Exp $ */ /* * Copyright (c) 1993 The Regents of the University of California. @@ -133,7 +133,7 @@ #include -__KERNEL_RCSID(0, "$NetBSD: process_machdep.c,v 1.24 2012/12/05 19:05:46 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: process_machdep.c,v 1.25 2012/12/08 06:46:49 matt Exp $"); #include #include @@ -144,6 +144,7 @@ __KERNEL_RCSID(0, "$NetBSD: process_mach #include #include +#include int process_read_regs(struct lwp *l, struct reg *regs) @@ -175,13 +176,15 @@ process_read_fpregs(struct lwp *l, struc { #ifdef FPU_VFP if (curcpu()->ci_vfp_id == 0) { - return EINVAL; + memset(regs, 0, sizeof(regs)); + return 0; } const struct pcb * const pcb = lwp_getpcb(l); vfp_savecontext(); regs->fpr_vfp = pcb->pcb_vfp; + regs->fpr_vfp.vfp_fpexc &= ~VFP_FPEXC_EN; #endif - return(0); + return 0; } int @@ -227,6 +230,7 @@ process_write_fpregs(struct lwp *l, cons vfp_discardcontext(); l->l_md.md_flags |= MDLWP_VFPUSED; pcb->pcb_vfp = regs->fpr_vfp; + pcb->pcb_vfp.vfp_fpexc &= ~VFP_FPEXC_EN; #endif return(0); }
CVS commit: src/sys/arch/arm/arm
Module Name:src Committed By: matt Date: Sat Dec 8 06:47:31 UTC 2012 Modified Files: src/sys/arch/arm/arm: sig_machdep.c Log Message: Make sure that if _UC_FPU is set, that _UC_ARM_VFP is also set. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/arch/arm/arm/sig_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/arm/sig_machdep.c diff -u src/sys/arch/arm/arm/sig_machdep.c:1.44 src/sys/arch/arm/arm/sig_machdep.c:1.45 --- src/sys/arch/arm/arm/sig_machdep.c:1.44 Wed Dec 5 19:05:46 2012 +++ src/sys/arch/arm/arm/sig_machdep.c Sat Dec 8 06:47:31 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: sig_machdep.c,v 1.44 2012/12/05 19:05:46 matt Exp $ */ +/* $NetBSD: sig_machdep.c,v 1.45 2012/12/08 06:47:31 matt Exp $ */ /* * Copyright (c) 1994-1998 Mark Brinicombe. @@ -44,7 +44,7 @@ #include -__KERNEL_RCSID(0, "$NetBSD: sig_machdep.c,v 1.44 2012/12/05 19:05:46 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sig_machdep.c,v 1.45 2012/12/08 06:47:31 matt Exp $"); #include /* XXX only needed by syscallargs.h */ #include @@ -219,7 +219,8 @@ cpu_setmcontext(struct lwp *l, const mco int error; #ifdef FPU_VFP - if ((flags & _UC_FPU) && curcpu()->ci_vfp_id == 0) + if ((flags & _UC_FPU) + && (curcpu()->ci_vfp_id || (flags & _UC_ARM_VFP) == 0)) return EINVAL; #endif
CVS commit: src/sys/arch/arm/vfp
Module Name:src Committed By: matt Date: Sat Dec 8 06:49:00 UTC 2012 Modified Files: src/sys/arch/arm/vfp: vfp_init.c Log Message: On Cortex, make sure to load/save the upper 16 64-FP registers. When creating a mcontext_t, make sure _UC_ARM_VFP is set. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/sys/arch/arm/vfp/vfp_init.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/vfp/vfp_init.c diff -u src/sys/arch/arm/vfp/vfp_init.c:1.9 src/sys/arch/arm/vfp/vfp_init.c:1.10 --- src/sys/arch/arm/vfp/vfp_init.c:1.9 Wed Dec 5 19:30:10 2012 +++ src/sys/arch/arm/vfp/vfp_init.c Sat Dec 8 06:49:00 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: vfp_init.c,v 1.9 2012/12/05 19:30:10 matt Exp $ */ +/* $NetBSD: vfp_init.c,v 1.10 2012/12/08 06:49:00 matt Exp $ */ /* * Copyright (c) 2008 ARM Ltd @@ -90,10 +90,6 @@ read_fpinst2(void) return rv; } -/* FSTMD , {d0-d15} */ -#define save_vfpregs(X) __asm __volatile("stc p11, c0, [%0], {32}" : \ - : "r" (X) : "memory") - /* FMXR , fpscr */ #define write_fpscr(X) __asm __volatile("mcr p10, 7, %0, c1, c0, 0" : \ : "r" (X)) @@ -107,8 +103,35 @@ read_fpinst2(void) #define write_fpinst2(X) __asm __volatile("mcr p10, 7, %0, c10, c0, 0" : \ : "r" (X)) /* FLDMD , {d0-d15} */ -#define load_vfpregs(X) __asm __volatile("ldc p11, c0, [%0], {32}" : \ - : "r" (X) : "memory"); +static void +load_vfpregs_lo(uint64_t *p) +{ + /* vldmia rN, {d0-d15} */ + __asm __volatile("ldc\tp11, c0, [%0], {32}" :: "r" (p) : "memory"); +} + +/* FSTMD , {d0-d15} */ +static void +save_vfpregs_lo(uint64_t *p) +{ + __asm __volatile("stc\tp11, c0, [%0], {32}" :: "r" (p) : "memory"); +} + +#ifdef CPU_CORTEX +/* FLDMD , {d16-d31} */ +static void +load_vfpregs_hi(uint64_t *p) +{ + __asm __volatile("ldcl\tp11, c0, [%0], {32}" :: "r" (&p[16]) : "memory"); +} + +/* FLDMD , {d16-d31} */ +static void +save_vfpregs_hi(uint64_t *p) +{ + __asm __volatile("stcl\tp11, c0, [%0], {32}" :: "r" (&p[16]) : "memory"); +} +#endif #ifdef FPU_VFP @@ -231,12 +254,15 @@ vfp_attach(void) uint32_t cpacr = armreg_cpacr_read(); cpacr |= __SHIFTIN(CPACR_ALL, cpacr_vfp); cpacr |= __SHIFTIN(CPACR_ALL, cpacr_vfp2); +#if 0 if (CPU_ID_CORTEX_P(curcpu()->ci_arm_cpuid)) { /* - * Disable access to the upper 16 FP registers. + * Disable access to the upper 16 FP registers and NEON. */ cpacr |= CPACR_V7_D32DIS; + cpacr |= CPACR_V7_ASEDIS; } +#endif armreg_cpacr_write(cpacr); /* @@ -363,7 +389,21 @@ vfp_state_load(lwp_t *l, bool used) KDASSERT((fpexc & VFP_FPEXC_EX) == 0); write_fpexc(fpexc | VFP_FPEXC_EN); - load_vfpregs(fregs->vfp_regs); + load_vfpregs_lo(fregs->vfp_regs); +#ifdef CPU_CORTEX +#ifdef CPU_ARM11 + switch (curcpu()->ci_vfp_id) { + case FPU_VFP_CORTEXA5: + case FPU_VFP_CORTEXA7: + case FPU_VFP_CORTEXA8: + case FPU_VFP_CORTEXA9: +#endif + load_vfpregs_hi(fregs->vfp_regs); +#ifdef CPU_ARM11 + break; + } +#endif +#endif write_fpscr(fregs->vfp_fpscr); if (fregs->vfp_fpexc & VFP_FPEXC_EX) { @@ -431,7 +471,21 @@ vfp_state_save(lwp_t *l) } } fregs->vfp_fpscr = read_fpscr(); - save_vfpregs(fregs->vfp_regs); + save_vfpregs_lo(fregs->vfp_regs); +#ifdef CPU_CORTEX +#ifdef CPU_ARM11 + switch (curcpu()->ci_vfp_id) { + case FPU_VFP_CORTEXA5: + case FPU_VFP_CORTEXA7: + case FPU_VFP_CORTEXA8: + case FPU_VFP_CORTEXA9: +#endif + save_vfpregs_hi(fregs->vfp_regs); +#ifdef CPU_ARM11 + break; + } +#endif +#endif /* Disable the VFP. */ write_fpexc(fpexc); @@ -480,7 +534,7 @@ vfp_getcontext(struct lwp *l, mcontext_t mcp->__fpu.__vfpregs.__vfp_fpscr = pcb->pcb_vfp.vfp_fpscr; memcpy(mcp->__fpu.__vfpregs.__vfp_fstmx, pcb->pcb_vfp.vfp_regs, sizeof(mcp->__fpu.__vfpregs.__vfp_fstmx)); - *flagsp |= _UC_FPU; + *flagsp |= _UC_FPU|_UC_ARM_VFP; } }
CVS commit: src/sys/arch/arm/include
Module Name:src Committed By: matt Date: Sat Dec 8 06:58:36 UTC 2012 Modified Files: src/sys/arch/arm/include: mcontext.h Log Message: Define the correct __UCONTEXT_SIZE for EABI. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/sys/arch/arm/include/mcontext.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/mcontext.h diff -u src/sys/arch/arm/include/mcontext.h:1.14 src/sys/arch/arm/include/mcontext.h:1.15 --- src/sys/arch/arm/include/mcontext.h:1.14 Sat Dec 8 02:41:54 2012 +++ src/sys/arch/arm/include/mcontext.h Sat Dec 8 06:58:36 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: mcontext.h,v 1.14 2012/12/08 02:41:54 christos Exp $ */ +/* $NetBSD: mcontext.h,v 1.15 2012/12/08 06:58:36 matt Exp $ */ /*- * Copyright (c) 2001, 2002 The NetBSD Foundation, Inc. @@ -114,7 +114,11 @@ typedef struct { #define _UC_MACHINE_SET_PC(uc, pc) _UC_MACHINE_PC(uc) = (pc) +#ifdef __ARM_EABI__ +#define __UCONTEXT_SIZE (256 + 144) +#else #define __UCONTEXT_SIZE 256 +#endif static __inline void * __lwp_getprivate_fast(void)
CVS commit: src/sys/arch/evbarm/conf
Module Name:src Committed By: matt Date: Sat Dec 8 07:05:23 UTC 2012 Modified Files: src/sys/arch/evbarm/conf: OVERO mk.bcm53xx mk.beagle std.netwalker Log Message: For cortex kernels, also specify -mfpu=neon To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/arch/evbarm/conf/OVERO cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/conf/mk.bcm53xx cvs rdiff -u -r1.8 -r1.9 src/sys/arch/evbarm/conf/mk.beagle cvs rdiff -u -r1.3 -r1.4 src/sys/arch/evbarm/conf/std.netwalker 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/OVERO diff -u src/sys/arch/evbarm/conf/OVERO:1.19 src/sys/arch/evbarm/conf/OVERO:1.20 --- src/sys/arch/evbarm/conf/OVERO:1.19 Mon Oct 29 13:36:59 2012 +++ src/sys/arch/evbarm/conf/OVERO Sat Dec 8 07:05:23 2012 @@ -1,5 +1,5 @@ # -# $NetBSD: OVERO,v 1.19 2012/10/29 13:36:59 kiyohara Exp $ +# $NetBSD: OVERO,v 1.20 2012/12/08 07:05:23 matt Exp $ # # OVERO -- Gumstix. Inc. Overo platforms kernel # @@ -17,7 +17,7 @@ maxusers 32 options CPU_CORTEXA8 options OMAP_3530 options PMAPCOUNTERS -makeoptions CPUFLAGS="-mcpu=cortex-a8" +makeoptions CPUFLAGS="-mcpu=cortex-a8 -mfpu=neon" # Architecture options Index: src/sys/arch/evbarm/conf/mk.bcm53xx diff -u src/sys/arch/evbarm/conf/mk.bcm53xx:1.1 src/sys/arch/evbarm/conf/mk.bcm53xx:1.2 --- src/sys/arch/evbarm/conf/mk.bcm53xx:1.1 Sat Sep 1 00:15:11 2012 +++ src/sys/arch/evbarm/conf/mk.bcm53xx Sat Dec 8 07:05:23 2012 @@ -1,5 +1,6 @@ -# $NetBSD: mk.bcm53xx,v 1.1 2012/09/01 00:15:11 matt Exp $ -CPPFLAGS+= -mcpu=cortex-a9 +# $NetBSD: mk.bcm53xx,v 1.2 2012/12/08 07:05:23 matt Exp $ +CPPFLAGS+= -mcpu=cortex-a9 -mfpu=neon +#CPPFLAGS+= -mabi=aapcs-linux -Wa,-meabi=4 SYSTEM_FIRST_OBJ= bcm53xx_start.o SYSTEM_FIRST_SFILE= ${THISARM}/bcm53xx/bcm53xx_start.S Index: src/sys/arch/evbarm/conf/mk.beagle diff -u src/sys/arch/evbarm/conf/mk.beagle:1.8 src/sys/arch/evbarm/conf/mk.beagle:1.9 --- src/sys/arch/evbarm/conf/mk.beagle:1.8 Wed Aug 22 22:34:30 2012 +++ src/sys/arch/evbarm/conf/mk.beagle Sat Dec 8 07:05:23 2012 @@ -1,8 +1,8 @@ -# $NetBSD: mk.beagle,v 1.8 2012/08/22 22:34:30 matt Exp $ +# $NetBSD: mk.beagle,v 1.9 2012/12/08 07:05:23 matt Exp $ .if ${KERNEL_BUILD:T:MPANDA*} != "" -CPPFLAGS+= -mcpu=cortex-a9 +CPPFLAGS+= -mcpu=cortex-a9 -mfpu=neon .else -CPPFLAGS+= -mcpu=cortex-a8 +CPPFLAGS+= -mcpu=cortex-a8 -mfpu=neon .endif SYSTEM_FIRST_OBJ= beagle_start.o Index: src/sys/arch/evbarm/conf/std.netwalker diff -u src/sys/arch/evbarm/conf/std.netwalker:1.3 src/sys/arch/evbarm/conf/std.netwalker:1.4 --- src/sys/arch/evbarm/conf/std.netwalker:1.3 Thu Apr 26 06:51:05 2012 +++ src/sys/arch/evbarm/conf/std.netwalker Sat Dec 8 07:05:23 2012 @@ -1,4 +1,4 @@ -# $NetBSD: std.netwalker,v 1.3 2012/04/26 06:51:05 bsh Exp $ +# $NetBSD: std.netwalker,v 1.4 2012/12/08 07:05:23 matt Exp $ # # standard NetBSD/evbarm options for Sharp NetWalker @@ -14,7 +14,7 @@ options NETWALKER options EXEC_ELF32 options EXEC_SCRIPT options KERNEL_BASE_EXT=0xc000 -makeoptions CPUFLAGS="-mcpu=cortex-a8" +makeoptions CPUFLAGS="-mcpu=cortex-a8 -mfpu=neon" # To support easy transit to ../arch/arm/arm32 options ARM32
CVS commit: src/sys/kern
Module Name:src Committed By: hannken Date: Sat Dec 8 07:24:42 UTC 2012 Modified Files: src/sys/kern: vfs_wapbl.c Log Message: Try to coalesce writes to the journal in MAXPHYS sized and aligned blocks. Speeds up wapbl_flush() on raid5 by a factor of 3-4. Discussed on tech-kern. Needs pullup to NetBSD-6. To generate a diff of this commit: cvs rdiff -u -r1.53 -r1.54 src/sys/kern/vfs_wapbl.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/vfs_wapbl.c diff -u src/sys/kern/vfs_wapbl.c:1.53 src/sys/kern/vfs_wapbl.c:1.54 --- src/sys/kern/vfs_wapbl.c:1.53 Sat Nov 17 10:10:17 2012 +++ src/sys/kern/vfs_wapbl.c Sat Dec 8 07:24:42 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: vfs_wapbl.c,v 1.53 2012/11/17 10:10:17 hannken Exp $ */ +/* $NetBSD: vfs_wapbl.c,v 1.54 2012/12/08 07:24:42 hannken Exp $ */ /*- * Copyright (c) 2003, 2008, 2009 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ #define WAPBL_INTERNAL #include -__KERNEL_RCSID(0, "$NetBSD: vfs_wapbl.c,v 1.53 2012/11/17 10:10:17 hannken Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vfs_wapbl.c,v 1.54 2012/12/08 07:24:42 hannken Exp $"); #include #include @@ -184,6 +184,10 @@ struct wapbl { SIMPLEQ_HEAD(, wapbl_entry) wl_entries; /* On disk transaction accounting */ + + u_char *wl_buffer; /* l: buffer for wapbl_buffered_write() */ + daddr_t wl_buffer_dblk; /* l: buffer disk block address */ + size_t wl_buffer_used; /* l: buffer current use */ }; #ifdef WAPBL_DEBUG_PRINT @@ -489,6 +493,9 @@ wapbl_start(struct wapbl ** wlp, struct wl->wl_dealloclens = wapbl_alloc(sizeof(*wl->wl_dealloclens) * wl->wl_dealloclim); + wl->wl_buffer = wapbl_alloc(MAXPHYS); + wl->wl_buffer_used = 0; + wapbl_inodetrk_init(wl, WAPBL_INODETRK_SIZE); /* Initialize the commit header */ @@ -537,6 +544,7 @@ wapbl_start(struct wapbl ** wlp, struct sizeof(*wl->wl_deallocblks) * wl->wl_dealloclim); wapbl_free(wl->wl_dealloclens, sizeof(*wl->wl_dealloclens) * wl->wl_dealloclim); + wapbl_free(wl->wl_buffer, MAXPHYS); wapbl_inodetrk_free(wl); wapbl_free(wl, sizeof(*wl)); @@ -716,6 +724,7 @@ wapbl_stop(struct wapbl *wl, int force) sizeof(*wl->wl_deallocblks) * wl->wl_dealloclim); wapbl_free(wl->wl_dealloclens, sizeof(*wl->wl_dealloclens) * wl->wl_dealloclim); + wapbl_free(wl->wl_buffer, MAXPHYS); wapbl_inodetrk_free(wl); cv_destroy(&wl->wl_reclaimable_cv); @@ -791,6 +800,81 @@ wapbl_read(void *data, size_t len, struc } /* + * Flush buffered data if any. + */ +static int +wapbl_buffered_flush(struct wapbl *wl) +{ + int error; + + if (wl->wl_buffer_used == 0) + return 0; + + error = wapbl_doio(wl->wl_buffer, wl->wl_buffer_used, + wl->wl_devvp, wl->wl_buffer_dblk, B_WRITE); + wl->wl_buffer_used = 0; + + return error; +} + +/* + * Write data to the log. + * Try to coalesce writes and emit MAXPHYS aligned blocks. + */ +static int +wapbl_buffered_write(void *data, size_t len, struct wapbl *wl, daddr_t pbn) +{ + int error; + size_t resid; + + /* + * If not adjacent to buffered data flush first. Disk block + * address is always valid for non-empty buffer. + */ + if (wl->wl_buffer_used > 0 && + pbn != wl->wl_buffer_dblk + btodb(wl->wl_buffer_used)) { + error = wapbl_buffered_flush(wl); + if (error) + return error; + } + /* + * If this write goes to an empty buffer we have to + * save the disk block address first. + */ + if (wl->wl_buffer_used == 0) + wl->wl_buffer_dblk = pbn; + /* + * Remaining space so this buffer ends on a MAXPHYS boundary. + * + * Cannot become less or equal zero as the buffer would have been + * flushed on the last call then. + */ + resid = MAXPHYS - dbtob(wl->wl_buffer_dblk % btodb(MAXPHYS)) - + wl->wl_buffer_used; + KASSERT(resid > 0); + KASSERT(dbtob(btodb(resid)) == resid); + if (len >= resid) { + memcpy(wl->wl_buffer + wl->wl_buffer_used, data, resid); + wl->wl_buffer_used += resid; + error = wapbl_doio(wl->wl_buffer, wl->wl_buffer_used, + wl->wl_devvp, wl->wl_buffer_dblk, B_WRITE); + data = (uint8_t *)data + resid; + len -= resid; + wl->wl_buffer_dblk = pbn + btodb(resid); + wl->wl_buffer_used = 0; + if (error) + return error; + } + KASSERT(len < MAXPHYS); + if (len > 0) { + memcpy(wl->wl_buffer + wl->wl_buffer_used, data, len); + wl->wl_buffer_used += len; + } + + return 0; +} + +/* * Off is byte offset returns new offset for next write * handles log wraparound */ @@ -813,7 +897,7 @@ wapbl_circ_write(struct wapbl *wl, void #ifdef _KERNEL pbn = btodb(pbn << wl->wl_log_dev_bshift); #endif - error = wapbl_write(data, slen, wl->wl_devvp, pbn); + error = wapbl_buffered_write(data, slen, wl, pbn); if (error) return error; data = (uint8_t *)data + slen; @@ -824,7 +908,7 @@ wapbl_circ_write(struct wapbl *wl, void #ifdef _KERNEL pbn = btodb(pbn << wl->wl_log_dev_bshift); #endif - error = wapbl_write(data, len, w