CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Mon Jan 20 07:19:04 UTC 2020 Modified Files: src/sys/dev/pci/ixgbe: ix_txrx.c ixgbe.h ixgbe_netbsd.c Log Message: Free jumbo mem structure correctly. Found by yamaguchi@ using with LOCKDEBUG. To generate a diff of this commit: cvs rdiff -u -r1.58 -r1.59 src/sys/dev/pci/ixgbe/ix_txrx.c cvs rdiff -u -r1.60 -r1.61 src/sys/dev/pci/ixgbe/ixgbe.h cvs rdiff -u -r1.10 -r1.11 src/sys/dev/pci/ixgbe/ixgbe_netbsd.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/pci/ixgbe/ix_txrx.c diff -u src/sys/dev/pci/ixgbe/ix_txrx.c:1.58 src/sys/dev/pci/ixgbe/ix_txrx.c:1.59 --- src/sys/dev/pci/ixgbe/ix_txrx.c:1.58 Mon Dec 16 02:50:54 2019 +++ src/sys/dev/pci/ixgbe/ix_txrx.c Mon Jan 20 07:19:04 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: ix_txrx.c,v 1.58 2019/12/16 02:50:54 msaitoh Exp $ */ +/* $NetBSD: ix_txrx.c,v 1.59 2020/01/20 07:19:04 msaitoh Exp $ */ /** @@ -1681,6 +1681,10 @@ ixgbe_free_receive_buffers(struct rx_rin rxbuf->pmap = NULL; } } + + /* NetBSD specific. See ixgbe_netbsd.c */ + ixgbe_jcl_destroy(adapter, rxr); + if (rxr->rx_buffers != NULL) { free(rxr->rx_buffers, M_DEVBUF); rxr->rx_buffers = NULL; Index: src/sys/dev/pci/ixgbe/ixgbe.h diff -u src/sys/dev/pci/ixgbe/ixgbe.h:1.60 src/sys/dev/pci/ixgbe/ixgbe.h:1.61 --- src/sys/dev/pci/ixgbe/ixgbe.h:1.60 Mon Dec 16 02:50:54 2019 +++ src/sys/dev/pci/ixgbe/ixgbe.h Mon Jan 20 07:19:04 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: ixgbe.h,v 1.60 2019/12/16 02:50:54 msaitoh Exp $ */ +/* $NetBSD: ixgbe.h,v 1.61 2020/01/20 07:19:04 msaitoh Exp $ */ /** SPDX-License-Identifier: BSD-3-Clause @@ -780,6 +780,7 @@ const struct sysctlnode *ixgbe_sysctl_in /* For NetBSD */ void ixgbe_jcl_reinit(struct adapter *, bus_dma_tag_t, struct rx_ring *, int, size_t); +void ixgbe_jcl_destroy(struct adapter *, struct rx_ring *); #include "ixgbe_bypass.h" #include "ixgbe_fdir.h" Index: src/sys/dev/pci/ixgbe/ixgbe_netbsd.c diff -u src/sys/dev/pci/ixgbe/ixgbe_netbsd.c:1.10 src/sys/dev/pci/ixgbe/ixgbe_netbsd.c:1.11 --- src/sys/dev/pci/ixgbe/ixgbe_netbsd.c:1.10 Wed Sep 4 07:29:34 2019 +++ src/sys/dev/pci/ixgbe/ixgbe_netbsd.c Mon Jan 20 07:19:04 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: ixgbe_netbsd.c,v 1.10 2019/09/04 07:29:34 msaitoh Exp $ */ +/* $NetBSD: ixgbe_netbsd.c,v 1.11 2020/01/20 07:19:04 msaitoh Exp $ */ /* * Copyright (c) 2011 The NetBSD Foundation, Inc. * All rights reserved. @@ -161,6 +161,22 @@ post_zalloc_err: return NULL; } +static void +ixgbe_jcl_freeall(struct adapter *adapter, struct rx_ring *rxr) +{ + ixgbe_extmem_head_t *eh = >jcl_head; + ixgbe_extmem_t *em; + bus_dma_tag_t dmat = rxr->ptag->dt_dmat; + + while ((em = ixgbe_getext(eh, 0)) != NULL) { + KASSERT(em->em_vaddr != NULL); + bus_dmamem_unmap(dmat, em->em_vaddr, em->em_size); + bus_dmamem_free(dmat, >em_seg, 1); + memset(em, 0, sizeof(*em)); + kmem_free(em, sizeof(*em)); + } +} + void ixgbe_jcl_reinit(struct adapter *adapter, bus_dma_tag_t dmat, struct rx_ring *rxr, int nbuf, size_t size) @@ -187,13 +203,7 @@ ixgbe_jcl_reinit(struct adapter *adapter return; /* Free all dmamem */ - while ((em = ixgbe_getext(eh, 0)) != NULL) { - KASSERT(em->em_vaddr != NULL); - bus_dmamem_unmap(dmat, em->em_vaddr, em->em_size); - bus_dmamem_free(dmat, >em_seg, 1); - memset(em, 0, sizeof(*em)); - kmem_free(em, sizeof(*em)); - } + ixgbe_jcl_freeall(adapter, rxr); for (i = 0; i < nbuf; i++) { if ((em = ixgbe_newext(eh, dmat, size)) == NULL) { @@ -210,6 +220,21 @@ ixgbe_jcl_reinit(struct adapter *adapter rxr->last_num_rx_desc = adapter->num_rx_desc; } +void +ixgbe_jcl_destroy(struct adapter *adapter, struct rx_ring *rxr) +{ + ixgbe_extmem_head_t *eh = >jcl_head; + + /* Free all dmamem */ + ixgbe_jcl_freeall(adapter, rxr); + + if (eh->eh_initialized) { + mutex_destroy(>eh_mtx); + eh->eh_initialized = false; + } +} + + static void ixgbe_jcl_free(struct mbuf *m, void *buf, size_t size, void *arg) {
CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Mon Jan 20 07:19:04 UTC 2020 Modified Files: src/sys/dev/pci/ixgbe: ix_txrx.c ixgbe.h ixgbe_netbsd.c Log Message: Free jumbo mem structure correctly. Found by yamaguchi@ using with LOCKDEBUG. To generate a diff of this commit: cvs rdiff -u -r1.58 -r1.59 src/sys/dev/pci/ixgbe/ix_txrx.c cvs rdiff -u -r1.60 -r1.61 src/sys/dev/pci/ixgbe/ixgbe.h cvs rdiff -u -r1.10 -r1.11 src/sys/dev/pci/ixgbe/ixgbe_netbsd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: mrg Date: Mon Jan 20 06:55:35 UTC 2020 Modified Files: src/sys/arch/arm/broadcom: bcm2835_intr.c Log Message: use arm_cpu_mpidr() and fix arm64 builds. To generate a diff of this commit: cvs rdiff -u -r1.30 -r1.31 src/sys/arch/arm/broadcom/bcm2835_intr.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/bcm2835_intr.c diff -u src/sys/arch/arm/broadcom/bcm2835_intr.c:1.30 src/sys/arch/arm/broadcom/bcm2835_intr.c:1.31 --- src/sys/arch/arm/broadcom/bcm2835_intr.c:1.30 Sun Jan 19 16:53:20 2020 +++ src/sys/arch/arm/broadcom/bcm2835_intr.c Mon Jan 20 06:55:35 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: bcm2835_intr.c,v 1.30 2020/01/19 16:53:20 skrll Exp $ */ +/* $NetBSD: bcm2835_intr.c,v 1.31 2020/01/20 06:55:35 mrg Exp $ */ /*- * Copyright (c) 2012, 2015, 2019 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: bcm2835_intr.c,v 1.30 2020/01/19 16:53:20 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bcm2835_intr.c,v 1.31 2020/01/20 06:55:35 mrg Exp $"); #define _INTR_PRIVATE @@ -337,7 +337,7 @@ bcm2835_irq_handler(void *frame) { struct cpu_info * const ci = curcpu(); const int oldipl = ci->ci_cpl; - const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); + const cpuid_t cpuid = __SHIFTOUT(arm_cpu_mpidr(ci), MPIDR_AFF0); const uint32_t oldipl_mask = __BIT(oldipl); int ipl_mask = 0; @@ -700,7 +700,7 @@ static int bcm2836mp_pic_find_pending_irqs(struct pic_softc *pic) { struct cpu_info * const ci = curcpu(); - const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); + const cpuid_t cpuid = __SHIFTOUT(arm_cpu_mpidr(ci), MPIDR_AFF0); uint32_t lpending; int ipl = 0; @@ -741,7 +741,7 @@ bcm2836mp_pic_source_name(struct pic_sof #if defined(MULTIPROCESSOR) static void bcm2836mp_cpu_init(struct pic_softc *pic, struct cpu_info *ci) { - const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); + const cpuid_t cpuid = __SHIFTOUT(arm_cpu_mpidr(ci), MPIDR_AFF0); KASSERT(cpuid < BCM2836_NCPUS); @@ -768,7 +768,7 @@ int bcm2836mp_ipi_handler(void *priv) { const struct cpu_info *ci = curcpu(); - const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); + const cpuid_t cpuid = __SHIFTOUT(arm_cpu_mpidr(ci), MPIDR_AFF0); uint32_t ipimask, bit; KASSERT(cpuid < BCM2836_NCPUS); @@ -817,7 +817,7 @@ bcm2836mp_ipi_handler(void *priv) static void bcm2836mp_intr_init(void *priv, struct cpu_info *ci) { - const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); + const cpuid_t cpuid = __SHIFTOUT(arm_cpu_mpidr(ci), MPIDR_AFF0); struct pic_softc * const pic = _pic[cpuid]; KASSERT(cpuid < BCM2836_NCPUS);
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: mrg Date: Mon Jan 20 06:55:35 UTC 2020 Modified Files: src/sys/arch/arm/broadcom: bcm2835_intr.c Log Message: use arm_cpu_mpidr() and fix arm64 builds. To generate a diff of this commit: cvs rdiff -u -r1.30 -r1.31 src/sys/arch/arm/broadcom/bcm2835_intr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/x86/x86
Module Name:src Committed By: mlelstv Date: Mon Jan 20 06:50:34 UTC 2020 Modified Files: src/sys/arch/x86/x86: cpu_topology.c Log Message: assert smt_bits value only after it is computed. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/x86/x86/cpu_topology.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/cpu_topology.c diff -u src/sys/arch/x86/x86/cpu_topology.c:1.17 src/sys/arch/x86/x86/cpu_topology.c:1.18 --- src/sys/arch/x86/x86/cpu_topology.c:1.17 Thu Jan 9 16:35:03 2020 +++ src/sys/arch/x86/x86/cpu_topology.c Mon Jan 20 06:50:34 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu_topology.c,v 1.17 2020/01/09 16:35:03 ad Exp $ */ +/* $NetBSD: cpu_topology.c,v 1.18 2020/01/20 06:50:34 mlelstv Exp $ */ /*- * Copyright (c) 2009 Mindaugas Rasiukevicius , @@ -36,7 +36,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: cpu_topology.c,v 1.17 2020/01/09 16:35:03 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cpu_topology.c,v 1.18 2020/01/20 06:50:34 mlelstv Exp $"); #include "acpica.h" @@ -190,8 +190,9 @@ x86_cpu_topology(struct cpu_info *ci) x86_cpuid(0x801e, descs); const u_int threads = ((descs[1] >> 8) & 0xff) + 1; - KASSERT(smt_bits == 0 && smt_bits <= core_bits); + KASSERT(smt_bits == 0); smt_bits = ilog2(threads); + KASSERT(smt_bits <= core_bits); core_bits -= smt_bits; }
CVS commit: src/sys/arch/x86/x86
Module Name:src Committed By: mlelstv Date: Mon Jan 20 06:50:34 UTC 2020 Modified Files: src/sys/arch/x86/x86: cpu_topology.c Log Message: assert smt_bits value only after it is computed. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/x86/x86/cpu_topology.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Re: CVS commit: src/sys
On Mon, 20 Jan 2020, Ryo ONODERA wrote: Hi, After this commit, the kernel stalls just before root file system will be found on my NetBSD/amd64 laptop. Reverting src/sys/kern/kern_rwlock.c to r1.60 and src/sys/sys/rwlock.h to r1.12 in latest -current tree and I can get the kernel that works like before. And on another laptop, the problematic kernel stalls before root file system detection like my laptop. It may be universal problem. Could you take a look at this problem? I ran into the same problem trying to do an ``anita install'' under qemu. It got as far as identifying the boot device, and then hang. ++--+---+ | Paul Goyette | PGP Key fingerprint: | E-mail addresses: | | (Retired) | FA29 0E3B 35AF E8AE 6651 | p...@whooppee.com | | Software Developer | 0786 F758 55DE 53BA 7731 | pgoye...@netbsd.org | ++--+---+
Re: CVS commit: src/sys
Sorry I have note sent this e-mail to you. Ryo ONODERA writes: > Hi, > > After this commit, the kernel stalls just before root file system > will be found on my NetBSD/amd64 laptop. > > Reverting > src/sys/kern/kern_rwlock.c to r1.60 > and > src/sys/sys/rwlock.h to r1.12 > in latest -current tree and I can get the kernel that works like > before. > > And on another laptop, the problematic kernel stalls before root file > system detection like my laptop. > > It may be universal problem. > > Could you take a look at this problem? > > Thank you. > > "Andrew Doran" writes: > >> Module Name: src >> Committed By:ad >> Date:Sun Jan 19 18:34:24 UTC 2020 >> >> Modified Files: >> src/sys/kern: kern_rwlock.c >> src/sys/sys: rwlock.h >> >> Log Message: >> Tidy rwlocks a bit, no functional change intended. Mainly: >> >> - rw_downgrade(): do it in a for () loop like all the others. >> - Explicitly carry around RW_NODEBUG - don't be lazy. >> - Remove pointless macros. >> - Don't make assertions conditional on LOCKDEBUG, there's no reason. >> - Make space for a new flag bit (not added yet). >> >> >> To generate a diff of this commit: >> cvs rdiff -u -r1.60 -r1.61 src/sys/kern/kern_rwlock.c >> cvs rdiff -u -r1.12 -r1.13 src/sys/sys/rwlock.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_rwlock.c >> diff -u src/sys/kern/kern_rwlock.c:1.60 src/sys/kern/kern_rwlock.c:1.61 >> --- src/sys/kern/kern_rwlock.c:1.60 Sun Jan 12 18:37:10 2020 >> +++ src/sys/kern/kern_rwlock.c Sun Jan 19 18:34:24 2020 >> @@ -1,4 +1,4 @@ >> -/* $NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp $ */ >> +/* $NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp $ */ >> >> /*- >> * Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019, 2020 >> @@ -39,7 +39,9 @@ >> */ >> >> #include >> -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp >> $"); >> +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp >> $"); >> + >> +#include "opt_lockdebug.h" >> >> #define __RWLOCK_PRIVATE >> >> @@ -63,58 +65,32 @@ __KERNEL_RCSID(0, "$NetBSD: kern_rwlock. >> * LOCKDEBUG >> */ >> >> -#if defined(LOCKDEBUG) >> - >> -#define RW_WANTLOCK(rw, op) >> \ >> -LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw),\ >> -(uintptr_t)__builtin_return_address(0), op == RW_READER); >> -#define RW_LOCKED(rw, op) >> \ >> -LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL,\ >> -(uintptr_t)__builtin_return_address(0), op == RW_READER); >> -#define RW_UNLOCKED(rw, op) >> \ >> -LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw),\ >> -(uintptr_t)__builtin_return_address(0), op == RW_READER); >> -#define RW_DASSERT(rw, cond) >> \ >> -do { >> \ >> -if (__predict_false(!(cond))) \ >> -rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ >> -} while (/* CONSTCOND */ 0); >> - >> -#else /* LOCKDEBUG */ >> - >> -#define RW_WANTLOCK(rw, op) /* nothing */ >> -#define RW_LOCKED(rw, op) /* nothing */ >> -#define RW_UNLOCKED(rw, op) /* nothing */ >> -#define RW_DASSERT(rw, cond)/* nothing */ >> +#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) >> >> -#endif /* LOCKDEBUG */ >> +#define RW_WANTLOCK(rw, op) \ >> +LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ >> +(uintptr_t)__builtin_return_address(0), op == RW_READER); >> +#define RW_LOCKED(rw, op) \ >> +LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ >> +(uintptr_t)__builtin_return_address(0), op == RW_READER); >> +#define RW_UNLOCKED(rw, op) \ >> +LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ >> +(uintptr_t)__builtin_return_address(0), op == RW_READER); >> >> /* >> * DIAGNOSTIC >> */ >> >> #if defined(DIAGNOSTIC) >> - >> -#define RW_ASSERT(rw, cond) >> \ >> -do { >> \ >> -if (__predict_false(!(cond))) \ >> +#define RW_ASSERT(rw, cond) \ >> +do { \ >> +if (__predict_false(!(cond))) \ >> rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ >> } while (/* CONSTCOND */ 0) >> - >> #else >> - >> #define RW_ASSERT(rw, cond) /* nothing */ >> - >> #endif /* DIAGNOSTIC */ >> >> -#define RW_SETDEBUG(rw, on) ((rw)->rw_owner |= (on) ? 0 : >> RW_NODEBUG) >> -#define
Re: CVS commit: src/sys
Hi, After this commit, the kernel stalls just before root file system will be found on my NetBSD/amd64 laptop. Reverting src/sys/kern/kern_rwlock.c to r1.60 and src/sys/sys/rwlock.h to r1.12 in latest -current tree and I can get the kernel that works like before. And on another laptop, the problematic kernel stalls before root file system detection like my laptop. It may be universal problem. Could you take a look at this problem? Thank you. "Andrew Doran" writes: > Module Name: src > Committed By: ad > Date: Sun Jan 19 18:34:24 UTC 2020 > > Modified Files: > src/sys/kern: kern_rwlock.c > src/sys/sys: rwlock.h > > Log Message: > Tidy rwlocks a bit, no functional change intended. Mainly: > > - rw_downgrade(): do it in a for () loop like all the others. > - Explicitly carry around RW_NODEBUG - don't be lazy. > - Remove pointless macros. > - Don't make assertions conditional on LOCKDEBUG, there's no reason. > - Make space for a new flag bit (not added yet). > > > To generate a diff of this commit: > cvs rdiff -u -r1.60 -r1.61 src/sys/kern/kern_rwlock.c > cvs rdiff -u -r1.12 -r1.13 src/sys/sys/rwlock.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_rwlock.c > diff -u src/sys/kern/kern_rwlock.c:1.60 src/sys/kern/kern_rwlock.c:1.61 > --- src/sys/kern/kern_rwlock.c:1.60 Sun Jan 12 18:37:10 2020 > +++ src/sys/kern/kern_rwlock.cSun Jan 19 18:34:24 2020 > @@ -1,4 +1,4 @@ > -/* $NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp $ */ > +/* $NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp $ */ > > /*- > * Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019, 2020 > @@ -39,7 +39,9 @@ > */ > > #include > -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp > $"); > +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp > $"); > + > +#include "opt_lockdebug.h" > > #define __RWLOCK_PRIVATE > > @@ -63,58 +65,32 @@ __KERNEL_RCSID(0, "$NetBSD: kern_rwlock. > * LOCKDEBUG > */ > > -#if defined(LOCKDEBUG) > - > -#define RW_WANTLOCK(rw, op) > \ > - LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw),\ > - (uintptr_t)__builtin_return_address(0), op == RW_READER); > -#define RW_LOCKED(rw, op) > \ > - LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL,\ > - (uintptr_t)__builtin_return_address(0), op == RW_READER); > -#define RW_UNLOCKED(rw, op) > \ > - LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw),\ > - (uintptr_t)__builtin_return_address(0), op == RW_READER); > -#define RW_DASSERT(rw, cond) > \ > -do { \ > - if (__predict_false(!(cond))) \ > - rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ > -} while (/* CONSTCOND */ 0); > - > -#else/* LOCKDEBUG */ > - > -#define RW_WANTLOCK(rw, op) /* nothing */ > -#define RW_LOCKED(rw, op) /* nothing */ > -#define RW_UNLOCKED(rw, op) /* nothing */ > -#define RW_DASSERT(rw, cond)/* nothing */ > +#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) > > -#endif /* LOCKDEBUG */ > +#define RW_WANTLOCK(rw, op) \ > +LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ > +(uintptr_t)__builtin_return_address(0), op == RW_READER); > +#define RW_LOCKED(rw, op) \ > +LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ > +(uintptr_t)__builtin_return_address(0), op == RW_READER); > +#define RW_UNLOCKED(rw, op) \ > +LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ > +(uintptr_t)__builtin_return_address(0), op == RW_READER); > > /* > * DIAGNOSTIC > */ > > #if defined(DIAGNOSTIC) > - > -#define RW_ASSERT(rw, cond) > \ > -do { \ > - if (__predict_false(!(cond))) \ > +#define RW_ASSERT(rw, cond) \ > +do { \ > + if (__predict_false(!(cond))) \ > rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ > } while (/* CONSTCOND */ 0) > - > #else > - > #define RW_ASSERT(rw, cond) /* nothing */ > - > #endif /* DIAGNOSTIC */ > > -#define RW_SETDEBUG(rw, on) ((rw)->rw_owner |= (on) ? 0 : > RW_NODEBUG) > -#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) > == 0) > -#if defined(LOCKDEBUG) > -#define RW_INHERITDEBUG(n, o) (n) |= (o) & RW_NODEBUG > -#else /* defined(LOCKDEBUG) */ > -#define
CVS commit: src/sys/kern
Module Name:src Committed By: chs Date: Sun Jan 19 23:49:32 UTC 2020 Modified Files: src/sys/kern: subr_pool.c Log Message: fix assertions about when it is ok for pool_get() to return NULL. To generate a diff of this commit: cvs rdiff -u -r1.264 -r1.265 src/sys/kern/subr_pool.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/subr_pool.c diff -u src/sys/kern/subr_pool.c:1.264 src/sys/kern/subr_pool.c:1.265 --- src/sys/kern/subr_pool.c:1.264 Fri Dec 27 15:49:20 2019 +++ src/sys/kern/subr_pool.c Sun Jan 19 23:49:32 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: subr_pool.c,v 1.264 2019/12/27 15:49:20 maxv Exp $ */ +/* $NetBSD: subr_pool.c,v 1.265 2020/01/19 23:49:32 chs Exp $ */ /* * Copyright (c) 1997, 1999, 2000, 2002, 2007, 2008, 2010, 2014, 2015, 2018 @@ -33,7 +33,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: subr_pool.c,v 1.264 2019/12/27 15:49:20 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: subr_pool.c,v 1.265 2020/01/19 23:49:32 chs Exp $"); #ifdef _KERNEL_OPT #include "opt_ddb.h" @@ -1145,7 +1145,7 @@ pool_get(struct pool *pp, int flags) pp->pr_nfail++; mutex_exit(>pr_lock); - KASSERT((flags & (PR_WAITOK|PR_NOWAIT)) == PR_NOWAIT); + KASSERT((flags & (PR_NOWAIT|PR_LIMITFAIL)) != 0); return NULL; } @@ -2509,7 +2509,7 @@ pool_cache_get_slow(pool_cache_cpu_t *cc object = pool_get(>pc_pool, flags); *objectp = object; if (__predict_false(object == NULL)) { - KASSERT((flags & (PR_WAITOK|PR_NOWAIT)) == PR_NOWAIT); + KASSERT((flags & (PR_NOWAIT|PR_LIMITFAIL)) != 0); return false; }
CVS commit: src/sys/kern
Module Name:src Committed By: chs Date: Sun Jan 19 23:49:32 UTC 2020 Modified Files: src/sys/kern: subr_pool.c Log Message: fix assertions about when it is ok for pool_get() to return NULL. To generate a diff of this commit: cvs rdiff -u -r1.264 -r1.265 src/sys/kern/subr_pool.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:24:01 UTC 2020 Modified Files: src/sys/sys [ad-namecache]: namei.h Log Message: Regen. To generate a diff of this commit: cvs rdiff -u -r1.103.2.3 -r1.103.2.4 src/sys/sys/namei.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/sys/namei.h diff -u src/sys/sys/namei.h:1.103.2.3 src/sys/sys/namei.h:1.103.2.4 --- src/sys/sys/namei.h:1.103.2.3 Fri Jan 17 21:47:37 2020 +++ src/sys/sys/namei.h Sun Jan 19 21:24:01 2020 @@ -1,11 +1,11 @@ -/* $NetBSD: namei.h,v 1.103.2.3 2020/01/17 21:47:37 ad Exp $ */ +/* $NetBSD: namei.h,v 1.103.2.4 2020/01/19 21:24:01 ad Exp $ */ /* * WARNING: GENERATED FILE. DO NOT EDIT * (edit namei.src and run make namei in src/sys/sys) * by: NetBSD: gennameih.awk,v 1.5 2009/12/23 14:17:19 pooka Exp - * from: NetBSD: namei.src,v 1.47.2.3 2020/01/14 11:07:40 ad Exp + * from: NetBSD: namei.src,v 1.47.2.5 2020/01/19 21:19:25 ad Exp */ /* @@ -47,6 +47,7 @@ #ifdef _KERNEL #include +#include /* * Abstraction for a single pathname. @@ -159,13 +160,14 @@ struct nameidata { (pseudo) */ #define EMULROOTSET 0x0080 /* emulation root already in ni_erootdir */ +#define LOCKSHARED 0x0100 /* want shared locks if possible */ #define NOCHROOT 0x0100 /* no chroot on abs path lookups */ -#define MODMASK 0x01fc /* mask of operational modifiers */ +#define MODMASK 0x010001fc /* mask of operational modifiers */ /* * Namei parameter descriptors. */ -#define NOCROSSMOUNT 0x100 /* do not cross mount points */ -#define RDONLY 0x200 /* lookup with read-only semantics */ +#define NOCROSSMOUNT 0x800 /* do not cross mount points */ +#define RDONLY 0x0001000 /* lookup with read-only semantics */ #define ISDOTDOT 0x0002000 /* current component name is .. */ #define MAKEENTRY 0x0004000 /* entry is to be added to name cache */ #define ISLASTCN 0x0008000 /* this is last component of pathname */ @@ -173,7 +175,7 @@ struct nameidata { #define DOWHITEOUT 0x004 /* do whiteouts */ #define REQUIREDIR 0x008 /* must be a directory */ #define CREATEDIR 0x020 /* trailing slashes are ok */ -#define PARAMASK 0x02ee300 /* mask of parameter descriptors */ +#define PARAMASK 0x02ef800 /* mask of parameter descriptors */ /* * Initialization of a nameidata structure. @@ -209,7 +211,8 @@ struct nameidata { * * This structure describes the elements in the cache of recent names looked * up by namei. It's carefully sized to take up 128 bytes on _LP64, to make - * good use of space and the CPU caches. + * good use of space and the CPU caches; nc_name is aligned on an 8-byte + * boundary to make string comparisons cheaper. * * Field markings and their corresponding locks: * @@ -219,16 +222,19 @@ struct nameidata { * l protected by cache_lru_lock * u accesses are unlocked, no serialization applied */ +struct nchnode; struct namecache { - struct rb_node nc_node; /* d red-black tree node */ + struct rb_node nc_tree; /* d red-black tree, must be first */ + TAILQ_ENTRY(namecache) nc_list; /* v vp's list of cache entries */ TAILQ_ENTRY(namecache) nc_lru; /* l pseudo-lru chain */ - TAILQ_ENTRY(namecache) nc_vlist;/* v vp's list of cache entries */ - struct vnode *nc_dvp; /* - vnode of parent of name */ + struct nchnode *nc_dnn; /* - nchnode of parent of name */ + struct nchnode *nc_nn; /* - nchnode the name refers to */ struct vnode *nc_vp; /* - vnode the name refers to */ + int64_t nc_key; /* - hash key */ int nc_lrulist; /* l which LRU list its on */ - u_short nc_nlen; /* - length of name */ - bool nc_whiteout; /* - true if a whiteout */ - char nc_name[49]; /* - segment name */ + short nc_nlen; /* - length of the name */ + char nc_whiteout; /* - true if a whiteout */ + char nc_name[33]; /* - segment name */ }; #endif @@ -292,9 +298,16 @@ bool cache_lookup(struct vnode *, const int *, struct vnode **); bool cache_lookup_raw(struct vnode *, const char *, size_t, uint32_t, int *, struct vnode **); -int cache_revlookup(struct vnode *, struct vnode **, char **, char *); +bool cache_lookup_linked(struct vnode *, const char *, size_t, + struct vnode **, krwlock_t **, kauth_cred_t); +int cache_revlookup(struct vnode *, struct vnode **, char **, char *, + bool, int); +int cache_diraccess(struct vnode *, int); void cache_enter(struct vnode *, struct vnode *, const char *, size_t, uint32_t); +void cache_set_id(struct vnode *, mode_t, uid_t, gid_t); +void cache_update_id(struct vnode *, mode_t, uid_t, gid_t); +bool cache_have_id(struct vnode *); void cache_vnode_init(struct vnode * ); void cache_vnode_fini(struct vnode * ); void cache_cpu_init(struct cpu_info *); @@ -326,6 +339,10 @@ void namecache_print(struct vnode *, voi type ncs_2passes; /* number of times we attempt it (U) */ \
CVS commit: [ad-namecache] src/sys/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:24:01 UTC 2020 Modified Files: src/sys/sys [ad-namecache]: namei.h Log Message: Regen. To generate a diff of this commit: cvs rdiff -u -r1.103.2.3 -r1.103.2.4 src/sys/sys/namei.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys/kern
Module Name:src Committed By: ad Date: Sun Jan 19 21:23:36 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: vfs_syscalls.c vfs_vnops.c Log Message: Use LOCKLEAF in the few cases it's useful for ffs/tmpfs/nullfs. Others need to be checked. To generate a diff of this commit: cvs rdiff -u -r1.539.2.1 -r1.539.2.2 src/sys/kern/vfs_syscalls.c cvs rdiff -u -r1.204.2.1 -r1.204.2.2 src/sys/kern/vfs_vnops.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_syscalls.c diff -u src/sys/kern/vfs_syscalls.c:1.539.2.1 src/sys/kern/vfs_syscalls.c:1.539.2.2 --- src/sys/kern/vfs_syscalls.c:1.539.2.1 Fri Jan 17 21:47:35 2020 +++ src/sys/kern/vfs_syscalls.c Sun Jan 19 21:23:36 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: vfs_syscalls.c,v 1.539.2.1 2020/01/17 21:47:35 ad Exp $ */ +/* $NetBSD: vfs_syscalls.c,v 1.539.2.2 2020/01/19 21:23:36 ad Exp $ */ /*- * Copyright (c) 2008, 2009, 2019 The NetBSD Foundation, Inc. @@ -70,7 +70,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: vfs_syscalls.c,v 1.539.2.1 2020/01/17 21:47:35 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vfs_syscalls.c,v 1.539.2.2 2020/01/19 21:23:36 ad Exp $"); #ifdef _KERNEL_OPT #include "opt_fileassoc.h" @@ -1532,7 +1532,7 @@ chdir_lookup(const char *path, int where if (error) { return error; } - NDINIT(, LOOKUP, FOLLOW | LOCKLEAF | TRYEMULROOT, pb); + NDINIT(, LOOKUP, FOLLOW | LOCKLEAF | LOCKSHARED | TRYEMULROOT, pb); if ((error = namei()) != 0) { pathbuf_destroy(pb); return error; @@ -2996,7 +2996,7 @@ do_sys_accessat(struct lwp *l, int fdat, return EINVAL; } - nd_flag = FOLLOW | LOCKLEAF | TRYEMULROOT; + nd_flag = FOLLOW | LOCKLEAF | LOCKSHARED | TRYEMULROOT; if (flags & AT_SYMLINK_NOFOLLOW) nd_flag &= ~FOLLOW; @@ -3222,7 +3222,7 @@ do_sys_readlinkat(struct lwp *l, int fda if (error) { return error; } - NDINIT(, LOOKUP, NOFOLLOW | LOCKLEAF | TRYEMULROOT, pb); + NDINIT(, LOOKUP, NOFOLLOW | LOCKLEAF | LOCKSHARED | TRYEMULROOT, pb); if ((error = fd_nameiat(l, fdat, )) != 0) { pathbuf_destroy(pb); return error; Index: src/sys/kern/vfs_vnops.c diff -u src/sys/kern/vfs_vnops.c:1.204.2.1 src/sys/kern/vfs_vnops.c:1.204.2.2 --- src/sys/kern/vfs_vnops.c:1.204.2.1 Fri Jan 17 21:47:35 2020 +++ src/sys/kern/vfs_vnops.c Sun Jan 19 21:23:36 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: vfs_vnops.c,v 1.204.2.1 2020/01/17 21:47:35 ad Exp $ */ +/* $NetBSD: vfs_vnops.c,v 1.204.2.2 2020/01/19 21:23:36 ad Exp $ */ /*- * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -66,7 +66,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: vfs_vnops.c,v 1.204.2.1 2020/01/17 21:47:35 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vfs_vnops.c,v 1.204.2.2 2020/01/19 21:23:36 ad Exp $"); #include "veriexec.h" @@ -163,7 +163,10 @@ vn_open(struct nameidata *ndp, int fmode ndp->ni_cnd.cn_flags |= FOLLOW; } else { ndp->ni_cnd.cn_nameiop = LOOKUP; - ndp->ni_cnd.cn_flags |= LOCKLEAF; + if ((fmode & O_TRUNC) == 0) /* XXXAD check nfs etc */ + ndp->ni_cnd.cn_flags |= LOCKLEAF | LOCKSHARED; + else + ndp->ni_cnd.cn_flags |= LOCKLEAF; if ((fmode & O_NOFOLLOW) == 0) ndp->ni_cnd.cn_flags |= FOLLOW; }
CVS commit: [ad-namecache] src/sys/kern
Module Name:src Committed By: ad Date: Sun Jan 19 21:23:36 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: vfs_syscalls.c vfs_vnops.c Log Message: Use LOCKLEAF in the few cases it's useful for ffs/tmpfs/nullfs. Others need to be checked. To generate a diff of this commit: cvs rdiff -u -r1.539.2.1 -r1.539.2.2 src/sys/kern/vfs_syscalls.c cvs rdiff -u -r1.204.2.1 -r1.204.2.2 src/sys/kern/vfs_vnops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:21:56 UTC 2020 Modified Files: src/sys/fs/cd9660 [ad-namecache]: cd9660_lookup.c cd9660_vfsops.c src/sys/fs/msdosfs [ad-namecache]: msdosfs_lookup.c msdosfs_vfsops.c src/sys/fs/tmpfs [ad-namecache]: tmpfs_vfsops.c src/sys/miscfs/genfs [ad-namecache]: layer_vnops.c src/sys/miscfs/nullfs [ad-namecache]: null_vfsops.c src/sys/miscfs/procfs [ad-namecache]: procfs_vfsops.c src/sys/ufs/chfs [ad-namecache]: chfs_vnops.c src/sys/ufs/ext2fs [ad-namecache]: ext2fs_lookup.c ext2fs_vfsops.c src/sys/ufs/ffs [ad-namecache]: ffs_vfsops.c src/sys/ufs/lfs [ad-namecache]: lfs_vfsops.c ulfs_lookup.c src/sys/ufs/ufs [ad-namecache]: ufs_lookup.c Log Message: Set IMNT_SHRLOOKUP and use it for the in-cache case. Need to check what more can be done with tmpfs though, it can probably do the whole lookup. To generate a diff of this commit: cvs rdiff -u -r1.30 -r1.30.24.1 src/sys/fs/cd9660/cd9660_lookup.c cvs rdiff -u -r1.93.18.1 -r1.93.18.2 src/sys/fs/cd9660/cd9660_vfsops.c cvs rdiff -u -r1.35 -r1.35.24.1 src/sys/fs/msdosfs/msdosfs_lookup.c cvs rdiff -u -r1.130.6.1 -r1.130.6.2 src/sys/fs/msdosfs/msdosfs_vfsops.c cvs rdiff -u -r1.75.2.1 -r1.75.2.2 src/sys/fs/tmpfs/tmpfs_vfsops.c cvs rdiff -u -r1.67 -r1.67.12.1 src/sys/miscfs/genfs/layer_vnops.c cvs rdiff -u -r1.96 -r1.96.2.1 src/sys/miscfs/nullfs/null_vfsops.c cvs rdiff -u -r1.101.6.1 -r1.101.6.2 src/sys/miscfs/procfs/procfs_vfsops.c cvs rdiff -u -r1.34.4.1 -r1.34.4.2 src/sys/ufs/chfs/chfs_vnops.c cvs rdiff -u -r1.88 -r1.88.22.1 src/sys/ufs/ext2fs/ext2fs_lookup.c cvs rdiff -u -r1.214.4.1 -r1.214.4.2 src/sys/ufs/ext2fs/ext2fs_vfsops.c cvs rdiff -u -r1.362.4.2 -r1.362.4.3 src/sys/ufs/ffs/ffs_vfsops.c cvs rdiff -u -r1.367.2.1 -r1.367.2.2 src/sys/ufs/lfs/lfs_vfsops.c cvs rdiff -u -r1.41 -r1.41.12.1 src/sys/ufs/lfs/ulfs_lookup.c cvs rdiff -u -r1.150 -r1.150.4.1 src/sys/ufs/ufs/ufs_lookup.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/fs/cd9660/cd9660_lookup.c diff -u src/sys/fs/cd9660/cd9660_lookup.c:1.30 src/sys/fs/cd9660/cd9660_lookup.c:1.30.24.1 --- src/sys/fs/cd9660/cd9660_lookup.c:1.30 Sat Mar 28 19:24:05 2015 +++ src/sys/fs/cd9660/cd9660_lookup.c Sun Jan 19 21:21:54 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: cd9660_lookup.c,v 1.30 2015/03/28 19:24:05 maxv Exp $ */ +/* $NetBSD: cd9660_lookup.c,v 1.30.24.1 2020/01/19 21:21:54 ad Exp $ */ /*- * Copyright (c) 1989, 1993, 1994 @@ -39,7 +39,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: cd9660_lookup.c,v 1.30 2015/03/28 19:24:05 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cd9660_lookup.c,v 1.30.24.1 2020/01/19 21:21:54 ad Exp $"); #include #include @@ -152,6 +152,9 @@ cd9660_lookup(void *v) cnp->cn_nameiop, cnp->cn_flags, NULL, vpp)) { return *vpp == NULLVP ? ENOENT : 0; } + /* May need to restart the lookup with an exclusive lock. */ + if (VOP_ISLOCKED(vdp) != LK_EXCLUSIVE) + return ENOLCK; len = cnp->cn_namelen; name = cnp->cn_nameptr; Index: src/sys/fs/cd9660/cd9660_vfsops.c diff -u src/sys/fs/cd9660/cd9660_vfsops.c:1.93.18.1 src/sys/fs/cd9660/cd9660_vfsops.c:1.93.18.2 --- src/sys/fs/cd9660/cd9660_vfsops.c:1.93.18.1 Fri Jan 17 21:47:33 2020 +++ src/sys/fs/cd9660/cd9660_vfsops.c Sun Jan 19 21:21:54 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: cd9660_vfsops.c,v 1.93.18.1 2020/01/17 21:47:33 ad Exp $ */ +/* $NetBSD: cd9660_vfsops.c,v 1.93.18.2 2020/01/19 21:21:54 ad Exp $ */ /*- * Copyright (c) 1994 @@ -37,7 +37,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: cd9660_vfsops.c,v 1.93.18.1 2020/01/17 21:47:33 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cd9660_vfsops.c,v 1.93.18.2 2020/01/19 21:21:54 ad Exp $"); #if defined(_KERNEL_OPT) #include "opt_compat_netbsd.h" @@ -444,7 +444,7 @@ iso_mountfs(struct vnode *devvp, struct mp->mnt_stat.f_fsid = mp->mnt_stat.f_fsidx.__fsid_val[0]; mp->mnt_stat.f_namemax = ISO_MAXNAMLEN; mp->mnt_flag |= MNT_LOCAL; - mp->mnt_iflag |= IMNT_MPSAFE; + mp->mnt_iflag |= IMNT_MPSAFE | IMNT_SHRLOOKUP; mp->mnt_dev_bshift = iso_bsize; mp->mnt_fs_bshift = isomp->im_bshift; isomp->im_mountp = mp; Index: src/sys/fs/msdosfs/msdosfs_lookup.c diff -u src/sys/fs/msdosfs/msdosfs_lookup.c:1.35 src/sys/fs/msdosfs/msdosfs_lookup.c:1.35.24.1 --- src/sys/fs/msdosfs/msdosfs_lookup.c:1.35 Sat Jan 30 09:59:27 2016 +++ src/sys/fs/msdosfs/msdosfs_lookup.c Sun Jan 19 21:21:54 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: msdosfs_lookup.c,v 1.35 2016/01/30 09:59:27 mlelstv Exp $ */ +/* $NetBSD: msdosfs_lookup.c,v 1.35.24.1 2020/01/19 21:21:54 ad Exp $ */ /*- * Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank. @@ -52,7 +52,7 @@ #endif #include -__KERNEL_RCSID(0, "$NetBSD: msdosfs_lookup.c,v 1.35 2016/01/30 09:59:27 mlelstv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: msdosfs_lookup.c,v 1.35.24.1 2020/01/19 21:21:54 ad Exp $"); #include @@ -161,6
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:21:56 UTC 2020 Modified Files: src/sys/fs/cd9660 [ad-namecache]: cd9660_lookup.c cd9660_vfsops.c src/sys/fs/msdosfs [ad-namecache]: msdosfs_lookup.c msdosfs_vfsops.c src/sys/fs/tmpfs [ad-namecache]: tmpfs_vfsops.c src/sys/miscfs/genfs [ad-namecache]: layer_vnops.c src/sys/miscfs/nullfs [ad-namecache]: null_vfsops.c src/sys/miscfs/procfs [ad-namecache]: procfs_vfsops.c src/sys/ufs/chfs [ad-namecache]: chfs_vnops.c src/sys/ufs/ext2fs [ad-namecache]: ext2fs_lookup.c ext2fs_vfsops.c src/sys/ufs/ffs [ad-namecache]: ffs_vfsops.c src/sys/ufs/lfs [ad-namecache]: lfs_vfsops.c ulfs_lookup.c src/sys/ufs/ufs [ad-namecache]: ufs_lookup.c Log Message: Set IMNT_SHRLOOKUP and use it for the in-cache case. Need to check what more can be done with tmpfs though, it can probably do the whole lookup. To generate a diff of this commit: cvs rdiff -u -r1.30 -r1.30.24.1 src/sys/fs/cd9660/cd9660_lookup.c cvs rdiff -u -r1.93.18.1 -r1.93.18.2 src/sys/fs/cd9660/cd9660_vfsops.c cvs rdiff -u -r1.35 -r1.35.24.1 src/sys/fs/msdosfs/msdosfs_lookup.c cvs rdiff -u -r1.130.6.1 -r1.130.6.2 src/sys/fs/msdosfs/msdosfs_vfsops.c cvs rdiff -u -r1.75.2.1 -r1.75.2.2 src/sys/fs/tmpfs/tmpfs_vfsops.c cvs rdiff -u -r1.67 -r1.67.12.1 src/sys/miscfs/genfs/layer_vnops.c cvs rdiff -u -r1.96 -r1.96.2.1 src/sys/miscfs/nullfs/null_vfsops.c cvs rdiff -u -r1.101.6.1 -r1.101.6.2 src/sys/miscfs/procfs/procfs_vfsops.c cvs rdiff -u -r1.34.4.1 -r1.34.4.2 src/sys/ufs/chfs/chfs_vnops.c cvs rdiff -u -r1.88 -r1.88.22.1 src/sys/ufs/ext2fs/ext2fs_lookup.c cvs rdiff -u -r1.214.4.1 -r1.214.4.2 src/sys/ufs/ext2fs/ext2fs_vfsops.c cvs rdiff -u -r1.362.4.2 -r1.362.4.3 src/sys/ufs/ffs/ffs_vfsops.c cvs rdiff -u -r1.367.2.1 -r1.367.2.2 src/sys/ufs/lfs/lfs_vfsops.c cvs rdiff -u -r1.41 -r1.41.12.1 src/sys/ufs/lfs/ulfs_lookup.c cvs rdiff -u -r1.150 -r1.150.4.1 src/sys/ufs/ufs/ufs_lookup.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:19:25 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: vfs_cache.c vfs_getcwd.c vfs_lookup.c src/sys/sys [ad-namecache]: fstypes.h namei.src Log Message: - Add a LOCKSHARED flag to namei (matching FreeBSD) indicating that we want the leaf locked with LK_SHARED. - Add an IMNT_SHRLOOKUP flag to struct mount indicating that the file system can do VOP_LOOKUP() with an shared lock. If it encounters something tricky, VOP_LOOKUP() is free to return ENOLCK and namei() will retry the lookup with an exclusive lock. If the file system has this flag set, namei() will try with shared locks for all of the "read only" lookups, i.e. nameiop=LOOKUP or !ISLASTCN. - vfs_getcwd: only take vnode locks when really needed, take shared locks if possible, and where the namecache has identify info for the directories, do it all in the namecache. - vfs_lookup: when crossing mountpoints take only a shared lock on the covered vnode; don't need anything else. To generate a diff of this commit: cvs rdiff -u -r1.126.2.8 -r1.126.2.9 src/sys/kern/vfs_cache.c cvs rdiff -u -r1.53.2.2 -r1.53.2.3 src/sys/kern/vfs_getcwd.c cvs rdiff -u -r1.212.4.3 -r1.212.4.4 src/sys/kern/vfs_lookup.c cvs rdiff -u -r1.37 -r1.37.6.1 src/sys/sys/fstypes.h cvs rdiff -u -r1.47.2.4 -r1.47.2.5 src/sys/sys/namei.src Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:19:25 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: vfs_cache.c vfs_getcwd.c vfs_lookup.c src/sys/sys [ad-namecache]: fstypes.h namei.src Log Message: - Add a LOCKSHARED flag to namei (matching FreeBSD) indicating that we want the leaf locked with LK_SHARED. - Add an IMNT_SHRLOOKUP flag to struct mount indicating that the file system can do VOP_LOOKUP() with an shared lock. If it encounters something tricky, VOP_LOOKUP() is free to return ENOLCK and namei() will retry the lookup with an exclusive lock. If the file system has this flag set, namei() will try with shared locks for all of the "read only" lookups, i.e. nameiop=LOOKUP or !ISLASTCN. - vfs_getcwd: only take vnode locks when really needed, take shared locks if possible, and where the namecache has identify info for the directories, do it all in the namecache. - vfs_lookup: when crossing mountpoints take only a shared lock on the covered vnode; don't need anything else. To generate a diff of this commit: cvs rdiff -u -r1.126.2.8 -r1.126.2.9 src/sys/kern/vfs_cache.c cvs rdiff -u -r1.53.2.2 -r1.53.2.3 src/sys/kern/vfs_getcwd.c cvs rdiff -u -r1.212.4.3 -r1.212.4.4 src/sys/kern/vfs_lookup.c cvs rdiff -u -r1.37 -r1.37.6.1 src/sys/sys/fstypes.h cvs rdiff -u -r1.47.2.4 -r1.47.2.5 src/sys/sys/namei.src 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_cache.c diff -u src/sys/kern/vfs_cache.c:1.126.2.8 src/sys/kern/vfs_cache.c:1.126.2.9 --- src/sys/kern/vfs_cache.c:1.126.2.8 Sat Jan 18 17:16:20 2020 +++ src/sys/kern/vfs_cache.c Sun Jan 19 21:19:25 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: vfs_cache.c,v 1.126.2.8 2020/01/18 17:16:20 ad Exp $ */ +/* $NetBSD: vfs_cache.c,v 1.126.2.9 2020/01/19 21:19:25 ad Exp $ */ /*- * Copyright (c) 2008, 2019, 2020 The NetBSD Foundation, Inc. @@ -148,7 +148,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: vfs_cache.c,v 1.126.2.8 2020/01/18 17:16:20 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: vfs_cache.c,v 1.126.2.9 2020/01/19 21:19:25 ad Exp $"); #define __NAMECACHE_PRIVATE #ifdef _KERNEL_OPT @@ -326,11 +326,15 @@ cache_key(const char *name, size_t nlen) KASSERT(nlen <= USHRT_MAX); key = hash32_buf(name, nlen, HASH32_STR_INIT); - return (key << 16) | nlen; + return (key << 32) | nlen; } /* - * Like memcmp() but tuned for small strings of equal length. + * Like bcmp() but tuned for the use case here which is: + * + * - always of equal length both sides + * - almost always the same string both sides + * - small strings */ static inline int cache_namecmp(struct namecache *nc, const char *name, size_t namelen) @@ -743,7 +747,8 @@ cache_lookup_linked(struct vnode *dvp, c * Returns 0 on success, -1 on cache miss, positive errno on failure. */ int -cache_revlookup(struct vnode *vp, struct vnode **dvpp, char **bpp, char *bufp) +cache_revlookup(struct vnode *vp, struct vnode **dvpp, char **bpp, char *bufp, +bool checkaccess, int perms) { struct nchnode *nn = VNODE_TO_VIMPL(vp)->vi_ncache; struct namecache *nc; @@ -757,6 +762,27 @@ cache_revlookup(struct vnode *vp, struct goto out; rw_enter(>nn_listlock, RW_READER); + if (checkaccess) { + /* + * Check if the user is allowed to see. NOTE: this is + * checking for access on the "wrong" directory. getcwd() + * wants to see that there is access on every component + * along the way, not that there is access to any individual + * component. + */ + KASSERT(nn->nn_mode != VNOVAL && nn->nn_uid != VNOVAL && + nn->nn_gid != VNOVAL); + error = kauth_authorize_vnode(curlwp->l_cred, + KAUTH_ACCESS_ACTION(VEXEC, vp->v_type, nn->nn_mode & + ALLPERMS), vp, NULL, genfs_can_access(vp->v_type, + nn->nn_mode & ALLPERMS, nn->nn_uid, nn->nn_gid, + perms, curlwp->l_cred)); + if (error != 0) { + rw_exit(>nn_listlock); + COUNT(ncs_denied); + return EACCES; + } + } TAILQ_FOREACH(nc, >nn_list, nc_list) { KASSERT(nc->nc_nn == nn); KASSERT(nc->nc_dnn != NULL); @@ -931,12 +957,14 @@ cache_set_id(struct vnode *dvp, mode_t m if (dvp->v_type == VDIR) { rw_enter(>nn_lock, RW_WRITER); + rw_enter(>nn_listlock, RW_WRITER); KASSERT(nn->nn_mode == VNOVAL); KASSERT(nn->nn_uid == VNOVAL); KASSERT(nn->nn_gid == VNOVAL); nn->nn_mode = mode; nn->nn_uid = uid; nn->nn_gid = gid; + rw_exit(>nn_listlock); rw_exit(>nn_lock); } } @@ -953,16 +981,30 @@ cache_update_id(struct vnode *dvp, mode_ if (dvp->v_type == VDIR) { rw_enter(>nn_lock, RW_WRITER); + rw_enter(>nn_listlock, RW_WRITER); if (nn->nn_mode != VNOVAL) { nn->nn_mode = mode; nn->nn_uid = uid; nn->nn_gid = gid; } + rw_exit(>nn_listlock); rw_exit(>nn_lock); } } /* + * Return true if we have identity for the given vnode. + */ +bool +cache_have_id(struct vnode *dvp) +{ + struct nchnode *nn =
CVS commit: [ad-namecache] src/sys/arch
Module Name:src Committed By: ad Date: Sun Jan 19 21:11:00 UTC 2020 Modified Files: src/sys/arch/amd64/include [ad-namecache]: rwlock.h src/sys/arch/i386/include [ad-namecache]: rwlock.h src/sys/arch/x86/include [ad-namecache]: rwlock.h Log Message: empty these; remove later. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.144.1 src/sys/arch/amd64/include/rwlock.h cvs rdiff -u -r1.2 -r1.2.144.1 src/sys/arch/i386/include/rwlock.h cvs rdiff -u -r1.6 -r1.6.2.1 src/sys/arch/x86/include/rwlock.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/amd64/include/rwlock.h diff -u src/sys/arch/amd64/include/rwlock.h:1.2 src/sys/arch/amd64/include/rwlock.h:1.2.144.1 --- src/sys/arch/amd64/include/rwlock.h:1.2 Fri Feb 9 21:55:01 2007 +++ src/sys/arch/amd64/include/rwlock.h Sun Jan 19 21:11:00 2020 @@ -1,3 +0,0 @@ -/* $NetBSD: rwlock.h,v 1.2 2007/02/09 21:55:01 ad Exp $ */ - -#include Index: src/sys/arch/i386/include/rwlock.h diff -u src/sys/arch/i386/include/rwlock.h:1.2 src/sys/arch/i386/include/rwlock.h:1.2.144.1 --- src/sys/arch/i386/include/rwlock.h:1.2 Fri Feb 9 21:55:05 2007 +++ src/sys/arch/i386/include/rwlock.h Sun Jan 19 21:10:59 2020 @@ -1,3 +0,0 @@ -/* $NetBSD: rwlock.h,v 1.2 2007/02/09 21:55:05 ad Exp $ */ - -#include Index: src/sys/arch/x86/include/rwlock.h diff -u src/sys/arch/x86/include/rwlock.h:1.6 src/sys/arch/x86/include/rwlock.h:1.6.2.1 --- src/sys/arch/x86/include/rwlock.h:1.6 Fri Nov 29 20:04:54 2019 +++ src/sys/arch/x86/include/rwlock.h Sun Jan 19 21:11:00 2020 @@ -1,37 +0,0 @@ -/* $NetBSD: rwlock.h,v 1.6 2019/11/29 20:04:54 riastradh Exp $ */ - -/*- - * Copyright (c) 2002, 2006 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by Jason R. Thorpe and Andrew Doran. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *notice, this list of conditions and the following disclaimer in the - *documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef _X86_RWLOCK_H_ -#define _X86_RWLOCK_H_ - -#define __HAVE_RW_STUBS 1 - -#endif /* _X86_RWLOCK_H_ */
CVS commit: [ad-namecache] src/sys/arch
Module Name:src Committed By: ad Date: Sun Jan 19 21:11:00 UTC 2020 Modified Files: src/sys/arch/amd64/include [ad-namecache]: rwlock.h src/sys/arch/i386/include [ad-namecache]: rwlock.h src/sys/arch/x86/include [ad-namecache]: rwlock.h Log Message: empty these; remove later. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.144.1 src/sys/arch/amd64/include/rwlock.h cvs rdiff -u -r1.2 -r1.2.144.1 src/sys/arch/i386/include/rwlock.h cvs rdiff -u -r1.6 -r1.6.2.1 src/sys/arch/x86/include/rwlock.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:08:30 UTC 2020 Modified Files: src/sys/arch/amd64/amd64 [ad-namecache]: genassym.cf lock_stubs.S src/sys/arch/i386/i386 [ad-namecache]: genassym.cf lock_stubs.S src/sys/kern [ad-namecache]: kern_rwlock.c kern_synch.c src/sys/sys [ad-namecache]: lwp.h Log Message: Adaptive rwlocks proposed on tech-kern and working well on this branch with vnode locks. To generate a diff of this commit: cvs rdiff -u -r1.80.2.1 -r1.80.2.2 src/sys/arch/amd64/amd64/genassym.cf cvs rdiff -u -r1.35 -r1.35.2.1 src/sys/arch/amd64/amd64/lock_stubs.S cvs rdiff -u -r1.117.2.1 -r1.117.2.2 src/sys/arch/i386/i386/genassym.cf cvs rdiff -u -r1.32 -r1.32.2.1 src/sys/arch/i386/i386/lock_stubs.S cvs rdiff -u -r1.59.2.2 -r1.59.2.3 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.334.2.1 -r1.334.2.2 src/sys/kern/kern_synch.c cvs rdiff -u -r1.192.2.1 -r1.192.2.2 src/sys/sys/lwp.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/amd64/amd64/genassym.cf diff -u src/sys/arch/amd64/amd64/genassym.cf:1.80.2.1 src/sys/arch/amd64/amd64/genassym.cf:1.80.2.2 --- src/sys/arch/amd64/amd64/genassym.cf:1.80.2.1 Fri Jan 17 21:47:22 2020 +++ src/sys/arch/amd64/amd64/genassym.cf Sun Jan 19 21:08:29 2020 @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.80.2.1 2020/01/17 21:47:22 ad Exp $ +# $NetBSD: genassym.cf,v 1.80.2.2 2020/01/19 21:08:29 ad Exp $ # # Copyright (c) 1998, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -78,7 +78,6 @@ include include include include -include include include include @@ -346,15 +345,6 @@ define MTX_IPL offsetof(struct kmutex, define MTX_LOCK offsetof(struct kmutex, u.s.mtxs_lock) define MTX_OWNER offsetof(struct kmutex, u.mtxa_owner) -define RW_OWNER offsetof(struct krwlock, rw_owner) -define RW_WRITE_LOCKED RW_WRITE_LOCKED -define RW_WRITE_WANTED RW_WRITE_WANTED -define RW_READ_INCR RW_READ_INCR -define RW_HAS_WAITERS RW_HAS_WAITERS -define RW_THREAD RW_THREAD -define RW_READER RW_READER -define RW_WRITER RW_WRITER - define EV_COUNT offsetof(struct evcnt, ev_count) define OPTERON_MSR_PASSCODE OPTERON_MSR_PASSCODE Index: src/sys/arch/amd64/amd64/lock_stubs.S diff -u src/sys/arch/amd64/amd64/lock_stubs.S:1.35 src/sys/arch/amd64/amd64/lock_stubs.S:1.35.2.1 --- src/sys/arch/amd64/amd64/lock_stubs.S:1.35 Sun Dec 8 20:00:56 2019 +++ src/sys/arch/amd64/amd64/lock_stubs.S Sun Jan 19 21:08:29 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: lock_stubs.S,v 1.35 2019/12/08 20:00:56 ad Exp $ */ +/* $NetBSD: lock_stubs.S,v 1.35.2.1 2020/01/19 21:08:29 ad Exp $ */ /* * Copyright (c) 2006, 2007, 2008, 2009 The NetBSD Foundation, Inc. @@ -185,126 +185,6 @@ ENTRY(mutex_spin_exit) END(mutex_spin_exit) -/* - * void rw_enter(krwlock_t *rwl, krw_t op); - * - * Acquire one hold on a RW lock. - */ -ENTRY(rw_enter) - cmpl $RW_READER, %esi - jne 2f - - /* - * Reader: this is the most common case. - */ - movq (%rdi), %rax -0: - testb $(RW_WRITE_LOCKED|RW_WRITE_WANTED), %al - jnz 3f - leaq RW_READ_INCR(%rax), %rdx - LOCK - cmpxchgq %rdx, (%rdi) - jnz 1f - RET -1: - jmp 0b - - /* - * Writer: if the compare-and-set fails, don't bother retrying. - */ -2: movq CPUVAR(CURLWP), %rcx - xorq %rax, %rax - orq $RW_WRITE_LOCKED, %rcx - LOCK - cmpxchgq %rcx, (%rdi) - jnz 3f - RET -3: - jmp _C_LABEL(rw_vector_enter) -END(rw_enter) - -/* - * void rw_exit(krwlock_t *rwl); - * - * Release one hold on a RW lock. - */ -ENTRY(rw_exit) - movq (%rdi), %rax - testb $RW_WRITE_LOCKED, %al - jnz 2f - - /* - * Reader - */ -0: testb $RW_HAS_WAITERS, %al - jnz 3f - cmpq $RW_READ_INCR, %rax - jb 3f - leaq -RW_READ_INCR(%rax), %rdx - LOCK - cmpxchgq %rdx, (%rdi) - jnz 1f - ret -1: - jmp 0b - - /* - * Writer - */ -2: leaq -RW_WRITE_LOCKED(%rax), %rdx - subq CPUVAR(CURLWP), %rdx - jnz 3f - LOCK - cmpxchgq %rdx, (%rdi) - jnz 3f - ret - -3: jmp _C_LABEL(rw_vector_exit) -END(rw_exit) - -/* - * int rw_tryenter(krwlock_t *rwl, krw_t op); - * - * Try to acquire one hold on a RW lock. - */ -ENTRY(rw_tryenter) - cmpl $RW_READER, %esi - jne 2f - - /* - * Reader: this is the most common case. - */ - movq (%rdi), %rax -0: - testb $(RW_WRITE_LOCKED|RW_WRITE_WANTED), %al - jnz 4f - leaq RW_READ_INCR(%rax), %rdx - LOCK - cmpxchgq %rdx, (%rdi) - jnz 1f - movl %edx, %eax /* nonzero */ - RET -1: - jmp 0b - - /* - * Writer: if the compare-and-set fails, don't bother retrying. - */ -2: movq CPUVAR(CURLWP), %rcx - xorq %rax, %rax - orq $RW_WRITE_LOCKED, %rcx - LOCK - cmpxchgq %rcx, (%rdi) - movl $0, %eax - setz %al -3: - RET - ret -4: - xorl %eax, %eax - jmp 3b -END(rw_tryenter) - #endif /* LOCKDEBUG */ /* Index: src/sys/arch/i386/i386/genassym.cf diff -u src/sys/arch/i386/i386/genassym.cf:1.117.2.1 src/sys/arch/i386/i386/genassym.cf:1.117.2.2 --- src/sys/arch/i386/i386/genassym.cf:1.117.2.1 Fri Jan 17 21:47:25 2020 +++ src/sys/arch/i386/i386/genassym.cf Sun
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 21:08:30 UTC 2020 Modified Files: src/sys/arch/amd64/amd64 [ad-namecache]: genassym.cf lock_stubs.S src/sys/arch/i386/i386 [ad-namecache]: genassym.cf lock_stubs.S src/sys/kern [ad-namecache]: kern_rwlock.c kern_synch.c src/sys/sys [ad-namecache]: lwp.h Log Message: Adaptive rwlocks proposed on tech-kern and working well on this branch with vnode locks. To generate a diff of this commit: cvs rdiff -u -r1.80.2.1 -r1.80.2.2 src/sys/arch/amd64/amd64/genassym.cf cvs rdiff -u -r1.35 -r1.35.2.1 src/sys/arch/amd64/amd64/lock_stubs.S cvs rdiff -u -r1.117.2.1 -r1.117.2.2 src/sys/arch/i386/i386/genassym.cf cvs rdiff -u -r1.32 -r1.32.2.1 src/sys/arch/i386/i386/lock_stubs.S cvs rdiff -u -r1.59.2.2 -r1.59.2.3 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.334.2.1 -r1.334.2.2 src/sys/kern/kern_synch.c cvs rdiff -u -r1.192.2.1 -r1.192.2.2 src/sys/sys/lwp.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/netinet
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:51:13 UTC 2020 Modified Files: src/sys/netinet: sctp_pcb.c sctp_pcb.h sctputil.c sctputil.h Log Message: Replace kooky sctp random number generation by cprng_strong32(). To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/netinet/sctp_pcb.c cvs rdiff -u -r1.2 -r1.3 src/sys/netinet/sctp_pcb.h \ src/sys/netinet/sctputil.h cvs rdiff -u -r1.15 -r1.16 src/sys/netinet/sctputil.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/netinet/sctp_pcb.c diff -u src/sys/netinet/sctp_pcb.c:1.19 src/sys/netinet/sctp_pcb.c:1.20 --- src/sys/netinet/sctp_pcb.c:1.19 Thu Dec 26 04:44:10 2019 +++ src/sys/netinet/sctp_pcb.c Sun Jan 19 20:51:13 2020 @@ -1,5 +1,5 @@ /* $KAME: sctp_pcb.c,v 1.39 2005/06/16 18:29:25 jinmei Exp $ */ -/* $NetBSD: sctp_pcb.c,v 1.19 2019/12/26 04:44:10 msaitoh Exp $ */ +/* $NetBSD: sctp_pcb.c,v 1.20 2020/01/19 20:51:13 riastradh Exp $ */ /* * Copyright (c) 2001, 2002, 2003, 2004 Cisco Systems, Inc. @@ -33,7 +33,7 @@ * SUCH DAMAGE. */ #include -__KERNEL_RCSID(0, "$NetBSD: sctp_pcb.c,v 1.19 2019/12/26 04:44:10 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sctp_pcb.c,v 1.20 2020/01/19 20:51:13 riastradh Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -1465,29 +1465,6 @@ sctp_inpcb_alloc(struct socket *so) /* Add adaption cookie */ m->adaption_layer_indicator = 0x504C5253; - /* seed random number generator */ - m->random_counter = 1; - m->store_at = SCTP_SIGNATURE_SIZE; -#if NRND > 0 - rnd_extract_data(m->random_numbers, sizeof(m->random_numbers), - RND_EXTRACT_ANY); -#else - { - u_int32_t *ranm, *ranp; - ranp = (u_int32_t *)>random_numbers; - ranm = ranp + (SCTP_SIGNATURE_ALOC_SIZE/sizeof(u_int32_t)); - if ((u_long)ranp % 4) { - /* not a even boundary? */ - ranp = (u_int32_t *)SCTP_SIZE32((u_long)ranp); - } - while (ranp < ranm) { - *ranp = random(); - ranp++; - } - } -#endif - sctp_fill_random_store(m); - /* Minimum cookie size */ m->size_of_a_cookie = (sizeof(struct sctp_init_msg) * 2) + sizeof(struct sctp_state_cookie); Index: src/sys/netinet/sctp_pcb.h diff -u src/sys/netinet/sctp_pcb.h:1.2 src/sys/netinet/sctp_pcb.h:1.3 --- src/sys/netinet/sctp_pcb.h:1.2 Sat Jun 8 23:23:34 2019 +++ src/sys/netinet/sctp_pcb.h Sun Jan 19 20:51:13 2020 @@ -1,5 +1,5 @@ /* $KAME: sctp_pcb.h,v 1.21 2005/07/16 01:18:47 suz Exp $ */ -/* $NetBSD: sctp_pcb.h,v 1.2 2019/06/08 23:23:34 rjs Exp $ */ +/* $NetBSD: sctp_pcb.h,v 1.3 2020/01/19 20:51:13 riastradh Exp $ */ #ifndef __SCTP_PCB_H__ #define __SCTP_PCB_H__ @@ -250,11 +250,6 @@ struct sctp_pcb { uint16_t pre_open_stream_count; uint16_t max_open_streams_intome; - /* random number generator */ - uint32_t random_counter; - uint8_t random_numbers[SCTP_SIGNATURE_ALOC_SIZE]; - uint8_t random_store[SCTP_SIGNATURE_ALOC_SIZE]; - /* * This timer is kept running per endpoint. When it fires it * will change the secret key. The default is once a hour @@ -265,7 +260,6 @@ struct sctp_pcb { int auto_close_time; uint32_t initial_sequence_debug; uint32_t adaption_layer_indicator; - char store_at; uint8_t max_burst; char current_secret_number; char last_secret_number; @@ -447,7 +441,7 @@ void SCTP_INP_INFO_WLOCK(void); /* The INP locks we will use for locking an SCTP endpoint, so for * example if we want to change something at the endpoint level for - * example random_store or cookie secrets we lock the INP level. + * example cookie secrets we lock the INP level. */ #define SCTP_INP_LOCK_INIT(_inp) \ mtx_init(&(_inp)->inp_mtx, "sctp", "inp", MTX_DEF | MTX_DUPOK) @@ -556,7 +550,7 @@ void SCTP_INP_WLOCK(struct sctp_inpcb *) /* The INP locks we will use for locking an SCTP endpoint, so for * example if we want to change something at the endpoint level for - * example random_store or cookie secrets we lock the INP level. + * example cookie secrets we lock the INP level. */ #define SCTP_INP_LOCK_INIT(_inp) \ mutex_init(&(_inp)->inp_mtx, MUTEX_DEFAULT, IPL_NET) Index: src/sys/netinet/sctputil.h diff -u src/sys/netinet/sctputil.h:1.2 src/sys/netinet/sctputil.h:1.3 --- src/sys/netinet/sctputil.h:1.2 Sun May 22 23:04:27 2016 +++ src/sys/netinet/sctputil.h Sun Jan 19 20:51:13 2020 @@ -1,5 +1,5 @@ /* $KAME: sctputil.h,v 1.15 2005/03/06 16:04:19 itojun Exp $ */ -/* $NetBSD: sctputil.h,v 1.2 2016/05/22 23:04:27 rjs Exp $ */ +/* $NetBSD: sctputil.h,v 1.3 2020/01/19 20:51:13 riastradh Exp $ */ #ifndef __SCTPUTIL_H__ #define __SCTPUTIL_H__ @@ -141,8 +141,6 @@ u_int32_t sctp_select_a_tag(struct sctp_ int sctp_init_asoc(struct sctp_inpcb *, struct sctp_association *, int, uint32_t); -void sctp_fill_random_store(struct sctp_pcb *); - int sctp_timer_start(int, struct sctp_inpcb *, struct sctp_tcb *, struct sctp_nets *); Index: src/sys/netinet/sctputil.c diff -u src/sys/netinet/sctputil.c:1.15
CVS commit: src/sys/netinet
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:51:13 UTC 2020 Modified Files: src/sys/netinet: sctp_pcb.c sctp_pcb.h sctputil.c sctputil.h Log Message: Replace kooky sctp random number generation by cprng_strong32(). To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/sys/netinet/sctp_pcb.c cvs rdiff -u -r1.2 -r1.3 src/sys/netinet/sctp_pcb.h \ src/sys/netinet/sctputil.h cvs rdiff -u -r1.15 -r1.16 src/sys/netinet/sctputil.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:41:19 UTC 2020 Modified Files: src/distrib/sets/lists/base: mi src/distrib/sets/lists/comp: mi src/distrib/sets/lists/man: mi src/etc: MAKEDEV.tmpl src/etc/mtree: NetBSD.dist.base src/share/man/man4: Makefile src/sys/arch/amd64/conf: ALL src/sys/arch/i386/conf: ALL src/sys/conf: files majors src/sys/dev: Makefile src/sys/modules: Makefile Removed Files: src/share/man/man4: filemon.4 src/sys/dev/filemon: Makefile filemon.c filemon.h filemon_wrapper.c mknod-sh src/sys/modules/filemon: Makefile filemon.ioconf Log Message: Remove filemon(4). Discussed on tech-kern: https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html This was never (intentionally) enabled by default, and the design has some shortcomings. You can get mostly the same results with ktrace, as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead of filemon for make's meta mode. If applications require higher performance than ktrace, or nesting that ktrace doesn't support, we might consider adding something back into the vfs system calls themselves, without hijacking the syscall table. (Might want a more reliable output format too, e.g. one that can handle newlines in file names.) To generate a diff of this commit: cvs rdiff -u -r1.1225 -r1.1226 src/distrib/sets/lists/base/mi cvs rdiff -u -r1.2303 -r1.2304 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.1673 -r1.1674 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.212 -r1.213 src/etc/MAKEDEV.tmpl cvs rdiff -u -r1.208 -r1.209 src/etc/mtree/NetBSD.dist.base cvs rdiff -u -r1.697 -r1.698 src/share/man/man4/Makefile cvs rdiff -u -r1.21 -r0 src/share/man/man4/filemon.4 cvs rdiff -u -r1.139 -r1.140 src/sys/arch/amd64/conf/ALL cvs rdiff -u -r1.483 -r1.484 src/sys/arch/i386/conf/ALL cvs rdiff -u -r1.1251 -r1.1252 src/sys/conf/files cvs rdiff -u -r1.92 -r1.93 src/sys/conf/majors cvs rdiff -u -r1.43 -r1.44 src/sys/dev/Makefile cvs rdiff -u -r1.3 -r0 src/sys/dev/filemon/Makefile \ src/sys/dev/filemon/mknod-sh cvs rdiff -u -r1.33 -r0 src/sys/dev/filemon/filemon.c cvs rdiff -u -r1.11 -r0 src/sys/dev/filemon/filemon.h cvs rdiff -u -r1.14 -r0 src/sys/dev/filemon/filemon_wrapper.c cvs rdiff -u -r1.235 -r1.236 src/sys/modules/Makefile cvs rdiff -u -r1.6 -r0 src/sys/modules/filemon/Makefile cvs rdiff -u -r1.3 -r0 src/sys/modules/filemon/filemon.ioconf 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/base/mi diff -u src/distrib/sets/lists/base/mi:1.1225 src/distrib/sets/lists/base/mi:1.1226 --- src/distrib/sets/lists/base/mi:1.1225 Sun Jan 19 06:55:22 2020 +++ src/distrib/sets/lists/base/mi Sun Jan 19 20:41:17 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1225 2020/01/19 06:55:22 thorpej Exp $ +# $NetBSD: mi,v 1.1226 2020/01/19 20:41:17 riastradh Exp $ # # Note: Don't delete entries from here - mark them as "obsolete" instead, # unless otherwise stated below. @@ -1114,7 +1114,7 @@ ./usr/include/dev/dmover base-c-usr ./usr/include/dev/dtvbase-c-usr ./usr/include/dev/eisabase-obsolete obsolete -./usr/include/dev/filemon base-c-usr +./usr/include/dev/filemon base-obsolete obsolete ./usr/include/dev/hdaudio base-c-usr ./usr/include/dev/hdmicec base-c-usr ./usr/include/dev/hidbase-c-usr Index: src/distrib/sets/lists/comp/mi diff -u src/distrib/sets/lists/comp/mi:1.2303 src/distrib/sets/lists/comp/mi:1.2304 --- src/distrib/sets/lists/comp/mi:1.2303 Sun Jan 19 20:00:36 2020 +++ src/distrib/sets/lists/comp/mi Sun Jan 19 20:41:17 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.2303 2020/01/19 20:00:36 thorpej Exp $ +# $NetBSD: mi,v 1.2304 2020/01/19 20:41:17 riastradh Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. ./etc/mtree/set.compcomp-sys-root @@ -411,7 +411,7 @@ ./usr/include/dev/eisa/eisadevs_data.h comp-obsolete obsolete ./usr/include/dev/eisa/eisareg.h comp-obsolete obsolete ./usr/include/dev/eisa/eisavar.h comp-obsolete obsolete -./usr/include/dev/filemon/filemon.h comp-c-include +./usr/include/dev/filemon/filemon.h comp-obsolete obsolete ./usr/include/dev/fssvar.h comp-c-include ./usr/include/dev/hdaudio/hdaudioio.h comp-c-include ./usr/include/dev/hdaudio/hdaudioreg.h comp-c-include Index: src/distrib/sets/lists/man/mi diff -u src/distrib/sets/lists/man/mi:1.1673 src/distrib/sets/lists/man/mi:1.1674 --- src/distrib/sets/lists/man/mi:1.1673 Sun Jan 19 20:00:36 2020 +++ src/distrib/sets/lists/man/mi Sun Jan 19 20:41:17 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1673 2020/01/19 20:00:36 thorpej Exp $ +# $NetBSD: mi,v 1.1674 2020/01/19 20:41:17 riastradh Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -1105,7 +1105,7 @@ ./usr/share/man/cat4/fast_ipsec.0
CVS commit: src
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:41:19 UTC 2020 Modified Files: src/distrib/sets/lists/base: mi src/distrib/sets/lists/comp: mi src/distrib/sets/lists/man: mi src/etc: MAKEDEV.tmpl src/etc/mtree: NetBSD.dist.base src/share/man/man4: Makefile src/sys/arch/amd64/conf: ALL src/sys/arch/i386/conf: ALL src/sys/conf: files majors src/sys/dev: Makefile src/sys/modules: Makefile Removed Files: src/share/man/man4: filemon.4 src/sys/dev/filemon: Makefile filemon.c filemon.h filemon_wrapper.c mknod-sh src/sys/modules/filemon: Makefile filemon.ioconf Log Message: Remove filemon(4). Discussed on tech-kern: https://mail-index.NetBSD.org/tech-kern/2020/01/13/msg025938.html This was never (intentionally) enabled by default, and the design has some shortcomings. You can get mostly the same results with ktrace, as in usr.bin/make/filemon/filemon_ktrace.c which is now used instead of filemon for make's meta mode. If applications require higher performance than ktrace, or nesting that ktrace doesn't support, we might consider adding something back into the vfs system calls themselves, without hijacking the syscall table. (Might want a more reliable output format too, e.g. one that can handle newlines in file names.) To generate a diff of this commit: cvs rdiff -u -r1.1225 -r1.1226 src/distrib/sets/lists/base/mi cvs rdiff -u -r1.2303 -r1.2304 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.1673 -r1.1674 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.212 -r1.213 src/etc/MAKEDEV.tmpl cvs rdiff -u -r1.208 -r1.209 src/etc/mtree/NetBSD.dist.base cvs rdiff -u -r1.697 -r1.698 src/share/man/man4/Makefile cvs rdiff -u -r1.21 -r0 src/share/man/man4/filemon.4 cvs rdiff -u -r1.139 -r1.140 src/sys/arch/amd64/conf/ALL cvs rdiff -u -r1.483 -r1.484 src/sys/arch/i386/conf/ALL cvs rdiff -u -r1.1251 -r1.1252 src/sys/conf/files cvs rdiff -u -r1.92 -r1.93 src/sys/conf/majors cvs rdiff -u -r1.43 -r1.44 src/sys/dev/Makefile cvs rdiff -u -r1.3 -r0 src/sys/dev/filemon/Makefile \ src/sys/dev/filemon/mknod-sh cvs rdiff -u -r1.33 -r0 src/sys/dev/filemon/filemon.c cvs rdiff -u -r1.11 -r0 src/sys/dev/filemon/filemon.h cvs rdiff -u -r1.14 -r0 src/sys/dev/filemon/filemon_wrapper.c cvs rdiff -u -r1.235 -r1.236 src/sys/modules/Makefile cvs rdiff -u -r1.6 -r0 src/sys/modules/filemon/Makefile cvs rdiff -u -r1.3 -r0 src/sys/modules/filemon/filemon.ioconf Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.bin/make/filemon
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:22:57 UTC 2020 Modified Files: src/usr.bin/make/filemon: filemon_ktrace.c Log Message: Missed a spot -- define _KERNTYPES to get register_t. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/usr.bin/make/filemon/filemon_ktrace.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.bin/make/filemon
Module Name:src Committed By: riastradh Date: Sun Jan 19 20:22:57 UTC 2020 Modified Files: src/usr.bin/make/filemon: filemon_ktrace.c Log Message: Missed a spot -- define _KERNTYPES to get register_t. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/usr.bin/make/filemon/filemon_ktrace.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/make/filemon/filemon_ktrace.c diff -u src/usr.bin/make/filemon/filemon_ktrace.c:1.1 src/usr.bin/make/filemon/filemon_ktrace.c:1.2 --- src/usr.bin/make/filemon/filemon_ktrace.c:1.1 Sun Jan 19 19:49:37 2020 +++ src/usr.bin/make/filemon/filemon_ktrace.c Sun Jan 19 20:22:57 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: filemon_ktrace.c,v 1.1 2020/01/19 19:49:37 riastradh Exp $ */ +/* $NetBSD: filemon_ktrace.c,v 1.2 2020/01/19 20:22:57 riastradh Exp $ */ /*- * Copyright (c) 2019 The NetBSD Foundation, Inc. @@ -29,6 +29,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#define _KERNTYPES /* register_t */ + #include "filemon.h" #include
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:02:24 UTC 2020 Modified Files: src/doc: TODO.smpnet Log Message: Token Ring has been removed. To generate a diff of this commit: cvs rdiff -u -r1.32 -r1.33 src/doc/TODO.smpnet Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/TODO.smpnet diff -u src/doc/TODO.smpnet:1.32 src/doc/TODO.smpnet:1.33 --- src/doc/TODO.smpnet:1.32 Sun Jan 19 16:58:22 2020 +++ src/doc/TODO.smpnet Sun Jan 19 20:02:23 2020 @@ -1,4 +1,4 @@ -$NetBSD: TODO.smpnet,v 1.32 2020/01/19 16:58:22 thorpej Exp $ +$NetBSD: TODO.smpnet,v 1.33 2020/01/19 20:02:23 thorpej Exp $ MP-safe components == @@ -65,7 +65,6 @@ Unprotected ones - FDDI (if_fddisubr.c) - IEEE 1394 (if_ieee1394subr.c) - IEEE 802.11 (ieee80211(4)) - - Token ring (if_tokensubr.c) - Layer 3 - IPSELSRC - MROUTING
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:01:49 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Note removal of Token Ring support. To generate a diff of this commit: cvs rdiff -u -r1.2639 -r1.2640 src/doc/CHANGES Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:02:24 UTC 2020 Modified Files: src/doc: TODO.smpnet Log Message: Token Ring has been removed. To generate a diff of this commit: cvs rdiff -u -r1.32 -r1.33 src/doc/TODO.smpnet Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:01:49 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Note removal of Token Ring support. To generate a diff of this commit: cvs rdiff -u -r1.2639 -r1.2640 src/doc/CHANGES 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 diff -u src/doc/CHANGES:1.2639 src/doc/CHANGES:1.2640 --- src/doc/CHANGES:1.2639 Sun Jan 19 17:54:19 2020 +++ src/doc/CHANGES Sun Jan 19 20:01:49 2020 @@ -1,4 +1,4 @@ -# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2639 $> +# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2640 $> # # # [Note: This file does not mention every change made to the NetBSD source tree. @@ -101,3 +101,4 @@ Changes from NetBSD 9.0 to NetBSD 10.0: strip(4): Removed from the tree. [thorpej 20200118] hippi and esh(4): Removed from the tree. [thorpej 20200118] de(4): Removed from the tree. [thorpej 20200119] + token ring and tr(4): Removed from the tree. [20200119]
CVS commit: src
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:00:38 UTC 2020 Modified Files: src/distrib/sets/lists/comp: mi src/distrib/sets/lists/man: mi src/share/man/man4: Makefile src/sys/arch/amd64/conf: ALL GENERIC src/sys/arch/evbarm/conf: LUBBOCK MPCSA_GENERIC TWINTAIL src/sys/arch/evbppc/conf: OPENBLOCKS266_OPT src/sys/arch/i386/conf: ALL GENERIC GENERIC_PS2TINY INSTALL_FLOPPY src/sys/arch/sparc64/conf: GENERIC src/sys/conf: files src/sys/dev/isa: files.isa src/sys/dev/isapnp: files.isapnp src/sys/dev/mca: files.mca src/sys/dev/pcmcia: files.pcmcia src/sys/net: Makefile files.net if.c src/sys/netinet: if_arp.c ip_carp.c Removed Files: src/share/man/man4: tr.4 src/sys/dev/ic: tropic.c tropicreg.h tropicvar.h src/sys/dev/isa: if_tr_isa.c if_tribm_isa.c if_trtcm_isa.c src/sys/dev/isapnp: if_tr_isapnp.c src/sys/dev/mca: if_tr_mca.c src/sys/dev/pcmcia: if_tr_pcmcia.c src/sys/net: if_token.h if_tokensubr.c Log Message: Remove Token Ring support. To generate a diff of this commit: cvs rdiff -u -r1.2302 -r1.2303 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.1672 -r1.1673 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.696 -r1.697 src/share/man/man4/Makefile cvs rdiff -u -r1.15 -r0 src/share/man/man4/tr.4 cvs rdiff -u -r1.138 -r1.139 src/sys/arch/amd64/conf/ALL cvs rdiff -u -r1.556 -r1.557 src/sys/arch/amd64/conf/GENERIC cvs rdiff -u -r1.60 -r1.61 src/sys/arch/evbarm/conf/LUBBOCK cvs rdiff -u -r1.68 -r1.69 src/sys/arch/evbarm/conf/MPCSA_GENERIC cvs rdiff -u -r1.76 -r1.77 src/sys/arch/evbarm/conf/TWINTAIL cvs rdiff -u -r1.27 -r1.28 src/sys/arch/evbppc/conf/OPENBLOCKS266_OPT cvs rdiff -u -r1.482 -r1.483 src/sys/arch/i386/conf/ALL cvs rdiff -u -r1.1220 -r1.1221 src/sys/arch/i386/conf/GENERIC cvs rdiff -u -r1.80 -r1.81 src/sys/arch/i386/conf/GENERIC_PS2TINY cvs rdiff -u -r1.51 -r1.52 src/sys/arch/i386/conf/INSTALL_FLOPPY cvs rdiff -u -r1.220 -r1.221 src/sys/arch/sparc64/conf/GENERIC cvs rdiff -u -r1.1250 -r1.1251 src/sys/conf/files cvs rdiff -u -r1.53 -r0 src/sys/dev/ic/tropic.c cvs rdiff -u -r1.6 -r0 src/sys/dev/ic/tropicreg.h cvs rdiff -u -r1.14 -r0 src/sys/dev/ic/tropicvar.h cvs rdiff -u -r1.174 -r1.175 src/sys/dev/isa/files.isa cvs rdiff -u -r1.26 -r0 src/sys/dev/isa/if_tr_isa.c cvs rdiff -u -r1.14 -r0 src/sys/dev/isa/if_tribm_isa.c cvs rdiff -u -r1.20 -r0 src/sys/dev/isa/if_trtcm_isa.c cvs rdiff -u -r1.39 -r1.40 src/sys/dev/isapnp/files.isapnp cvs rdiff -u -r1.22 -r0 src/sys/dev/isapnp/if_tr_isapnp.c cvs rdiff -u -r1.22 -r1.23 src/sys/dev/mca/files.mca cvs rdiff -u -r1.24 -r0 src/sys/dev/mca/if_tr_mca.c cvs rdiff -u -r1.59 -r1.60 src/sys/dev/pcmcia/files.pcmcia cvs rdiff -u -r1.29 -r0 src/sys/dev/pcmcia/if_tr_pcmcia.c cvs rdiff -u -r1.39 -r1.40 src/sys/net/Makefile cvs rdiff -u -r1.22 -r1.23 src/sys/net/files.net cvs rdiff -u -r1.466 -r1.467 src/sys/net/if.c cvs rdiff -u -r1.17 -r0 src/sys/net/if_token.h cvs rdiff -u -r1.84 -r0 src/sys/net/if_tokensubr.c cvs rdiff -u -r1.289 -r1.290 src/sys/netinet/if_arp.c cvs rdiff -u -r1.105 -r1.106 src/sys/netinet/ip_carp.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src
Module Name:src Committed By: thorpej Date: Sun Jan 19 20:00:38 UTC 2020 Modified Files: src/distrib/sets/lists/comp: mi src/distrib/sets/lists/man: mi src/share/man/man4: Makefile src/sys/arch/amd64/conf: ALL GENERIC src/sys/arch/evbarm/conf: LUBBOCK MPCSA_GENERIC TWINTAIL src/sys/arch/evbppc/conf: OPENBLOCKS266_OPT src/sys/arch/i386/conf: ALL GENERIC GENERIC_PS2TINY INSTALL_FLOPPY src/sys/arch/sparc64/conf: GENERIC src/sys/conf: files src/sys/dev/isa: files.isa src/sys/dev/isapnp: files.isapnp src/sys/dev/mca: files.mca src/sys/dev/pcmcia: files.pcmcia src/sys/net: Makefile files.net if.c src/sys/netinet: if_arp.c ip_carp.c Removed Files: src/share/man/man4: tr.4 src/sys/dev/ic: tropic.c tropicreg.h tropicvar.h src/sys/dev/isa: if_tr_isa.c if_tribm_isa.c if_trtcm_isa.c src/sys/dev/isapnp: if_tr_isapnp.c src/sys/dev/mca: if_tr_mca.c src/sys/dev/pcmcia: if_tr_pcmcia.c src/sys/net: if_token.h if_tokensubr.c Log Message: Remove Token Ring support. To generate a diff of this commit: cvs rdiff -u -r1.2302 -r1.2303 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.1672 -r1.1673 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.696 -r1.697 src/share/man/man4/Makefile cvs rdiff -u -r1.15 -r0 src/share/man/man4/tr.4 cvs rdiff -u -r1.138 -r1.139 src/sys/arch/amd64/conf/ALL cvs rdiff -u -r1.556 -r1.557 src/sys/arch/amd64/conf/GENERIC cvs rdiff -u -r1.60 -r1.61 src/sys/arch/evbarm/conf/LUBBOCK cvs rdiff -u -r1.68 -r1.69 src/sys/arch/evbarm/conf/MPCSA_GENERIC cvs rdiff -u -r1.76 -r1.77 src/sys/arch/evbarm/conf/TWINTAIL cvs rdiff -u -r1.27 -r1.28 src/sys/arch/evbppc/conf/OPENBLOCKS266_OPT cvs rdiff -u -r1.482 -r1.483 src/sys/arch/i386/conf/ALL cvs rdiff -u -r1.1220 -r1.1221 src/sys/arch/i386/conf/GENERIC cvs rdiff -u -r1.80 -r1.81 src/sys/arch/i386/conf/GENERIC_PS2TINY cvs rdiff -u -r1.51 -r1.52 src/sys/arch/i386/conf/INSTALL_FLOPPY cvs rdiff -u -r1.220 -r1.221 src/sys/arch/sparc64/conf/GENERIC cvs rdiff -u -r1.1250 -r1.1251 src/sys/conf/files cvs rdiff -u -r1.53 -r0 src/sys/dev/ic/tropic.c cvs rdiff -u -r1.6 -r0 src/sys/dev/ic/tropicreg.h cvs rdiff -u -r1.14 -r0 src/sys/dev/ic/tropicvar.h cvs rdiff -u -r1.174 -r1.175 src/sys/dev/isa/files.isa cvs rdiff -u -r1.26 -r0 src/sys/dev/isa/if_tr_isa.c cvs rdiff -u -r1.14 -r0 src/sys/dev/isa/if_tribm_isa.c cvs rdiff -u -r1.20 -r0 src/sys/dev/isa/if_trtcm_isa.c cvs rdiff -u -r1.39 -r1.40 src/sys/dev/isapnp/files.isapnp cvs rdiff -u -r1.22 -r0 src/sys/dev/isapnp/if_tr_isapnp.c cvs rdiff -u -r1.22 -r1.23 src/sys/dev/mca/files.mca cvs rdiff -u -r1.24 -r0 src/sys/dev/mca/if_tr_mca.c cvs rdiff -u -r1.59 -r1.60 src/sys/dev/pcmcia/files.pcmcia cvs rdiff -u -r1.29 -r0 src/sys/dev/pcmcia/if_tr_pcmcia.c cvs rdiff -u -r1.39 -r1.40 src/sys/net/Makefile cvs rdiff -u -r1.22 -r1.23 src/sys/net/files.net cvs rdiff -u -r1.466 -r1.467 src/sys/net/if.c cvs rdiff -u -r1.17 -r0 src/sys/net/if_token.h cvs rdiff -u -r1.84 -r0 src/sys/net/if_tokensubr.c cvs rdiff -u -r1.289 -r1.290 src/sys/netinet/if_arp.c cvs rdiff -u -r1.105 -r1.106 src/sys/netinet/ip_carp.c 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.2302 src/distrib/sets/lists/comp/mi:1.2303 --- src/distrib/sets/lists/comp/mi:1.2302 Sun Jan 19 10:50:25 2020 +++ src/distrib/sets/lists/comp/mi Sun Jan 19 20:00:36 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.2302 2020/01/19 10:50:25 martin Exp $ +# $NetBSD: mi,v 1.2303 2020/01/19 20:00:36 thorpej Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. ./etc/mtree/set.compcomp-sys-root @@ -2366,7 +2366,7 @@ ./usr/include/net/if_stf.h comp-c-include ./usr/include/net/if_stripvar.h comp-obsolete obsolete ./usr/include/net/if_tap.h comp-c-include -./usr/include/net/if_token.h comp-c-include +./usr/include/net/if_token.h comp-obsolete obsolete ./usr/include/net/if_tun.h comp-c-include ./usr/include/net/if_types.h comp-c-include ./usr/include/net/if_vlanvar.h comp-c-include Index: src/distrib/sets/lists/man/mi diff -u src/distrib/sets/lists/man/mi:1.1672 src/distrib/sets/lists/man/mi:1.1673 --- src/distrib/sets/lists/man/mi:1.1672 Sun Jan 19 17:53:15 2020 +++ src/distrib/sets/lists/man/mi Sun Jan 19 20:00:36 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1672 2020/01/19 17:53:15 thorpej Exp $ +# $NetBSD: mi,v 1.1673 2020/01/19 20:00:36 thorpej Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -1845,7 +1845,7 @@ ./usr/share/man/cat4/tprof.0 man-sys-catman .cat ./usr/share/man/cat4/tps65217pmic.0 man-sys-catman .cat ./usr/share/man/cat4/tqphy.0 man-sys-catman .cat -./usr/share/man/cat4/tr.0 man-sys-catman .cat +./usr/share/man/cat4/tr.0 man-obsolete
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:50:54 UTC 2020 Modified Files: src/usr.bin/make: Makefile Log Message: Tweak makefile for USE_FILEMON=dev, from sjg. To generate a diff of this commit: cvs rdiff -u -r1.67 -r1.68 src/usr.bin/make/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:50:54 UTC 2020 Modified Files: src/usr.bin/make: Makefile Log Message: Tweak makefile for USE_FILEMON=dev, from sjg. To generate a diff of this commit: cvs rdiff -u -r1.67 -r1.68 src/usr.bin/make/Makefile 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/make/Makefile diff -u src/usr.bin/make/Makefile:1.67 src/usr.bin/make/Makefile:1.68 --- src/usr.bin/make/Makefile:1.67 Sun Jan 19 19:49:36 2020 +++ src/usr.bin/make/Makefile Sun Jan 19 19:50:54 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.67 2020/01/19 19:49:36 riastradh Exp $ +# $NetBSD: Makefile,v 1.68 2020/01/19 19:50:54 riastradh Exp $ # @(#)Makefile 5.2 (Berkeley) 12/28/90 PROG= make @@ -15,15 +15,27 @@ SRCS += lstPrev.c USE_META ?= yes .if ${USE_META:tl} != "no" + SRCS+= meta.c CPPFLAGS+= -DUSE_META + USE_FILEMON ?= ktrace .if ${USE_FILEMON:tl} != "no" + .PATH: ${.CURDIR}/filemon SRCS+= filemon_${USE_FILEMON}.c CPPFLAGS+= -DUSE_FILEMON + +.if ${USE_FILEMON} == "dev" +FILEMON_H ?= /usr/include/dev/filemon/filemon.h +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h" +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H} .endif -.endif +.endif# USE_FILEMON == dev + +.endif# USE_FILEMON + +.endif# USE_META .PATH: ${.CURDIR}/lst.lib SUBDIR.roff+= PSD.doc
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:49:37 UTC 2020 Modified Files: src/usr.bin/make: Makefile meta.c Added Files: src/usr.bin/make/filemon: filemon.h filemon_dev.c filemon_ktrace.c Removed Files: src/usr.bin/make: filemon.c filemon.h Log Message: Per sjg's suggestion, split filemon API into separate back ends. By default we use the ktrace back end, but the /dev/filemon back end is available as a compile-time option, by setting USE_FILEMON=dev in make. sjg raised concerns about ktrace performance and would like to continue using /dev/filemon on FreeBSD (which has seen more maintenance kernel-side) without forking make. To generate a diff of this commit: cvs rdiff -u -r1.66 -r1.67 src/usr.bin/make/Makefile cvs rdiff -u -r1.1 -r0 src/usr.bin/make/filemon.c src/usr.bin/make/filemon.h cvs rdiff -u -r1.74 -r1.75 src/usr.bin/make/meta.c cvs rdiff -u -r0 -r1.1 src/usr.bin/make/filemon/filemon.h \ src/usr.bin/make/filemon/filemon_dev.c \ src/usr.bin/make/filemon/filemon_ktrace.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/make/Makefile diff -u src/usr.bin/make/Makefile:1.66 src/usr.bin/make/Makefile:1.67 --- src/usr.bin/make/Makefile:1.66 Sun Jan 19 19:42:32 2020 +++ src/usr.bin/make/Makefile Sun Jan 19 19:49:36 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.66 2020/01/19 19:42:32 riastradh Exp $ +# $NetBSD: Makefile,v 1.67 2020/01/19 19:49:36 riastradh Exp $ # @(#)Makefile 5.2 (Berkeley) 12/28/90 PROG= make @@ -17,9 +17,10 @@ USE_META ?= yes .if ${USE_META:tl} != "no" SRCS+= meta.c CPPFLAGS+= -DUSE_META -USE_FILEMON ?= yes +USE_FILEMON ?= ktrace .if ${USE_FILEMON:tl} != "no" -SRCS+= filemon.c +.PATH: ${.CURDIR}/filemon +SRCS+= filemon_${USE_FILEMON}.c CPPFLAGS+= -DUSE_FILEMON .endif .endif Index: src/usr.bin/make/meta.c diff -u src/usr.bin/make/meta.c:1.74 src/usr.bin/make/meta.c:1.75 --- src/usr.bin/make/meta.c:1.74 Sun Jan 19 19:42:32 2020 +++ src/usr.bin/make/meta.c Sun Jan 19 19:49:37 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: meta.c,v 1.74 2020/01/19 19:42:32 riastradh Exp $ */ +/* $NetBSD: meta.c,v 1.75 2020/01/19 19:49:37 riastradh Exp $ */ /* * Implement 'meta' mode. @@ -46,7 +46,7 @@ #include "job.h" #ifdef USE_FILEMON -#include "filemon.h" +#include "filemon/filemon.h" #endif static BuildMon Mybm; /* for compat */ @@ -130,7 +130,7 @@ meta_open_filemon(BuildMon *pbm) pbm->filemon = filemon_open(); if (pbm->filemon == NULL) { useFilemon = FALSE; - warn("Could not open filemon"); + warn("Could not open filemon %s", filemon_path()); return; } @@ -563,7 +563,7 @@ meta_init(void) { #ifdef USE_FILEMON /* this allows makefiles to test if we have filemon support */ - Var_Set(".MAKE.PATH_FILEMON", "ktrace", VAR_GLOBAL, 0); /* XXX */ + Var_Set(".MAKE.PATH_FILEMON", filemon_path(), VAR_GLOBAL, 0); #endif } Added files: Index: src/usr.bin/make/filemon/filemon.h diff -u /dev/null src/usr.bin/make/filemon/filemon.h:1.1 --- /dev/null Sun Jan 19 19:49:37 2020 +++ src/usr.bin/make/filemon/filemon.h Sun Jan 19 19:49:37 2020 @@ -0,0 +1,53 @@ +/* $NetBSD: filemon.h,v 1.1 2020/01/19 19:49:37 riastradh Exp $ */ + +/*- + * Copyright (c) 2019 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Taylor R. Campbell. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef FILEMON_H +#define FILEMON_H + +#include + +struct filemon; + +const char * + filemon_path(void); + +struct filemon * + filemon_open(void); +int filemon_close(struct filemon
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:49:37 UTC 2020 Modified Files: src/usr.bin/make: Makefile meta.c Added Files: src/usr.bin/make/filemon: filemon.h filemon_dev.c filemon_ktrace.c Removed Files: src/usr.bin/make: filemon.c filemon.h Log Message: Per sjg's suggestion, split filemon API into separate back ends. By default we use the ktrace back end, but the /dev/filemon back end is available as a compile-time option, by setting USE_FILEMON=dev in make. sjg raised concerns about ktrace performance and would like to continue using /dev/filemon on FreeBSD (which has seen more maintenance kernel-side) without forking make. To generate a diff of this commit: cvs rdiff -u -r1.66 -r1.67 src/usr.bin/make/Makefile cvs rdiff -u -r1.1 -r0 src/usr.bin/make/filemon.c src/usr.bin/make/filemon.h cvs rdiff -u -r1.74 -r1.75 src/usr.bin/make/meta.c cvs rdiff -u -r0 -r1.1 src/usr.bin/make/filemon/filemon.h \ src/usr.bin/make/filemon/filemon_dev.c \ src/usr.bin/make/filemon/filemon_ktrace.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 19:44:34 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: kern_rwlock.c src/sys/sys [ad-namecache]: rwlock.h Log Message: Sync with head. To generate a diff of this commit: cvs rdiff -u -r1.59.2.1 -r1.59.2.2 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.12 -r1.12.2.1 src/sys/sys/rwlock.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_rwlock.c diff -u src/sys/kern/kern_rwlock.c:1.59.2.1 src/sys/kern/kern_rwlock.c:1.59.2.2 --- src/sys/kern/kern_rwlock.c:1.59.2.1 Fri Jan 17 21:47:35 2020 +++ src/sys/kern/kern_rwlock.c Sun Jan 19 19:44:34 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_rwlock.c,v 1.59.2.1 2020/01/17 21:47:35 ad Exp $ */ +/* $NetBSD: kern_rwlock.c,v 1.59.2.2 2020/01/19 19:44:34 ad Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019, 2020 @@ -39,7 +39,9 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.59.2.1 2020/01/17 21:47:35 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.59.2.2 2020/01/19 19:44:34 ad Exp $"); + +#include "opt_lockdebug.h" #define __RWLOCK_PRIVATE @@ -63,58 +65,32 @@ __KERNEL_RCSID(0, "$NetBSD: kern_rwlock. * LOCKDEBUG */ -#if defined(LOCKDEBUG) - -#define RW_WANTLOCK(rw, op) \ - LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_LOCKED(rw, op) \ - LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_UNLOCKED(rw, op) \ - LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_DASSERT(rw, cond) \ -do { \ - if (__predict_false(!(cond))) \ - rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ -} while (/* CONSTCOND */ 0); - -#else /* LOCKDEBUG */ - -#define RW_WANTLOCK(rw, op) /* nothing */ -#define RW_LOCKED(rw, op) /* nothing */ -#define RW_UNLOCKED(rw, op) /* nothing */ -#define RW_DASSERT(rw, cond) /* nothing */ +#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) -#endif /* LOCKDEBUG */ +#define RW_WANTLOCK(rw, op) \ +LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); +#define RW_LOCKED(rw, op) \ +LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); +#define RW_UNLOCKED(rw, op) \ +LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); /* * DIAGNOSTIC */ #if defined(DIAGNOSTIC) - -#define RW_ASSERT(rw, cond) \ -do { \ - if (__predict_false(!(cond))) \ +#define RW_ASSERT(rw, cond) \ +do { \ + if (__predict_false(!(cond))) \ rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ } while (/* CONSTCOND */ 0) - #else - #define RW_ASSERT(rw, cond) /* nothing */ - #endif /* DIAGNOSTIC */ -#define RW_SETDEBUG(rw, on) ((rw)->rw_owner |= (on) ? 0 : RW_NODEBUG) -#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) -#if defined(LOCKDEBUG) -#define RW_INHERITDEBUG(n, o) (n) |= (o) & RW_NODEBUG -#else /* defined(LOCKDEBUG) */ -#define RW_INHERITDEBUG(n, o) /* nothing */ -#endif /* defined(LOCKDEBUG) */ - /* * Memory barriers. */ @@ -128,29 +104,6 @@ do { \ #define RW_MEMBAR_PRODUCER() membar_producer() #endif -static void rw_abort(const char *, size_t, krwlock_t *, const char *); -static void rw_dump(const volatile void *, lockop_printer_t); -static lwp_t *rw_owner(wchan_t); - -static inline uintptr_t -rw_cas(krwlock_t *rw, uintptr_t o, uintptr_t n) -{ - - RW_INHERITDEBUG(n, o); - return (uintptr_t)atomic_cas_ptr((volatile void *)>rw_owner, - (void *)o, (void *)n); -} - -static inline void -rw_swap(krwlock_t *rw, uintptr_t o, uintptr_t n) -{ - - RW_INHERITDEBUG(n, o); - n = (uintptr_t)atomic_swap_ptr((volatile void *)>rw_owner, - (void *)n); - RW_DASSERT(rw, n == o); -} - /* * For platforms that do not provide stubs, or for the LOCKDEBUG case. */ @@ -164,6 +117,10 @@ __strong_alias(rw_exit,rw_vector_exit); __strong_alias(rw_tryenter,rw_vector_tryenter); #endif +static void rw_abort(const char *, size_t, krwlock_t *, const char *); +static void rw_dump(const volatile void *, lockop_printer_t); +static lwp_t *rw_owner(wchan_t); + lockops_t rwlock_lockops = { .lo_name = "Reader / writer lock", .lo_type = LOCKOPS_SLEEP, @@ -179,6 +136,37 @@ syncobj_t rw_syncobj = { }; /* + * rw_cas: + * + * Do an atomic compare-and-swap on the lock word. + */ +static inline uintptr_t +rw_cas(krwlock_t *rw, uintptr_t o, uintptr_t n) +{ + + return (uintptr_t)atomic_cas_ptr((volatile void *)>rw_owner, + (void *)o, (void *)n); +} + +/* + * rw_swap: + * + * Do an atomic swap of the lock word. This is used only when it's + *
CVS commit: [ad-namecache] src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 19:44:34 UTC 2020 Modified Files: src/sys/kern [ad-namecache]: kern_rwlock.c src/sys/sys [ad-namecache]: rwlock.h Log Message: Sync with head. To generate a diff of this commit: cvs rdiff -u -r1.59.2.1 -r1.59.2.2 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.12 -r1.12.2.1 src/sys/sys/rwlock.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:42:32 UTC 2020 Modified Files: src/usr.bin/make: Makefile compat.c job.c meta.c meta.h Added Files: src/usr.bin/make: filemon.c filemon.h Log Message: Reimplement make(1) meta mode without filemon(4). To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/usr.bin/make/Makefile cvs rdiff -u -r1.109 -r1.110 src/usr.bin/make/compat.c cvs rdiff -u -r0 -r1.1 src/usr.bin/make/filemon.c src/usr.bin/make/filemon.h cvs rdiff -u -r1.195 -r1.196 src/usr.bin/make/job.c cvs rdiff -u -r1.73 -r1.74 src/usr.bin/make/meta.c cvs rdiff -u -r1.5 -r1.6 src/usr.bin/make/meta.h 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/make/Makefile diff -u src/usr.bin/make/Makefile:1.65 src/usr.bin/make/Makefile:1.66 --- src/usr.bin/make/Makefile:1.65 Thu Dec 19 07:14:07 2019 +++ src/usr.bin/make/Makefile Sun Jan 19 19:42:32 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.65 2019/12/19 07:14:07 maxv Exp $ +# $NetBSD: Makefile,v 1.66 2020/01/19 19:42:32 riastradh Exp $ # @(#)Makefile 5.2 (Berkeley) 12/28/90 PROG= make @@ -17,9 +17,10 @@ USE_META ?= yes .if ${USE_META:tl} != "no" SRCS+= meta.c CPPFLAGS+= -DUSE_META -FILEMON_H ?= ${.CURDIR:H:H}/sys/dev/filemon/filemon.h -.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h" -COPTS.meta.c += -DHAVE_FILEMON_H -I${FILEMON_H:H} +USE_FILEMON ?= yes +.if ${USE_FILEMON:tl} != "no" +SRCS+= filemon.c +CPPFLAGS+= -DUSE_FILEMON .endif .endif Index: src/usr.bin/make/compat.c diff -u src/usr.bin/make/compat.c:1.109 src/usr.bin/make/compat.c:1.110 --- src/usr.bin/make/compat.c:1.109 Thu Dec 19 07:14:07 2019 +++ src/usr.bin/make/compat.c Sun Jan 19 19:42:32 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: compat.c,v 1.109 2019/12/19 07:14:07 maxv Exp $ */ +/* $NetBSD: compat.c,v 1.110 2020/01/19 19:42:32 riastradh Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: compat.c,v 1.109 2019/12/19 07:14:07 maxv Exp $"; +static char rcsid[] = "$NetBSD: compat.c,v 1.110 2020/01/19 19:42:32 riastradh Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)compat.c 8.2 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: compat.c,v 1.109 2019/12/19 07:14:07 maxv Exp $"); +__RCSID("$NetBSD: compat.c,v 1.110 2020/01/19 19:42:32 riastradh Exp $"); #endif #endif /* not lint */ #endif @@ -404,7 +404,7 @@ again: #ifdef USE_META if (useMeta) { - meta_compat_parent(); + meta_compat_parent(cpid); } #endif Index: src/usr.bin/make/job.c diff -u src/usr.bin/make/job.c:1.195 src/usr.bin/make/job.c:1.196 --- src/usr.bin/make/job.c:1.195 Sun May 13 22:13:28 2018 +++ src/usr.bin/make/job.c Sun Jan 19 19:42:32 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $ */ +/* $NetBSD: job.c,v 1.196 2020/01/19 19:42:32 riastradh Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $"; +static char rcsid[] = "$NetBSD: job.c,v 1.196 2020/01/19 19:42:32 riastradh Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)job.c 8.2 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: job.c,v 1.195 2018/05/13 22:13:28 sjg Exp $"); +__RCSID("$NetBSD: job.c,v 1.196 2020/01/19 19:42:32 riastradh Exp $"); #endif #endif /* not lint */ #endif @@ -329,6 +329,8 @@ static Job childExitJob; /* child exit p #define CHILD_EXIT "." #define DO_JOB_RESUME "R" +static const int npseudojobs = 2; /* number of pseudo-jobs */ + #define TARG_FMT "%s %s ---\n" /* Default format */ #define MESSAGE(fp, gn) \ if (maxJobs != 1 && targPrefix && *targPrefix) \ @@ -357,6 +359,16 @@ static void JobSigReset(void); const char *malloc_options="A"; +static unsigned +nfds_per_job(void) +{ +#ifdef USE_META +if (useMeta) + return 2; +#endif +return 1; +} + static void job_table_dump(const char *where) { @@ -1439,6 +1451,12 @@ JobExec(Job *job, char **argv) Trace_Log(JOBSTART, job); +#ifdef USE_META +if (useMeta) { + meta_job_parent(job, cpid); +} +#endif + /* * Set the current position in the buffer to the beginning * and mark another stream to watch in the outputs mask @@ -2121,12 +2139,24 @@ Job_CatchOutput(void) if (nready == 0) return; -for (i = 2; i < nfds; i++) { +for (i = npseudojobs*nfds_per_job(); i < nfds; i++) { if (!fds[i].revents) continue; job = jobfds[i]; if (job->job_state == JOB_ST_RUNNING) JobDoOutput(job, FALSE); +#ifdef USE_META + /* + * With meta mode, we may have activity on the job's filemon + * descriptor too, which at the moment is any pollfd other than + * job->inPollfd. + */ + if (useMeta &&
CVS commit: src/usr.bin/make
Module Name:src Committed By: riastradh Date: Sun Jan 19 19:42:32 UTC 2020 Modified Files: src/usr.bin/make: Makefile compat.c job.c meta.c meta.h Added Files: src/usr.bin/make: filemon.c filemon.h Log Message: Reimplement make(1) meta mode without filemon(4). To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/usr.bin/make/Makefile cvs rdiff -u -r1.109 -r1.110 src/usr.bin/make/compat.c cvs rdiff -u -r0 -r1.1 src/usr.bin/make/filemon.c src/usr.bin/make/filemon.h cvs rdiff -u -r1.195 -r1.196 src/usr.bin/make/job.c cvs rdiff -u -r1.73 -r1.74 src/usr.bin/make/meta.c cvs rdiff -u -r1.5 -r1.6 src/usr.bin/make/meta.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 18:34:24 UTC 2020 Modified Files: src/sys/kern: kern_rwlock.c src/sys/sys: rwlock.h Log Message: Tidy rwlocks a bit, no functional change intended. Mainly: - rw_downgrade(): do it in a for () loop like all the others. - Explicitly carry around RW_NODEBUG - don't be lazy. - Remove pointless macros. - Don't make assertions conditional on LOCKDEBUG, there's no reason. - Make space for a new flag bit (not added yet). To generate a diff of this commit: cvs rdiff -u -r1.60 -r1.61 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.12 -r1.13 src/sys/sys/rwlock.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys
Module Name:src Committed By: ad Date: Sun Jan 19 18:34:24 UTC 2020 Modified Files: src/sys/kern: kern_rwlock.c src/sys/sys: rwlock.h Log Message: Tidy rwlocks a bit, no functional change intended. Mainly: - rw_downgrade(): do it in a for () loop like all the others. - Explicitly carry around RW_NODEBUG - don't be lazy. - Remove pointless macros. - Don't make assertions conditional on LOCKDEBUG, there's no reason. - Make space for a new flag bit (not added yet). To generate a diff of this commit: cvs rdiff -u -r1.60 -r1.61 src/sys/kern/kern_rwlock.c cvs rdiff -u -r1.12 -r1.13 src/sys/sys/rwlock.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_rwlock.c diff -u src/sys/kern/kern_rwlock.c:1.60 src/sys/kern/kern_rwlock.c:1.61 --- src/sys/kern/kern_rwlock.c:1.60 Sun Jan 12 18:37:10 2020 +++ src/sys/kern/kern_rwlock.c Sun Jan 19 18:34:24 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp $ */ +/* $NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp $ */ /*- * Copyright (c) 2002, 2006, 2007, 2008, 2009, 2019, 2020 @@ -39,7 +39,9 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.60 2020/01/12 18:37:10 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_rwlock.c,v 1.61 2020/01/19 18:34:24 ad Exp $"); + +#include "opt_lockdebug.h" #define __RWLOCK_PRIVATE @@ -63,58 +65,32 @@ __KERNEL_RCSID(0, "$NetBSD: kern_rwlock. * LOCKDEBUG */ -#if defined(LOCKDEBUG) - -#define RW_WANTLOCK(rw, op) \ - LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_LOCKED(rw, op) \ - LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_UNLOCKED(rw, op) \ - LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ - (uintptr_t)__builtin_return_address(0), op == RW_READER); -#define RW_DASSERT(rw, cond) \ -do { \ - if (__predict_false(!(cond))) \ - rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ -} while (/* CONSTCOND */ 0); - -#else /* LOCKDEBUG */ - -#define RW_WANTLOCK(rw, op) /* nothing */ -#define RW_LOCKED(rw, op) /* nothing */ -#define RW_UNLOCKED(rw, op) /* nothing */ -#define RW_DASSERT(rw, cond) /* nothing */ +#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) -#endif /* LOCKDEBUG */ +#define RW_WANTLOCK(rw, op) \ +LOCKDEBUG_WANTLOCK(RW_DEBUG_P(rw), (rw), \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); +#define RW_LOCKED(rw, op) \ +LOCKDEBUG_LOCKED(RW_DEBUG_P(rw), (rw), NULL, \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); +#define RW_UNLOCKED(rw, op) \ +LOCKDEBUG_UNLOCKED(RW_DEBUG_P(rw), (rw), \ +(uintptr_t)__builtin_return_address(0), op == RW_READER); /* * DIAGNOSTIC */ #if defined(DIAGNOSTIC) - -#define RW_ASSERT(rw, cond) \ -do { \ - if (__predict_false(!(cond))) \ +#define RW_ASSERT(rw, cond) \ +do { \ + if (__predict_false(!(cond))) \ rw_abort(__func__, __LINE__, rw, "assertion failed: " #cond);\ } while (/* CONSTCOND */ 0) - #else - #define RW_ASSERT(rw, cond) /* nothing */ - #endif /* DIAGNOSTIC */ -#define RW_SETDEBUG(rw, on) ((rw)->rw_owner |= (on) ? 0 : RW_NODEBUG) -#define RW_DEBUG_P(rw) (((rw)->rw_owner & RW_NODEBUG) == 0) -#if defined(LOCKDEBUG) -#define RW_INHERITDEBUG(n, o) (n) |= (o) & RW_NODEBUG -#else /* defined(LOCKDEBUG) */ -#define RW_INHERITDEBUG(n, o) /* nothing */ -#endif /* defined(LOCKDEBUG) */ - /* * Memory barriers. */ @@ -128,29 +104,6 @@ do { \ #define RW_MEMBAR_PRODUCER() membar_producer() #endif -static void rw_abort(const char *, size_t, krwlock_t *, const char *); -static void rw_dump(const volatile void *, lockop_printer_t); -static lwp_t *rw_owner(wchan_t); - -static inline uintptr_t -rw_cas(krwlock_t *rw, uintptr_t o, uintptr_t n) -{ - - RW_INHERITDEBUG(n, o); - return (uintptr_t)atomic_cas_ptr((volatile void *)>rw_owner, - (void *)o, (void *)n); -} - -static inline void -rw_swap(krwlock_t *rw, uintptr_t o, uintptr_t n) -{ - - RW_INHERITDEBUG(n, o); - n = (uintptr_t)atomic_swap_ptr((volatile void *)>rw_owner, - (void *)n); - RW_DASSERT(rw, n == o); -} - /* * For platforms that do not provide stubs, or for the LOCKDEBUG case. */ @@ -164,6 +117,10 @@ __strong_alias(rw_exit,rw_vector_exit); __strong_alias(rw_tryenter,rw_vector_tryenter); #endif +static void rw_abort(const char *, size_t, krwlock_t *, const char *); +static void rw_dump(const volatile void *, lockop_printer_t); +static lwp_t *rw_owner(wchan_t); + lockops_t rwlock_lockops = { .lo_name = "Reader / writer lock", .lo_type = LOCKOPS_SLEEP, @@ -179,6 +136,37 @@ syncobj_t rw_syncobj = { }; /* + * rw_cas: + * + * Do an atomic compare-and-swap on the lock word. + */ +static inline uintptr_t
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:54:19 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Note removal of the de(4) driver. To generate a diff of this commit: cvs rdiff -u -r1.2638 -r1.2639 src/doc/CHANGES 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 diff -u src/doc/CHANGES:1.2638 src/doc/CHANGES:1.2639 --- src/doc/CHANGES:1.2638 Sun Jan 19 11:29:42 2020 +++ src/doc/CHANGES Sun Jan 19 17:54:19 2020 @@ -1,4 +1,4 @@ -# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2638 $> +# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2639 $> # # # [Note: This file does not mention every change made to the NetBSD source tree. @@ -100,3 +100,4 @@ Changes from NetBSD 9.0 to NetBSD 10.0: uyurex(4): Removed from the tree. [maya 20200117] strip(4): Removed from the tree. [thorpej 20200118] hippi and esh(4): Removed from the tree. [thorpej 20200118] + de(4): Removed from the tree. [thorpej 20200119]
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:54:19 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Note removal of the de(4) driver. To generate a diff of this commit: cvs rdiff -u -r1.2638 -r1.2639 src/doc/CHANGES Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:53:15 UTC 2020 Modified Files: src/distrib/sets/lists/man: mi src/share/man/man4: Makefile src/sys/dev/pci: files.pci Removed Files: src/share/man/man4: de.4 src/sys/dev/pci: if_de.c if_devar.h Log Message: Remove the de(4) driver, which has long since been supplanted by the tlp(4) driver, which supports more chips and more board variants. To generate a diff of this commit: cvs rdiff -u -r1.1671 -r1.1672 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.695 -r1.696 src/share/man/man4/Makefile cvs rdiff -u -r1.10 -r0 src/share/man/man4/de.4 cvs rdiff -u -r1.422 -r1.423 src/sys/dev/pci/files.pci cvs rdiff -u -r1.165 -r0 src/sys/dev/pci/if_de.c cvs rdiff -u -r1.63 -r0 src/sys/dev/pci/if_devar.h 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/man/mi diff -u src/distrib/sets/lists/man/mi:1.1671 src/distrib/sets/lists/man/mi:1.1672 --- src/distrib/sets/lists/man/mi:1.1671 Sun Jan 19 10:50:26 2020 +++ src/distrib/sets/lists/man/mi Sun Jan 19 17:53:15 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1671 2020/01/19 10:50:26 martin Exp $ +# $NetBSD: mi,v 1.1672 2020/01/19 17:53:15 thorpej Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -1017,7 +1017,7 @@ ./usr/share/man/cat4/dbcool.0 man-sys-catman .cat ./usr/share/man/cat4/ddb.0 man-sys-catman .cat ./usr/share/man/cat4/ddc.0 man-sys-catman .cat -./usr/share/man/cat4/de.0 man-sys-catman .cat +./usr/share/man/cat4/de.0 man-obsolete obsolete ./usr/share/man/cat4/depca.0 man-sys-catman .cat ./usr/share/man/cat4/dge.0 man-sys-catman .cat ./usr/share/man/cat4/dk.0 man-sys-catman .cat @@ -4201,7 +4201,7 @@ ./usr/share/man/html4/dbcool.html man-sys-htmlman html ./usr/share/man/html4/ddb.html man-sys-htmlman html ./usr/share/man/html4/ddc.html man-sys-htmlman html -./usr/share/man/html4/de.html man-sys-htmlman html +./usr/share/man/html4/de.html man-obsolete obsolete ./usr/share/man/html4/depca.html man-sys-htmlman html ./usr/share/man/html4/dge.html man-sys-htmlman html ./usr/share/man/html4/dk.html man-sys-htmlman html @@ -7157,7 +7157,7 @@ ./usr/share/man/man4/dbcool.4 man-sys-man .man ./usr/share/man/man4/ddb.4 man-sys-man .man ./usr/share/man/man4/ddc.4 man-sys-man .man -./usr/share/man/man4/de.4 man-sys-man .man +./usr/share/man/man4/de.4 man-obsolete obsolete ./usr/share/man/man4/depca.4 man-sys-man .man ./usr/share/man/man4/dge.4 man-sys-man .man ./usr/share/man/man4/dk.4 man-sys-man .man Index: src/share/man/man4/Makefile diff -u src/share/man/man4/Makefile:1.695 src/share/man/man4/Makefile:1.696 --- src/share/man/man4/Makefile:1.695 Sun Jan 19 01:25:03 2020 +++ src/share/man/man4/Makefile Sun Jan 19 17:53:15 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.695 2020/01/19 01:25:03 thorpej Exp $ +# $NetBSD: Makefile,v 1.696 2020/01/19 17:53:15 thorpej Exp $ # @(#)Makefile 8.1 (Berkeley) 6/18/93 MAN= aac.4 ac97.4 acardide.4 aceride.4 acphy.4 \ @@ -19,7 +19,7 @@ MAN= aac.4 ac97.4 acardide.4 aceride.4 a cec.4 cgd.4 cfb.4 ch.4 chipsfb.4 ciphy.4 ciss.4 clcs.4 clct.4 \ clockctl.4 cmdide.4 cmpci.4 cms.4 cnw.4 \ com.4 coram.4 crypto.4 cs80bus.4 cuda.4 cypide.4 cxdtv.4 \ - ddb.4 ddc.4 de.4 dge.4 dk.4 dm.4 dmoverio.4 \ + ddb.4 ddc.4 dge.4 dk.4 dm.4 dmoverio.4 \ dmphy.4 dpt.4 dpti.4 drm.4 drum.4 drvctl.4 dtv.4 dtviic.4 dwctwo.4 \ eap.4 ebus.4 edc.4 elmc.4 emuxki.4 ena.4 envsys.4 ep.4 esh.4 \ esa.4 esiop.4 esm.4 eso.4 et.4 etphy.4 exphy.4 \ Index: src/sys/dev/pci/files.pci diff -u src/sys/dev/pci/files.pci:1.422 src/sys/dev/pci/files.pci:1.423 --- src/sys/dev/pci/files.pci:1.422 Sun Jan 19 06:55:21 2020 +++ src/sys/dev/pci/files.pci Sun Jan 19 17:53:15 2020 @@ -1,4 +1,4 @@ -# $NetBSD: files.pci,v 1.422 2020/01/19 06:55:21 thorpej Exp $ +# $NetBSD: files.pci,v 1.423 2020/01/19 17:53:15 thorpej Exp $ # # Config file and device description for machine-independent PCI code. # Included by ports that need it. Requires that the SCSI files be @@ -173,11 +173,6 @@ attach aq at pci file dev/pci/if_aq.c aq defflag opt_if_aq.h AQ_EVENT_COUNTERS -# Ethernet driver for DC21040-based boards -device de: ether, ifnet, arp -attach de at pci -file dev/pci/if_de.c de - # 3Com 3c590 and 3c595 Ethernet controllers # device declaration in sys/conf/files attach ep at pci with ep_pci
CVS commit: src
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:53:15 UTC 2020 Modified Files: src/distrib/sets/lists/man: mi src/share/man/man4: Makefile src/sys/dev/pci: files.pci Removed Files: src/share/man/man4: de.4 src/sys/dev/pci: if_de.c if_devar.h Log Message: Remove the de(4) driver, which has long since been supplanted by the tlp(4) driver, which supports more chips and more board variants. To generate a diff of this commit: cvs rdiff -u -r1.1671 -r1.1672 src/distrib/sets/lists/man/mi cvs rdiff -u -r1.695 -r1.696 src/share/man/man4/Makefile cvs rdiff -u -r1.10 -r0 src/share/man/man4/de.4 cvs rdiff -u -r1.422 -r1.423 src/sys/dev/pci/files.pci cvs rdiff -u -r1.165 -r0 src/sys/dev/pci/if_de.c cvs rdiff -u -r1.63 -r0 src/sys/dev/pci/if_devar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/tests
Module Name:src Committed By: christos Date: Sun Jan 19 17:36:57 UTC 2020 Modified Files: src/tests/lib/libarchive: Makefile src/tests/usr.bin/cpio: Makefile src/tests/usr.bin/tar: Makefile Log Message: Fix static linking (sun2) To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/tests/lib/libarchive/Makefile cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/cpio/Makefile cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/tar/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tests/lib/libarchive/Makefile diff -u src/tests/lib/libarchive/Makefile:1.3 src/tests/lib/libarchive/Makefile:1.4 --- src/tests/lib/libarchive/Makefile:1.3 Sat Jan 18 10:16:47 2020 +++ src/tests/lib/libarchive/Makefile Sun Jan 19 12:36:57 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2020/01/18 15:16:47 christos Exp $ +# $NetBSD: Makefile,v 1.4 2020/01/19 17:36:57 christos Exp $ NOMAN= @@ -16,9 +16,9 @@ CPPFLAGS+=-I${LIBARCHIVE}/libarchive/tes .PATH: ${LIBARCHIVE}/libarchive/test ${LIBARCHIVE}/test_utils -LDADD+=-larchive -DPADD+=${LIBARCHIVE} - +DPADD+= ${LIBARCHIVE} ${LIBEXPAT} ${LIBBZ2} ${LIBLZMA} ${LIBZ} \ + ${LIBCRYPTO} ${LIBPTHREAD} +LDADD+= -larchive -lexpat -lbz2 -llzma -lz -lcrypto -lpthread SRCS.h_libarchive= \ test_main.c \ Index: src/tests/usr.bin/cpio/Makefile diff -u src/tests/usr.bin/cpio/Makefile:1.3 src/tests/usr.bin/cpio/Makefile:1.4 --- src/tests/usr.bin/cpio/Makefile:1.3 Sat Jan 18 10:16:48 2020 +++ src/tests/usr.bin/cpio/Makefile Sun Jan 19 12:36:57 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2020/01/18 15:16:48 christos Exp $ +# $NetBSD: Makefile,v 1.4 2020/01/19 17:36:57 christos Exp $ NOMAN= @@ -19,10 +19,9 @@ CPPFLAGS+=-DPLATFORM_CONFIG_H='"config_n .PATH: ${LIBARCHIVE}/cpio/test ${LIBARCHIVE}/test_utils ${LIBARCHIVE}/cpio \ ${LIBARCHIVE}/libarchive_fe - -LDADD+=-larchive -DPADD+=${LIBARCHIVE} - +DPADD+= ${LIBARCHIVE} ${LIBEXPAT} ${LIBBZ2} ${LIBLZMA} ${LIBZ} \ + ${LIBCRYPTO} ${LIBPTHREAD} +LDADD+= -larchive -lexpat -lbz2 -llzma -lz -lcrypto -lpthread SRCS.h_cpio= \ test_main.c \ Index: src/tests/usr.bin/tar/Makefile diff -u src/tests/usr.bin/tar/Makefile:1.3 src/tests/usr.bin/tar/Makefile:1.4 --- src/tests/usr.bin/tar/Makefile:1.3 Sat Jan 18 10:16:48 2020 +++ src/tests/usr.bin/tar/Makefile Sun Jan 19 12:36:57 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2020/01/18 15:16:48 christos Exp $ +# $NetBSD: Makefile,v 1.4 2020/01/19 17:36:57 christos Exp $ NOMAN= @@ -17,9 +17,9 @@ CPPFLAGS+=-I${LIBARCHIVE}/libarchive .PATH: ${LIBARCHIVE}/tar/test ${LIBARCHIVE}/test_utils -LDADD+=-larchive -DPADD+=${LIBARCHIVE} - +DPADD+= ${LIBARCHIVE} ${LIBEXPAT} ${LIBBZ2} ${LIBLZMA} ${LIBZ} \ + ${LIBCRYPTO} ${LIBPTHREAD} +LDADD+= -larchive -lexpat -lbz2 -llzma -lz -lcrypto -lpthread SRCS.h_tar= \ test_main.c \
CVS commit: src/tests
Module Name:src Committed By: christos Date: Sun Jan 19 17:36:57 UTC 2020 Modified Files: src/tests/lib/libarchive: Makefile src/tests/usr.bin/cpio: Makefile src/tests/usr.bin/tar: Makefile Log Message: Fix static linking (sun2) To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/tests/lib/libarchive/Makefile cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/cpio/Makefile cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/tar/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/cats/conf
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:26:57 UTC 2020 Modified Files: src/sys/arch/cats/conf: INSTALL Log Message: Remove commented out "de* at pci? ..." (this is the only kernel config in the tree with any reference to that driver). To generate a diff of this commit: cvs rdiff -u -r1.111 -r1.112 src/sys/arch/cats/conf/INSTALL 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/cats/conf/INSTALL diff -u src/sys/arch/cats/conf/INSTALL:1.111 src/sys/arch/cats/conf/INSTALL:1.112 --- src/sys/arch/cats/conf/INSTALL:1.111 Sun Jan 19 06:55:23 2020 +++ src/sys/arch/cats/conf/INSTALL Sun Jan 19 17:26:57 2020 @@ -1,4 +1,4 @@ -# $NetBSD: INSTALL,v 1.111 2020/01/19 06:55:23 thorpej Exp $ +# $NetBSD: INSTALL,v 1.112 2020/01/19 17:26:57 thorpej Exp $ # # CATSINST -- CHALTECH CATS Install kernel # @@ -241,7 +241,6 @@ ne* at pci? dev ? function ? # NE2000 co #ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial sip* at pci? dev ? function ? # SiS 900 Ethernet #tl* at pci? dev ? function ? # ThunderLAN-based Ethernet -#de* at pci? dev ? function ? # DECchip 21x4x and clones tlp* at pci? dev ? function ? # DECchip 21x4x and clones vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet rtk* at pci? dev ? function ? # Realtek 8129/8139
CVS commit: src/sys/arch/cats/conf
Module Name:src Committed By: thorpej Date: Sun Jan 19 17:26:57 UTC 2020 Modified Files: src/sys/arch/cats/conf: INSTALL Log Message: Remove commented out "de* at pci? ..." (this is the only kernel config in the tree with any reference to that driver). To generate a diff of this commit: cvs rdiff -u -r1.111 -r1.112 src/sys/arch/cats/conf/INSTALL Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 16:58:23 UTC 2020 Modified Files: src/doc: TODO.smpnet Log Message: HIPPI has been removed. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/doc/TODO.smpnet Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: thorpej Date: Sun Jan 19 16:58:23 UTC 2020 Modified Files: src/doc: TODO.smpnet Log Message: HIPPI has been removed. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/doc/TODO.smpnet Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/TODO.smpnet diff -u src/doc/TODO.smpnet:1.31 src/doc/TODO.smpnet:1.32 --- src/doc/TODO.smpnet:1.31 Mon Jan 6 15:21:29 2020 +++ src/doc/TODO.smpnet Sun Jan 19 16:58:22 2020 @@ -1,4 +1,4 @@ -$NetBSD: TODO.smpnet,v 1.31 2020/01/06 15:21:29 msaitoh Exp $ +$NetBSD: TODO.smpnet,v 1.32 2020/01/19 16:58:22 thorpej Exp $ MP-safe components == @@ -63,7 +63,6 @@ Unprotected ones - ARCNET (if_arcsubr.c) - BRIDGE_IPF - FDDI (if_fddisubr.c) - - HIPPI (if_hippisubr.c) - IEEE 1394 (if_ieee1394subr.c) - IEEE 802.11 (ieee80211(4)) - Token ring (if_tokensubr.c)
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: skrll Date: Sun Jan 19 16:53:20 UTC 2020 Modified Files: src/sys/arch/arm/broadcom: bcm2835_intr.c Log Message: ci_core_id isn't setup early enough after recent arm_cpu_topology changes, so use ci_mpidr as a stop gap fix for cpuid To generate a diff of this commit: cvs rdiff -u -r1.29 -r1.30 src/sys/arch/arm/broadcom/bcm2835_intr.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/bcm2835_intr.c diff -u src/sys/arch/arm/broadcom/bcm2835_intr.c:1.29 src/sys/arch/arm/broadcom/bcm2835_intr.c:1.30 --- src/sys/arch/arm/broadcom/bcm2835_intr.c:1.29 Thu Dec 26 11:09:11 2019 +++ src/sys/arch/arm/broadcom/bcm2835_intr.c Sun Jan 19 16:53:20 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: bcm2835_intr.c,v 1.29 2019/12/26 11:09:11 skrll Exp $ */ +/* $NetBSD: bcm2835_intr.c,v 1.30 2020/01/19 16:53:20 skrll Exp $ */ /*- * Copyright (c) 2012, 2015, 2019 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: bcm2835_intr.c,v 1.29 2019/12/26 11:09:11 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bcm2835_intr.c,v 1.30 2020/01/19 16:53:20 skrll Exp $"); #define _INTR_PRIVATE @@ -337,7 +337,7 @@ bcm2835_irq_handler(void *frame) { struct cpu_info * const ci = curcpu(); const int oldipl = ci->ci_cpl; - const cpuid_t cpuid = ci->ci_core_id; + const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); const uint32_t oldipl_mask = __BIT(oldipl); int ipl_mask = 0; @@ -700,7 +700,7 @@ static int bcm2836mp_pic_find_pending_irqs(struct pic_softc *pic) { struct cpu_info * const ci = curcpu(); - const cpuid_t cpuid = ci->ci_core_id; + const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); uint32_t lpending; int ipl = 0; @@ -741,7 +741,7 @@ bcm2836mp_pic_source_name(struct pic_sof #if defined(MULTIPROCESSOR) static void bcm2836mp_cpu_init(struct pic_softc *pic, struct cpu_info *ci) { - const cpuid_t cpuid = ci->ci_core_id; + const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); KASSERT(cpuid < BCM2836_NCPUS); @@ -768,7 +768,7 @@ int bcm2836mp_ipi_handler(void *priv) { const struct cpu_info *ci = curcpu(); - const cpuid_t cpuid = ci->ci_core_id; + const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); uint32_t ipimask, bit; KASSERT(cpuid < BCM2836_NCPUS); @@ -817,7 +817,7 @@ bcm2836mp_ipi_handler(void *priv) static void bcm2836mp_intr_init(void *priv, struct cpu_info *ci) { - const cpuid_t cpuid = ci->ci_core_id; + const cpuid_t cpuid = __SHIFTOUT(ci->ci_mpidr, MPIDR_AFF0); struct pic_softc * const pic = _pic[cpuid]; KASSERT(cpuid < BCM2836_NCPUS);
CVS commit: src/sys/arch/arm/broadcom
Module Name:src Committed By: skrll Date: Sun Jan 19 16:53:20 UTC 2020 Modified Files: src/sys/arch/arm/broadcom: bcm2835_intr.c Log Message: ci_core_id isn't setup early enough after recent arm_cpu_topology changes, so use ci_mpidr as a stop gap fix for cpuid To generate a diff of this commit: cvs rdiff -u -r1.29 -r1.30 src/sys/arch/arm/broadcom/bcm2835_intr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/aarch64
Module Name:src Committed By: skrll Date: Sun Jan 19 16:12:56 UTC 2020 Modified Files: src/sys/arch/aarch64/aarch64: locore.S start.S src/sys/arch/aarch64/include: asm.h Log Message: Replace the two copies of the ADDR macro with a centralised adrl macro. The adrl name matches the one used by armasm. To generate a diff of this commit: cvs rdiff -u -r1.52 -r1.53 src/sys/arch/aarch64/aarch64/locore.S cvs rdiff -u -r1.6 -r1.7 src/sys/arch/aarch64/aarch64/start.S cvs rdiff -u -r1.5 -r1.6 src/sys/arch/aarch64/include/asm.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/aarch64/aarch64/locore.S diff -u src/sys/arch/aarch64/aarch64/locore.S:1.52 src/sys/arch/aarch64/aarch64/locore.S:1.53 --- src/sys/arch/aarch64/aarch64/locore.S:1.52 Wed Jan 15 08:34:04 2020 +++ src/sys/arch/aarch64/aarch64/locore.S Sun Jan 19 16:12:56 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.52 2020/01/15 08:34:04 mrg Exp $ */ +/* $NetBSD: locore.S,v 1.53 2020/01/19 16:12:56 skrll Exp $ */ /* * Copyright (c) 2017 Ryo Shimizu @@ -38,7 +38,7 @@ #include #include "assym.h" -RCSID("$NetBSD: locore.S,v 1.52 2020/01/15 08:34:04 mrg Exp $") +RCSID("$NetBSD: locore.S,v 1.53 2020/01/19 16:12:56 skrll Exp $") #ifdef AARCH64_DEVICE_MEM_STRONGLY_ORDERED #define MAIR_DEVICE_MEM MAIR_DEVICE_nGnRnE @@ -80,12 +80,6 @@ RCSID("$NetBSD: locore.S,v 1.52 2020/01/ #define PRINT(string) bl xprint; .asciz string; .align 2 -/* load far effective address (pc relative) */ -.macro ADDR, reg, addr - adrp \reg, \addr - add \reg, \reg, #:lo12:\addr -.endm - .text .align 3 ASENTRY_NP(aarch64_start) @@ -94,7 +88,7 @@ ASENTRY_NP(aarch64_start) mov x28, sp /* set stack pointer for boot */ - ADDR x0, bootstk + adrl x0, bootstk mov sp, x0 bl clear_bss @@ -165,11 +159,11 @@ vstart: DPRINTREG("PC = ", x20) /* set exception vector */ - ADDR x0, _C_LABEL(el1_vectors) + adrl x0, _C_LABEL(el1_vectors) msr vbar_el1, x0 /* set lwp0 stack */ - ADDR x0, lwp0uspace + adrl x0, lwp0uspace add x0, x0, #(UPAGES * PAGE_SIZE) sub x0, x0, #TF_SIZE /* lwp0space + USPACE - TF_SIZE */ mov sp, x0 /* define lwp0 ksp bottom */ @@ -180,7 +174,7 @@ vstart: msr tpidrro_el0, xzr /* set curcpu() */ - ADDR x0, cpu_info_store /* cpu_info_store is cpu_info[0] */ + adrl x0, cpu_info_store /* cpu_info_store is cpu_info[0] */ msr tpidr_el1, x0 /* curcpu is cpu_info[0] */ DPRINTREG("curcpu = ", x0); @@ -193,7 +187,7 @@ vstart: bl aarch64_getcacheinfo #ifdef KASAN - ADDR x0, lwp0uspace + adrl x0, lwp0uspace bl _C_LABEL(kasan_early_init) #endif @@ -216,8 +210,8 @@ ASEND(aarch64_start) ASENTRY_NP(clear_bss) /* Zero the BSS. The size must be aligned 16, usually it should be. */ - ADDR x14, __bss_start__ - ADDR x15, __bss_end__ + adrl x14, __bss_start__ + adrl x15, __bss_end__ b 2f 1: stp xzr, xzr, [x14], #16 2: cmp x14, x15 @@ -267,7 +261,7 @@ locore_lock_enter: mov x3, xzr /* x3 = level */ levelloop: /* lock_level[] and lock_turn[] are always accessed via PA(devmap) */ - ADDR x0, kern_vtopdiff + adrl x0, kern_vtopdiff ldr x0, [x0] ldr x4, =lock_level sub x4, x4, x0 @@ -308,7 +302,7 @@ nextlevel: locore_lock_exit: #ifdef DEBUG_LOCORE_PRINT_LOCK /* lock_level[] and lock_turn[] are always accessed via PA(devmap) */ - ADDR x0, kern_vtopdiff + adrl x0, kern_vtopdiff ldr x0, [x0] ldr x1, =lock_level sub x1, x1, x0 @@ -369,7 +363,7 @@ ENTRY_NP(cpu_mpstart) * resolve own cpuindex. my mpidr is stored in * extern uint64_t cpu_mpidr[MAXCPUS] */ - ADDR x0, _C_LABEL(cpu_mpidr) + adrl x0, _C_LABEL(cpu_mpidr) mov x1, xzr 1: add x1, x1, #1 @@ -388,7 +382,7 @@ ENTRY_NP(cpu_mpstart) /* set stack pointer for boot */ mov x1, #BOOT_AP_STACKSIZE mul x1, x1, x27 - ADDR x0, bootstk + adrl x0, bootstk add sp, x0, x1 /* sp = bootstk + (BOOT_AP_STACKSIZE * cpuindex) */ bl 1f @@ -434,7 +428,7 @@ mp_vstart: CPU_DPRINTREG("PC = ", x20) /* set exception vector */ - ADDR x0, _C_LABEL(el1_vectors) + adrl x0, _C_LABEL(el1_vectors) msr vbar_el1, x0 /* lwp-private = NULL */ @@ -444,7 +438,7 @@ mp_vstart: /* set curcpu(), and fill curcpu()->ci_{midr,mpidr} */ mov x0, #CPU_INFO_SIZE mul x0, x27, x0 - ADDR x1, _C_LABEL(cpu_info_store) + adrl x1, _C_LABEL(cpu_info_store) add x0, x0, x1 /* x0 = _info_store[cpuindex] */ msr tpidr_el1, x0 /* tpidr_el1 = curcpu() = x0 */ @@ -455,7 +449,7 @@ mp_vstart: mov x0, #32 udiv x1, x27, x0 - ADDR x0, _C_LABEL(aarch64_cpu_hatched) + adrl x0, _C_LABEL(aarch64_cpu_hatched) add x28, x0, x1, lsl #2 /* x28 = _cpu_hatched[cpuindex/32] */ mov x0, #1 mov x2, #32 @@ -474,7 +468,7 @@ mp_vstart: mov x0, #32 udiv x1, x27, x0 - ADDR x0, _C_LABEL(aarch64_cpu_mbox) + adrl x0, _C_LABEL(aarch64_cpu_mbox) add x28, x0, x1, lsl #2 /* x28 = _cpu_mbox[cpuindex/32] */ /* wait for
CVS commit: src/sys/arch/aarch64
Module Name:src Committed By: skrll Date: Sun Jan 19 16:12:56 UTC 2020 Modified Files: src/sys/arch/aarch64/aarch64: locore.S start.S src/sys/arch/aarch64/include: asm.h Log Message: Replace the two copies of the ADDR macro with a centralised adrl macro. The adrl name matches the one used by armasm. To generate a diff of this commit: cvs rdiff -u -r1.52 -r1.53 src/sys/arch/aarch64/aarch64/locore.S cvs rdiff -u -r1.6 -r1.7 src/sys/arch/aarch64/aarch64/start.S cvs rdiff -u -r1.5 -r1.6 src/sys/arch/aarch64/include/asm.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/include/drm
Module Name:src Committed By: jmcneill Date: Sun Jan 19 16:12:00 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/include/drm: drm_cache.h Log Message: Pull in drm_os_netbsd.h for CONFIG_ defines To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.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/external/bsd/drm2/dist/include/drm/drm_cache.h diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.3 src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.4 --- src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.3 Sun Jan 19 12:03:27 2020 +++ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h Sun Jan 19 16:12:00 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: drm_cache.h,v 1.3 2020/01/19 12:03:27 jmcneill Exp $ */ +/* $NetBSD: drm_cache.h,v 1.4 2020/01/19 16:12:00 jmcneill Exp $ */ /** * @@ -35,6 +35,10 @@ #ifndef _DRM_CACHE_H_ #define _DRM_CACHE_H_ +#ifdef __NetBSD__ +#include +#endif + void drm_clflush_pages(struct page *pages[], unsigned long num_pages); static inline bool drm_arch_can_wc_memory(void)
CVS commit: src/sys/external/bsd/drm2/dist/include/drm
Module Name:src Committed By: jmcneill Date: Sun Jan 19 16:12:00 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/include/drm: drm_cache.h Log Message: Pull in drm_os_netbsd.h for CONFIG_ defines To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/include/linux
Module Name:src Committed By: skrll Date: Sun Jan 19 15:31:56 UTC 2020 Modified Files: src/sys/external/bsd/drm2/include/linux: mm.h Log Message: Fix build on aarch64 by including uvm_object.h. OK from Riastradh To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/sys/external/bsd/drm2/include/linux/mm.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/include/linux
Module Name:src Committed By: skrll Date: Sun Jan 19 15:31:56 UTC 2020 Modified Files: src/sys/external/bsd/drm2/include/linux: mm.h Log Message: Fix build on aarch64 by including uvm_object.h. OK from Riastradh To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/sys/external/bsd/drm2/include/linux/mm.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/external/bsd/drm2/include/linux/mm.h diff -u src/sys/external/bsd/drm2/include/linux/mm.h:1.11 src/sys/external/bsd/drm2/include/linux/mm.h:1.12 --- src/sys/external/bsd/drm2/include/linux/mm.h:1.11 Fri Jan 17 20:09:47 2020 +++ src/sys/external/bsd/drm2/include/linux/mm.h Sun Jan 19 15:31:56 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: mm.h,v 1.11 2020/01/17 20:09:47 ad Exp $ */ +/* $NetBSD: mm.h,v 1.12 2020/01/19 15:31:56 skrll Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -35,6 +35,7 @@ #include #include +#include #include #include
CVS commit: src/sys/arch/aarch64/aarch64
Module Name:src Committed By: skrll Date: Sun Jan 19 15:08:43 UTC 2020 Modified Files: src/sys/arch/aarch64/aarch64: start.S Log Message: Style. NFCI To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/arch/aarch64/aarch64/start.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/aarch64/aarch64
Module Name:src Committed By: skrll Date: Sun Jan 19 15:08:43 UTC 2020 Modified Files: src/sys/arch/aarch64/aarch64: start.S Log Message: Style. NFCI To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/arch/aarch64/aarch64/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/aarch64/aarch64/start.S diff -u src/sys/arch/aarch64/aarch64/start.S:1.5 src/sys/arch/aarch64/aarch64/start.S:1.6 --- src/sys/arch/aarch64/aarch64/start.S:1.5 Sat Dec 14 17:24:30 2019 +++ src/sys/arch/aarch64/aarch64/start.S Sun Jan 19 15:08:43 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: start.S,v 1.5 2019/12/14 17:24:30 skrll Exp $ */ +/* $NetBSD: start.S,v 1.6 2020/01/19 15:08:43 skrll Exp $ */ /* * Copyright (c) 2017 Ryo Shimizu @@ -32,7 +32,7 @@ #include -RCSID("$NetBSD: start.S,v 1.5 2019/12/14 17:24:30 skrll Exp $") +RCSID("$NetBSD: start.S,v 1.6 2020/01/19 15:08:43 skrll Exp $") /* load far effective address (pc relative) */ .macro ADDR, reg, addr @@ -41,9 +41,10 @@ RCSID("$NetBSD: start.S,v 1.5 2019/12/14 .endm /* - * Padding at start of kernel image to make room for 64-byte header (non-ELF booting) + * Padding at start of kernel image to make room for 64-byte header + * (non-ELF booting) */ -.space 64, 0x0 + .space 64, 0x0 /* * Kernel start routine for aarch64 boards.
CVS commit: src/sys/external/bsd/drm2
Module Name:src Committed By: jmcneill Date: Sun Jan 19 12:03:27 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/include/drm: drm_cache.h src/sys/external/bsd/drm2/include/drm: drm_os_netbsd.h Log Message: Disable the use of WC memory on Arm and Arm64. From Linux: * The DRM driver stack is designed to work with cache coherent devices * only, but permits an optimization to be enabled in some cases, where * for some buffers, both the CPU and the GPU use uncached mappings, * removing the need for DMA snooping and allocation in the CPU caches. * * The use of uncached GPU mappings relies on the correct implementation * of the PCIe NoSnoop TLP attribute by the platform, otherwise the GPU * will use cached mappings nonetheless. On x86 platforms, this does not * seem to matter, as uncached CPU mappings will snoop the caches in any * case. However, on ARM and arm64, enabling this optimization on a * platform where NoSnoop is ignored results in loss of coherency, which * breaks correct operation of the device. Since we have no way of * detecting whether NoSnoop works or not, just disable this * optimization entirely for ARM and arm64. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h cvs rdiff -u -r1.15 -r1.16 \ src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.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/external/bsd/drm2/dist/include/drm/drm_cache.h diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.2 src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.3 --- src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h:1.2 Mon Aug 27 04:58:37 2018 +++ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h Sun Jan 19 12:03:27 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: drm_cache.h,v 1.2 2018/08/27 04:58:37 riastradh Exp $ */ +/* $NetBSD: drm_cache.h,v 1.3 2020/01/19 12:03:27 jmcneill Exp $ */ /** * @@ -43,6 +43,8 @@ static inline bool drm_arch_can_wc_memor return false; #elif defined(CONFIG_MIPS) && defined(CONFIG_CPU_LOONGSON3) return false; +#elif defined(CONFIG_ARM) || defined(CONFIG_ARM64) + return false; #else return true; #endif Index: src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h diff -u src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h:1.15 src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h:1.16 --- src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h:1.15 Tue Nov 5 23:29:28 2019 +++ src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h Sun Jan 19 12:03:27 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: drm_os_netbsd.h,v 1.15 2019/11/05 23:29:28 jmcneill Exp $ */ +/* $NetBSD: drm_os_netbsd.h,v 1.16 2020/01/19 12:03:27 jmcneill Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -41,6 +41,14 @@ #define CONFIG_X86_PAT 1 #endif +#if defined(__arm__) +#define CONFIG_ARM 1 +#endif + +#if defined(__aarch64__) +#define CONFIG_ARM64 1 +#endif + /* * Nothing meaningfully depends on this; defining this avoids patching * away some conditionalization in drmP.h.
CVS commit: src/sys/external/bsd/drm2
Module Name:src Committed By: jmcneill Date: Sun Jan 19 12:03:27 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/include/drm: drm_cache.h src/sys/external/bsd/drm2/include/drm: drm_os_netbsd.h Log Message: Disable the use of WC memory on Arm and Arm64. From Linux: * The DRM driver stack is designed to work with cache coherent devices * only, but permits an optimization to be enabled in some cases, where * for some buffers, both the CPU and the GPU use uncached mappings, * removing the need for DMA snooping and allocation in the CPU caches. * * The use of uncached GPU mappings relies on the correct implementation * of the PCIe NoSnoop TLP attribute by the platform, otherwise the GPU * will use cached mappings nonetheless. On x86 platforms, this does not * seem to matter, as uncached CPU mappings will snoop the caches in any * case. However, on ARM and arm64, enabling this optimization on a * platform where NoSnoop is ignored results in loss of coherency, which * breaks correct operation of the device. Since we have no way of * detecting whether NoSnoop works or not, just disable this * optimization entirely for ARM and arm64. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/sys/external/bsd/drm2/dist/include/drm/drm_cache.h cvs rdiff -u -r1.15 -r1.16 \ src/sys/external/bsd/drm2/include/drm/drm_os_netbsd.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: leot Date: Sun Jan 19 11:29:42 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Fix a typo To generate a diff of this commit: cvs rdiff -u -r1.2637 -r1.2638 src/doc/CHANGES Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: leot Date: Sun Jan 19 11:29:42 UTC 2020 Modified Files: src/doc: CHANGES Log Message: Fix a typo To generate a diff of this commit: cvs rdiff -u -r1.2637 -r1.2638 src/doc/CHANGES 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 diff -u src/doc/CHANGES:1.2637 src/doc/CHANGES:1.2638 --- src/doc/CHANGES:1.2637 Sun Jan 19 06:57:39 2020 +++ src/doc/CHANGES Sun Jan 19 11:29:42 2020 @@ -1,4 +1,4 @@ -# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2637 $> +# LIST OF CHANGES FROM LAST RELEASE: <$Revision: 1.2638 $> # # # [Note: This file does not mention every change made to the NetBSD source tree. @@ -99,4 +99,4 @@ Changes from NetBSD 9.0 to NetBSD 10.0: [mrg 20201114] uyurex(4): Removed from the tree. [maya 20200117] strip(4): Removed from the tree. [thorpej 20200118] - hippi and esh(4): Removed from the trere. [thorpej 20200118] + hippi and esh(4): Removed from the tree. [thorpej 20200118]
CVS commit: src/sys/external/bsd/drm2/dist/drm/radeon
Module Name:src Committed By: jmcneill Date: Sun Jan 19 11:07:00 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/radeon: radeon_vce.c Log Message: Fix loading TAHITI VCE firmware. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/external/bsd/drm2/dist/drm/radeon
Module Name:src Committed By: jmcneill Date: Sun Jan 19 11:07:00 UTC 2020 Modified Files: src/sys/external/bsd/drm2/dist/drm/radeon: radeon_vce.c Log Message: Fix loading TAHITI VCE firmware. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c:1.3 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c:1.4 --- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c:1.3 Mon Aug 27 04:58:36 2018 +++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_vce.c Sun Jan 19 11:07:00 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: radeon_vce.c,v 1.3 2018/08/27 04:58:36 riastradh Exp $ */ +/* $NetBSD: radeon_vce.c,v 1.4 2020/01/19 11:07:00 jmcneill Exp $ */ /* * Copyright 2013 Advanced Micro Devices, Inc. @@ -28,7 +28,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: radeon_vce.c,v 1.3 2018/08/27 04:58:36 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: radeon_vce.c,v 1.4 2020/01/19 11:07:00 jmcneill Exp $"); #include #include @@ -53,34 +53,38 @@ static void radeon_vce_idle_work_handler #ifdef __NetBSD__ /* XXX Ugh! */ static bool -scan_2dec_u8(const char **sp, char delim, uint8_t *u8p) +scan_2dec_uint(const char **sp, char delim, unsigned int *uintp) { - char c0, c1; + u_int val = 0, n; + char c; - if (!isdigit((unsigned char)(c0 = *(*sp)++))) - return false; - if (!isdigit((unsigned char)(c1 = *(*sp)++))) - return false; - if (*(*sp)++ != delim) + for (n = 0; n < 2; n++) { + c = *(*sp)++; + if (!isdigit((unsigned char)c)) + return false; + if (n != 0) + val *= 10; + val += (c - '0'); + if (*(*sp) == delim) + break; + } + if (*(*sp) != delim) return false; - *u8p = ((c0 - '0') * 10) + (c1 - '0'); + (*sp)++; + *uintp = val; return true; } static bool -scan_2dec_uint(const char **sp, char delim, unsigned int *uintp) +scan_2dec_u8(const char **sp, char delim, uint8_t *u8p) { - char c0, c1; + unsigned int val; - if (!isdigit((unsigned char)(c0 = *(*sp)++))) - return false; - if (!isdigit((unsigned char)(c1 = *(*sp)++))) - return false; - if (*(*sp)++ != delim) + if (!scan_2dec_uint(sp, delim, )) return false; - *uintp = ((c0 - '0') * 10) + (c1 - '0'); + *u8p = (uint8_t)val; return true; } #endif
CVS commit: src/sys/arch/arm/arm32
Module Name:src Committed By: skrll Date: Sun Jan 19 10:59:56 UTC 2020 Modified Files: src/sys/arch/arm/arm32: pmap.c Log Message: Fix non-ARM_MMU_EXTENDED buildx To generate a diff of this commit: cvs rdiff -u -r1.380 -r1.381 src/sys/arch/arm/arm32/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/arm/arm32/pmap.c diff -u src/sys/arch/arm/arm32/pmap.c:1.380 src/sys/arch/arm/arm32/pmap.c:1.381 --- src/sys/arch/arm/arm32/pmap.c:1.380 Sat Jan 18 14:40:04 2020 +++ src/sys/arch/arm/arm32/pmap.c Sun Jan 19 10:59:56 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.380 2020/01/18 14:40:04 skrll Exp $ */ +/* $NetBSD: pmap.c,v 1.381 2020/01/19 10:59:56 skrll Exp $ */ /* * Copyright 2003 Wasabi Systems, Inc. @@ -221,7 +221,7 @@ #include #endif -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.380 2020/01/18 14:40:04 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.381 2020/01/19 10:59:56 skrll Exp $"); //#define PMAP_DEBUG #ifdef PMAP_DEBUG @@ -745,7 +745,6 @@ static void pmap_use_l1(pmap_t); static struct l2_bucket *pmap_get_l2_bucket(pmap_t, vaddr_t); static struct l2_bucket *pmap_alloc_l2_bucket(pmap_t, vaddr_t); -static int pmap_l1tt_ctor(void *, void *, int); static void pmap_free_l2_bucket(pmap_t, struct l2_bucket *, u_int); static int pmap_l2ptp_ctor(void *, void *, int); static int pmap_l2dtable_ctor(void *, void *, int); @@ -780,18 +779,17 @@ static void pmap_init_l1(struct l1_ttab static vaddr_t kernel_pt_lookup(paddr_t); #ifdef ARM_MMU_EXTENDED - static struct pool_cache pmap_l1tt_cache; -static void *pmap_l1tt_alloc(struct pool *, int); -static void pmap_l1tt_free(struct pool *, void *); +static int pmap_l1tt_ctor(void *, void *, int); +static void * pmap_l1tt_alloc(struct pool *, int); +static void pmap_l1tt_free(struct pool *, void *); static struct pool_allocator pmap_l1tt_allocator = { .pa_alloc = pmap_l1tt_alloc, .pa_free = pmap_l1tt_free, .pa_pagesz = L1TT_SIZE, }; - #endif /*
CVS commit: src/sys/arch/arm/arm32
Module Name:src Committed By: skrll Date: Sun Jan 19 10:59:56 UTC 2020 Modified Files: src/sys/arch/arm/arm32: pmap.c Log Message: Fix non-ARM_MMU_EXTENDED buildx To generate a diff of this commit: cvs rdiff -u -r1.380 -r1.381 src/sys/arch/arm/arm32/pmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/distrib/sets/lists
Module Name:src Committed By: martin Date: Sun Jan 19 10:50:26 UTC 2020 Modified Files: src/distrib/sets/lists/comp: mi src/distrib/sets/lists/debug: mi src/distrib/sets/lists/man: mi Log Message: Fix set lists after HIPPI removal To generate a diff of this commit: cvs rdiff -u -r1.2301 -r1.2302 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.291 -r1.292 src/distrib/sets/lists/debug/mi cvs rdiff -u -r1.1670 -r1.1671 src/distrib/sets/lists/man/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.2301 src/distrib/sets/lists/comp/mi:1.2302 --- src/distrib/sets/lists/comp/mi:1.2301 Sun Jan 19 06:55:22 2020 +++ src/distrib/sets/lists/comp/mi Sun Jan 19 10:50:25 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.2301 2020/01/19 06:55:22 thorpej Exp $ +# $NetBSD: mi,v 1.2302 2020/01/19 10:50:25 martin Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. ./etc/mtree/set.compcomp-sys-root @@ -2348,7 +2348,7 @@ ./usr/include/net/if_fddi.h comp-c-include ./usr/include/net/if_gif.h comp-c-include ./usr/include/net/if_gre.h comp-c-include -./usr/include/net/if_hippi.h comp-c-include +./usr/include/net/if_hippi.h comp-obsolete obsolete ./usr/include/net/if_ieee1394.h comp-c-include ./usr/include/net/if_ieee80211.h comp-obsolete obsolete ./usr/include/net/if_ipsec.h comp-c-include Index: src/distrib/sets/lists/debug/mi diff -u src/distrib/sets/lists/debug/mi:1.291 src/distrib/sets/lists/debug/mi:1.292 --- src/distrib/sets/lists/debug/mi:1.291 Sat Jan 18 17:18:41 2020 +++ src/distrib/sets/lists/debug/mi Sun Jan 19 10:50:26 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.291 2020/01/18 17:18:41 kre Exp $ +# $NetBSD: mi,v 1.292 2020/01/19 10:50:26 martin Exp $ ./etc/mtree/set.debug comp-sys-root ./usr/lib comp-sys-usr compatdir ./usr/lib/i18n/libBIG5_g.a comp-c-debuglib debuglib,compatfile @@ -1065,7 +1065,7 @@ ./usr/libdata/debug/usr/sbin/dumplfs.debug comp-sysutil-debug debug ./usr/libdata/debug/usr/sbin/edquota.debug comp-sysutil-debug debug ./usr/libdata/debug/usr/sbin/envstat.debug comp-sysutil-debug debug -./usr/libdata/debug/usr/sbin/eshconfig.debug comp-sysutil-debug debug +./usr/libdata/debug/usr/sbin/eshconfig.debug comp-obsolete obsolete ./usr/libdata/debug/usr/sbin/extattrctl.debug comp-sysutil-debug debug ./usr/libdata/debug/usr/sbin/faithd.debug comp-router-debug inet6,debug ./usr/libdata/debug/usr/sbin/fixmount.debug comp-nfsclient-debug debug Index: src/distrib/sets/lists/man/mi diff -u src/distrib/sets/lists/man/mi:1.1670 src/distrib/sets/lists/man/mi:1.1671 --- src/distrib/sets/lists/man/mi:1.1670 Sun Jan 19 01:25:03 2020 +++ src/distrib/sets/lists/man/mi Sun Jan 19 10:50:26 2020 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.1670 2020/01/19 01:25:03 thorpej Exp $ +# $NetBSD: mi,v 1.1671 2020/01/19 10:50:26 martin Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -2532,7 +2532,7 @@ ./usr/share/man/cat8/emips/makedev.0 man-obsolete obsolete ./usr/share/man/cat8/envstat.0 man-sysutil-catman .cat ./usr/share/man/cat8/error.0 man-postfix-catman postfix,.cat -./usr/share/man/cat8/eshconfig.0 man-sysutil-catman .cat +./usr/share/man/cat8/eshconfig.0 man-obsolete obsolete ./usr/share/man/cat8/etcupdate.0 man-sysutil-catman .cat ./usr/share/man/cat8/evbarm/MAKEDEV.0 man-obsolete obsolete ./usr/share/man/cat8/evbarm/bootmini2440.0 man-sysutil-catman .cat @@ -5567,7 +5567,7 @@ ./usr/share/man/html8/emips/boot.html man-sys-htmlman html ./usr/share/man/html8/envstat.html man-sysutil-htmlman html ./usr/share/man/html8/error.html man-postfix-htmlman postfix,html -./usr/share/man/html8/eshconfig.html man-sysutil-htmlman html +./usr/share/man/html8/eshconfig.html man-obsolete obsolete ./usr/share/man/html8/etcupdate.html man-sysutil-htmlman html ./usr/share/man/html8/evbarm/bootmini2440.html man-sysutil-htmlman html ./usr/share/man/html8/evbarm/elftosb.html man-sysutil-htmlman html,cxx @@ -8667,11 +8667,11 @@ ./usr/share/man/man8/eeprom.8 man-sysutil-man .man ./usr/share/man/man8/emips/MAKEDEV.8 man-obsolete obsolete ./usr/share/man/man8/emips/boot.8 man-sys-man .man -./usr/share/man/man8/emips/installboot.8 man-obsolete obsolete +./usr/share/man/man8/emips/installboot.8 man-obsolete obsolete ./usr/share/man/man8/emips/makedev.8 man-obsolete obsolete ./usr/share/man/man8/envstat.8 man-sysutil-man .man ./usr/share/man/man8/error.8 man-postfix-man postfix,.man -./usr/share/man/man8/eshconfig.8 man-sysutil-man .man +./usr/share/man/man8/eshconfig.8 man-obsolete obsolete ./usr/share/man/man8/etcupdate.8 man-sysutil-man .man ./usr/share/man/man8/evbarm/MAKEDEV.8 man-obsolete obsolete ./usr/share/man/man8/evbarm/bootmini2440.8 man-sysutils-man .man
CVS commit: src/distrib/sets/lists
Module Name:src Committed By: martin Date: Sun Jan 19 10:50:26 UTC 2020 Modified Files: src/distrib/sets/lists/comp: mi src/distrib/sets/lists/debug: mi src/distrib/sets/lists/man: mi Log Message: Fix set lists after HIPPI removal To generate a diff of this commit: cvs rdiff -u -r1.2301 -r1.2302 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.291 -r1.292 src/distrib/sets/lists/debug/mi cvs rdiff -u -r1.1670 -r1.1671 src/distrib/sets/lists/man/mi Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src
Module Name:src Committed By: jmcneill Date: Sun Jan 19 10:45:50 UTC 2020 Modified Files: src/distrib/sets/lists/xdebug: md.evbarm src/distrib/sets/lists/xserver: md.evbarm src/external/mit/xorg/server/drivers: Makefile Log Message: Build ati driver on evbarm. To generate a diff of this commit: cvs rdiff -u -r1.25 -r1.26 src/distrib/sets/lists/xdebug/md.evbarm cvs rdiff -u -r1.18 -r1.19 src/distrib/sets/lists/xserver/md.evbarm cvs rdiff -u -r1.98 -r1.99 src/external/mit/xorg/server/drivers/Makefile 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/xdebug/md.evbarm diff -u src/distrib/sets/lists/xdebug/md.evbarm:1.25 src/distrib/sets/lists/xdebug/md.evbarm:1.26 --- src/distrib/sets/lists/xdebug/md.evbarm:1.25 Sun Jan 19 00:58:14 2020 +++ src/distrib/sets/lists/xdebug/md.evbarm Sun Jan 19 10:45:49 2020 @@ -1,4 +1,4 @@ -# $NetBSD: md.evbarm,v 1.25 2020/01/19 00:58:14 jmcneill Exp $ +# $NetBSD: md.evbarm,v 1.26 2020/01/19 10:45:49 jmcneill Exp $ ./usr/X11R7/lib/libdrm_amdgpu_g.a xdebug-libdrm_amdgpu-debuglib xorg,debuglib,compatx11file ./usr/X11R7/lib/libdrm_nouveau_g.a xdebug-libdrm_nouveau-debuglib xorg,debuglib ./usr/X11R7/lib/libvdpau_g.axdebug-libvdpau-debuglib xorg,debuglib @@ -29,6 +29,8 @@ ./usr/libdata/debug/usr/X11R7/lib/modules/dri/r300_dri.so.0.debug xdebug-gallium-debug xorg,debug,llvmrt ./usr/libdata/debug/usr/X11R7/lib/modules/dri/r600_dri.so.0.debug xdebug-xf86-video-radeon-debug xorg,debug,llvmrt ./usr/libdata/debug/usr/X11R7/lib/modules/dri/radeon_dri.so.0.debug xdebug-xf86-video-radeon-debug xorg,debug +./usr/libdata/debug/usr/X11R7/lib/modules/drivers/ati_drv.so.6.debug xdebug-xf86-video-ati-debug xorg,debug +./usr/libdata/debug/usr/X11R7/lib/modules/drivers/libati_drv.so.6.debug xdebug-obsolete xorg,obsolete ./usr/libdata/debug/usr/X11R7/lib/modules/drivers/kbd_drv.so.1.debug xdebug-xf86-input-keyboard-debug xorg,debug ./usr/libdata/debug/usr/X11R7/lib/modules/drivers/libkbd_drv.so.1.debug xdebug-obsolete xorg,obsolete ./usr/libdata/debug/usr/X11R7/lib/modules/drivers/libmouse_drv.so.1.debug xdebug-obsolete xorg,obsolete Index: src/distrib/sets/lists/xserver/md.evbarm diff -u src/distrib/sets/lists/xserver/md.evbarm:1.18 src/distrib/sets/lists/xserver/md.evbarm:1.19 --- src/distrib/sets/lists/xserver/md.evbarm:1.18 Sun Jan 19 00:58:14 2020 +++ src/distrib/sets/lists/xserver/md.evbarm Sun Jan 19 10:45:50 2020 @@ -1,4 +1,4 @@ -# $NetBSD: md.evbarm,v 1.18 2020/01/19 00:58:14 jmcneill Exp $ +# $NetBSD: md.evbarm,v 1.19 2020/01/19 10:45:50 jmcneill Exp $ ./usr/X11R7/bin/X xserver-xorg-server-bin xorg ./usr/X11R7/bin/Xorg xserver-xorg-server-bin xorg ./usr/X11R7/bin/cvt xserver-xorg-server-bin xorg @@ -18,6 +18,8 @@ ./usr/X11R7/lib/modules/dri/r600_dri.so.0 xserver-xf86-video-radeon-drivers xorg,llvmrt ./usr/X11R7/lib/modules/dri/radeon_dri.so xserver-xf86-video-radeon-drivers xorg ./usr/X11R7/lib/modules/dri/radeon_dri.so.0 xserver-xf86-video-radeon-drivers xorg +./usr/X11R7/lib/modules/drivers/ati_drv.so xserver-xf86-video-ati-drivers xorg +./usr/X11R7/lib/modules/drivers/ati_drv.so.6 xserver-xf86-video-ati-drivers xorg ./usr/X11R7/lib/modules/drivers/kbd_drv.so xserver-xf86-input-keyboard-drivers xorg ./usr/X11R7/lib/modules/drivers/kbd_drv.so.1 xserver-xf86-input-keyboard-drivers xorg ./usr/X11R7/lib/modules/drivers/modesetting_drv.so xserver-modesetting-drivers xorg @@ -107,6 +109,7 @@ ./usr/X11R7/man/cat1/Xorg.0xserver-xorg-server-catman .cat,xorg ./usr/X11R7/man/cat1/cvt.0xserver-xorg-server-catman .cat,xorg ./usr/X11R7/man/cat1/gtf.0xserver-xorg-server-catman .cat,xorg +./usr/X11R7/man/cat4/ati.0xserver-xf86-video-ati-catman .cat,xorg ./usr/X11R7/man/cat4/exa.0xserver-xf86-video-exa-catman .cat,xorg ./usr/X11R7/man/cat4/kbd.0xserver-xf86-input-keyboard-catman .cat,xorg ./usr/X11R7/man/cat4/modesetting.0 xserver-modesetting-catman .cat,xorg @@ -118,6 +121,7 @@ ./usr/X11R7/man/html1/Xorg.htmlxserver-xorg-server-htmlman html,xorg ./usr/X11R7/man/html1/cvt.htmlxserver-xorg-server-htmlman html,xorg ./usr/X11R7/man/html1/gtf.htmlxserver-xorg-server-htmlman html,xorg +./usr/X11R7/man/html4/ati.htmlxserver-xf86-video-ati-htmlman html,xorg ./usr/X11R7/man/html4/exa.htmlxserver-xf86-video-exa-htmlman html,xorg ./usr/X11R7/man/html4/evbarm/radeon.html xserver-xf86-video-radeon-htmlman html,xorg ./usr/X11R7/man/html4/kbd.htmlxserver-xf86-input-keyboard-htmlman html,xorg @@ -132,6 +136,7 @@ ./usr/X11R7/man/man1/Xorg.1xserver-xorg-server-man .man,xorg ./usr/X11R7/man/man1/cvt.1xserver-xorg-server-man .man,xorg ./usr/X11R7/man/man1/gtf.1xserver-xorg-server-man .man,xorg +./usr/X11R7/man/man4/ati.4xserver-xf86-video-ati-man .man,xorg ./usr/X11R7/man/man4/exa.4xserver-xf86-video-exa-man .man,xorg
CVS commit: src
Module Name:src Committed By: jmcneill Date: Sun Jan 19 10:45:50 UTC 2020 Modified Files: src/distrib/sets/lists/xdebug: md.evbarm src/distrib/sets/lists/xserver: md.evbarm src/external/mit/xorg/server/drivers: Makefile Log Message: Build ati driver on evbarm. To generate a diff of this commit: cvs rdiff -u -r1.25 -r1.26 src/distrib/sets/lists/xdebug/md.evbarm cvs rdiff -u -r1.18 -r1.19 src/distrib/sets/lists/xserver/md.evbarm cvs rdiff -u -r1.98 -r1.99 src/external/mit/xorg/server/drivers/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/mit/xorg/server/drivers/xf86-video-radeon-kms
Module Name:src Committed By: martin Date: Sun Jan 19 10:44:51 UTC 2020 Modified Files: src/external/mit/xorg/server/drivers/xf86-video-radeon-kms: Makefile Log Message: Fix conditional in previous To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 \ src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/mit/xorg/server/drivers/xf86-video-radeon-kms
Module Name:src Committed By: martin Date: Sun Jan 19 10:44:51 UTC 2020 Modified Files: src/external/mit/xorg/server/drivers/xf86-video-radeon-kms: Makefile Log Message: Fix conditional in previous To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 \ src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/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/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile diff -u src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile:1.10 src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile:1.11 --- src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile:1.10 Sun Jan 19 00:58:15 2020 +++ src/external/mit/xorg/server/drivers/xf86-video-radeon-kms/Makefile Sun Jan 19 10:44:51 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.10 2020/01/19 00:58:15 jmcneill Exp $ +# $NetBSD: Makefile,v 1.11 2020/01/19 10:44:51 martin Exp $ .include @@ -47,7 +47,7 @@ SRCS= radeon_accel.c radeon_video.c \ MAN= radeon.4 -.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" MANSUBDIR= /x86 .else MANSUBDIR= /${MACHINE}
Re: CVS commit: src/doc
On 19.01.2020 07:57, Jason R Thorpe wrote: > Module Name: src > Committed By: thorpej > Date: Sun Jan 19 06:57:39 UTC 2020 > > Modified Files: > src/doc: CHANGES > > Log Message: > Note removal of HIPPI support. Thanks! Please keep in sync src/doc/TODO.smpnet. signature.asc Description: OpenPGP digital signature