CVS commit: src/sys/arch/arm/sunxi
Module Name:src Committed By: msaitoh Date: Mon Oct 21 08:00:59 UTC 2019 Modified Files: src/sys/arch/arm/sunxi: sunxi_can.c Log Message: if_ipackets is incremented in can_input(), so don't increment it in sunxi_can_rx_intr to prevent double count. OK'd by bouyer@. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/sunxi/sunxi_can.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/arm/sunxi/sunxi_can.c diff -u src/sys/arch/arm/sunxi/sunxi_can.c:1.1 src/sys/arch/arm/sunxi/sunxi_can.c:1.2 --- src/sys/arch/arm/sunxi/sunxi_can.c:1.1 Wed Mar 7 20:55:31 2018 +++ src/sys/arch/arm/sunxi/sunxi_can.c Mon Oct 21 08:00:58 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: sunxi_can.c,v 1.1 2018/03/07 20:55:31 bouyer Exp $ */ +/* $NetBSD: sunxi_can.c,v 1.2 2019/10/21 08:00:58 msaitoh Exp $ */ /*- * Copyright (c) 2017,2018 The NetBSD Foundation, Inc. @@ -36,7 +36,7 @@ #include -__KERNEL_RCSID(1, "$NetBSD: sunxi_can.c,v 1.1 2018/03/07 20:55:31 bouyer Exp $"); +__KERNEL_RCSID(1, "$NetBSD: sunxi_can.c,v 1.2 2019/10/21 08:00:58 msaitoh Exp $"); #include #include @@ -292,7 +292,6 @@ sunxi_can_rx_intr(struct sunxi_can_softc } sunxi_can_write(sc, SUNXI_CAN_CMD_REG, SUNXI_CAN_CMD_REL_RX_BUF); m->m_len = m->m_pkthdr.len = CAN_MTU; - ifp->if_ipackets++; ifp->if_ibytes += m->m_len; m_set_rcvif(m, ifp); can_bpf_mtap(ifp, m, 1);
CVS commit: src/sys/arch/arm/sunxi
Module Name:src Committed By: msaitoh Date: Mon Oct 21 08:00:59 UTC 2019 Modified Files: src/sys/arch/arm/sunxi: sunxi_can.c Log Message: if_ipackets is incremented in can_input(), so don't increment it in sunxi_can_rx_intr to prevent double count. OK'd by bouyer@. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/sunxi/sunxi_can.c 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: msaitoh Date: Mon Oct 21 08:22:06 UTC 2019 Modified Files: src/sys/arch/arm/ep93xx: epe.c src/sys/arch/mac68k/nubus: if_netdock_nubus.c src/sys/dev/ic: i82586.c src/sys/dev/pcmcia: if_cnw.c if_ray.c src/sys/dev/qbus: if_il.c if_qt.c Log Message: if_percpuq(9) automatically increments if_ipackets, so don't increment it in the driver itself to prevent double count. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/arch/arm/ep93xx/epe.c cvs rdiff -u -r1.30 -r1.31 src/sys/arch/mac68k/nubus/if_netdock_nubus.c cvs rdiff -u -r1.85 -r1.86 src/sys/dev/ic/i82586.c cvs rdiff -u -r1.65 -r1.66 src/sys/dev/pcmcia/if_cnw.c cvs rdiff -u -r1.94 -r1.95 src/sys/dev/pcmcia/if_ray.c cvs rdiff -u -r1.35 -r1.36 src/sys/dev/qbus/if_il.c cvs rdiff -u -r1.23 -r1.24 src/sys/dev/qbus/if_qt.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/ep93xx/epe.c diff -u src/sys/arch/arm/ep93xx/epe.c:1.44 src/sys/arch/arm/ep93xx/epe.c:1.45 --- src/sys/arch/arm/ep93xx/epe.c:1.44 Thu May 30 02:32:17 2019 +++ src/sys/arch/arm/ep93xx/epe.c Mon Oct 21 08:22:06 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: epe.c,v 1.44 2019/05/30 02:32:17 msaitoh Exp $ */ +/* $NetBSD: epe.c,v 1.45 2019/10/21 08:22:06 msaitoh Exp $ */ /* * Copyright (c) 2004 Jesse Off @@ -27,7 +27,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: epe.c,v 1.44 2019/05/30 02:32:17 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: epe.c,v 1.45 2019/10/21 08:22:06 msaitoh Exp $"); #include #include @@ -256,7 +256,6 @@ begin: } if (ndq > 0) { - ifp->if_ipackets += ndq; CTRLPAGE_DMASYNC(TX_QLEN * 3 * sizeof(uint32_t), RX_QLEN * 4 * sizeof(uint32_t), BUS_DMASYNC_PREWRITE | BUS_DMASYNC_PREREAD); Index: src/sys/arch/mac68k/nubus/if_netdock_nubus.c diff -u src/sys/arch/mac68k/nubus/if_netdock_nubus.c:1.30 src/sys/arch/mac68k/nubus/if_netdock_nubus.c:1.31 --- src/sys/arch/mac68k/nubus/if_netdock_nubus.c:1.30 Fri Sep 13 07:55:06 2019 +++ src/sys/arch/mac68k/nubus/if_netdock_nubus.c Mon Oct 21 08:22:06 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_netdock_nubus.c,v 1.30 2019/09/13 07:55:06 msaitoh Exp $ */ +/* $NetBSD: if_netdock_nubus.c,v 1.31 2019/10/21 08:22:06 msaitoh Exp $ */ /* * Copyright (C) 2000,2002 Daishi Kato @@ -43,7 +43,7 @@ /***/ #include -__KERNEL_RCSID(0, "$NetBSD: if_netdock_nubus.c,v 1.30 2019/09/13 07:55:06 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_netdock_nubus.c,v 1.31 2019/10/21 08:22:06 msaitoh Exp $"); #include #include @@ -725,9 +725,7 @@ netdock_rxint(struct netdock_softc *sc) len -= ETHER_CRC_LEN; if ((regdata1 & 0x00ac) == 0) { - if (netdock_read(sc, len)) -ifp->if_ipackets++; - else + if (netdock_read(sc, len) == 0) ifp->if_ierrors++; } else { ifp->if_ierrors++; Index: src/sys/dev/ic/i82586.c diff -u src/sys/dev/ic/i82586.c:1.85 src/sys/dev/ic/i82586.c:1.86 --- src/sys/dev/ic/i82586.c:1.85 Wed May 29 10:07:29 2019 +++ src/sys/dev/ic/i82586.c Mon Oct 21 08:22:06 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: i82586.c,v 1.85 2019/05/29 10:07:29 msaitoh Exp $ */ +/* $NetBSD: i82586.c,v 1.86 2019/10/21 08:22:06 msaitoh Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -137,7 +137,7 @@ Mode of operation: */ #include -__KERNEL_RCSID(0, "$NetBSD: i82586.c,v 1.85 2019/05/29 10:07:29 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: i82586.c,v 1.86 2019/10/21 08:22:06 msaitoh Exp $"); #include @@ -1041,7 +1041,6 @@ ie_readframe( * Finally pass this packet up to higher layers. */ if_percpuq_enqueue((&sc->sc_ethercom.ec_if)->if_percpuq, m); - sc->sc_ethercom.ec_if.if_ipackets++; return (0); } Index: src/sys/dev/pcmcia/if_cnw.c diff -u src/sys/dev/pcmcia/if_cnw.c:1.65 src/sys/dev/pcmcia/if_cnw.c:1.66 --- src/sys/dev/pcmcia/if_cnw.c:1.65 Tue Feb 5 06:17:03 2019 +++ src/sys/dev/pcmcia/if_cnw.c Mon Oct 21 08:22:06 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_cnw.c,v 1.65 2019/02/05 06:17:03 msaitoh Exp $ */ +/* $NetBSD: if_cnw.c,v 1.66 2019/10/21 08:22:06 msaitoh Exp $ */ /*- * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc. @@ -105,7 +105,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_cnw.c,v 1.65 2019/02/05 06:17:03 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_cnw.c,v 1.66 2019/10/21 08:22:06 msaitoh Exp $"); #include "opt_inet.h" @@ -848,7 +848,6 @@ cnw_recv(struct cnw_softc *sc) ++ifp->if_ierrors; return; } - ++ifp->if_ipackets; /* Pass the packet up. */ if_percpuq_enqueue(ifp->if_percpuq, m); Index: src/sys/dev/pcmcia/if_ray.c diff -u src/sys/dev/pcmcia/if_ray.c:1.94 src/sys/dev/pcmcia/if_ray.c:1.95 --- src/sys/dev/pcmcia/if_ray.c:1.94 Tue May 28 07:41:49 2019 +++ src/sys/dev/pcmcia/if_ray.c Mon Oct 21 08:22:06 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_ray.c,v 1.94 2019/05/28 07:41:49 msaitoh Exp $ */ +/* $NetBSD: if_ray.c
CVS commit: src/sys
Module Name:src Committed By: msaitoh Date: Mon Oct 21 08:22:06 UTC 2019 Modified Files: src/sys/arch/arm/ep93xx: epe.c src/sys/arch/mac68k/nubus: if_netdock_nubus.c src/sys/dev/ic: i82586.c src/sys/dev/pcmcia: if_cnw.c if_ray.c src/sys/dev/qbus: if_il.c if_qt.c Log Message: if_percpuq(9) automatically increments if_ipackets, so don't increment it in the driver itself to prevent double count. To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/arch/arm/ep93xx/epe.c cvs rdiff -u -r1.30 -r1.31 src/sys/arch/mac68k/nubus/if_netdock_nubus.c cvs rdiff -u -r1.85 -r1.86 src/sys/dev/ic/i82586.c cvs rdiff -u -r1.65 -r1.66 src/sys/dev/pcmcia/if_cnw.c cvs rdiff -u -r1.94 -r1.95 src/sys/dev/pcmcia/if_ray.c cvs rdiff -u -r1.35 -r1.36 src/sys/dev/qbus/if_il.c cvs rdiff -u -r1.23 -r1.24 src/sys/dev/qbus/if_qt.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: maxv Date: Mon Oct 21 10:09:24 UTC 2019 Modified Files: src/sys/arch/x86/x86: identcpu.c Log Message: Call cpu_probe_fpu() only once (from cpu0), and style. To generate a diff of this commit: cvs rdiff -u -r1.96 -r1.97 src/sys/arch/x86/x86/identcpu.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: maxv Date: Mon Oct 21 10:09:24 UTC 2019 Modified Files: src/sys/arch/x86/x86: identcpu.c Log Message: Call cpu_probe_fpu() only once (from cpu0), and style. To generate a diff of this commit: cvs rdiff -u -r1.96 -r1.97 src/sys/arch/x86/x86/identcpu.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/identcpu.c diff -u src/sys/arch/x86/x86/identcpu.c:1.96 src/sys/arch/x86/x86/identcpu.c:1.97 --- src/sys/arch/x86/x86/identcpu.c:1.96 Thu Oct 3 05:06:29 2019 +++ src/sys/arch/x86/x86/identcpu.c Mon Oct 21 10:09:24 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: identcpu.c,v 1.96 2019/10/03 05:06:29 maxv Exp $ */ +/* $NetBSD: identcpu.c,v 1.97 2019/10/21 10:09:24 maxv Exp $ */ /*- * Copyright (c) 1999, 2000, 2001, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: identcpu.c,v 1.96 2019/10/03 05:06:29 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: identcpu.c,v 1.97 2019/10/21 10:09:24 maxv Exp $"); #include "opt_xen.h" @@ -736,7 +736,7 @@ cpu_probe_vortex86(struct cpu_info *ci) } static void -cpu_probe_old_fpu(struct cpu_info *ci) +cpu_probe_fpu_old(struct cpu_info *ci) { #if defined(__i386__) && !defined(XENPV) @@ -764,8 +764,7 @@ cpu_probe_fpu(struct cpu_info *ci) /* If we have FXSAVE/FXRESTOR, use them. */ if ((ci->ci_feat_val[0] & CPUID_FXSR) == 0) { i386_use_fxsave = 0; - /* Allow for no fpu even if cpuid is supported */ - cpu_probe_old_fpu(ci); + cpu_probe_fpu_old(ci); return; } @@ -788,14 +787,14 @@ cpu_probe_fpu(struct cpu_info *ci) x86_fpu_save = FPU_SAVE_FXSAVE; x86_fpu_save_size = sizeof(struct fxsave); - /* See if xsave (for AVX) is supported */ + /* See if XSAVE is supported */ if ((ci->ci_feat_val[1] & CPUID2_XSAVE) == 0) return; #ifdef XENPV /* * Xen kernel can disable XSAVE via "no-xsave" option, in that case - * XSAVE instructions like xrstor become privileged and trigger + * the XSAVE/XRSTOR instructions become privileged and trigger * supervisor trap. OSXSAVE flag seems to be reliably set according * to whether XSAVE is actually available. */ @@ -843,7 +842,7 @@ cpu_probe(struct cpu_info *ci) if (cpuid_level < 0) { /* cpuid instruction not supported */ - cpu_probe_old_fpu(ci); + cpu_probe_fpu_old(ci); return; } @@ -949,7 +948,9 @@ cpu_probe(struct cpu_info *ci) cpu_probe_geode(ci); cpu_probe_vortex86(ci); - cpu_probe_fpu(ci); + if (ci == &cpu_info_primary) { + cpu_probe_fpu(ci); + } x86_cpu_topology(ci);
CVS commit: src/distrib/sets/lists/xcomp
Module Name:src Committed By: uki Date: Mon Oct 21 11:59:01 UTC 2019 Modified Files: src/distrib/sets/lists/xcomp: mi Log Message: Give syspkg names. catman, htmlman, man are remaining To generate a diff of this commit: cvs rdiff -u -r1.211 -r1.212 src/distrib/sets/lists/xcomp/mi 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/xcomp
Module Name:src Committed By: uki Date: Mon Oct 21 11:59:01 UTC 2019 Modified Files: src/distrib/sets/lists/xcomp: mi Log Message: Give syspkg names. catman, htmlman, man are remaining To generate a diff of this commit: cvs rdiff -u -r1.211 -r1.212 src/distrib/sets/lists/xcomp/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/xcomp/mi diff -u src/distrib/sets/lists/xcomp/mi:1.211 src/distrib/sets/lists/xcomp/mi:1.212 --- src/distrib/sets/lists/xcomp/mi:1.211 Tue Oct 15 04:25:44 2019 +++ src/distrib/sets/lists/xcomp/mi Mon Oct 21 11:59:01 2019 @@ -1,4 +1,4 @@ -# $NetBSD: mi,v 1.211 2019/10/15 04:25:44 uki Exp $ +# $NetBSD: mi,v 1.212 2019/10/21 11:59:01 uki Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # @@ -500,38 +500,38 @@ ./usr/X11R7/include/X11/extensions/xtraplib.h xcomp-xorgproto-include xorg ./usr/X11R7/include/X11/extensions/xtraplibp.h xcomp-xorgproto-include xorg ./usr/X11R7/include/X11/extensions/xtrapproto.h xcomp-xorgproto-include xorg -./usr/X11R7/include/X11/fonts/FS.h -unknown- xorg -./usr/X11R7/include/X11/fonts/FSlib.h -unknown- xorg -./usr/X11R7/include/X11/fonts/FSproto.h -unknown- xorg -./usr/X11R7/include/X11/fonts/bdfint.h -unknown- xorg -./usr/X11R7/include/X11/fonts/bitmap.h -unknown- xorg -./usr/X11R7/include/X11/fonts/bufio.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fntfil.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fntfilio.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fntfilst.h -unknown- xorg -./usr/X11R7/include/X11/fonts/font.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontconf.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontenc.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontencc.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontmisc.h -unknown- xorg +./usr/X11R7/include/X11/fonts/FS.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/FSlib.h xcomp-libFS-include xorg +./usr/X11R7/include/X11/fonts/FSproto.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/bdfint.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/bitmap.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/bufio.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fntfil.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fntfilio.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fntfilst.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/font.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/fontconf.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fontenc.h xcomp-libfontenc-include xorg +./usr/X11R7/include/X11/fonts/fontencc.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fontmisc.h xcomp-libXfont-include xorg ./usr/X11R7/include/X11/fonts/fontmod.h xcomp-obsolete obsolete -./usr/X11R7/include/X11/fonts/fontproto.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontshow.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontstruct.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontutil.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fontxlfd.h -unknown- xorg -./usr/X11R7/include/X11/fonts/fsmasks.h -unknown- xorg -./usr/X11R7/include/X11/fonts/ft.h -unknown- xorg -./usr/X11R7/include/X11/fonts/ftfuncs.h -unknown- xorg -./usr/X11R7/include/X11/fonts/libxfont2.h -unknown- xorg -./usr/X11R7/include/X11/fonts/pcf.h -unknown- xorg -./usr/X11R7/include/X11/keysym.h -unknown- xorg -./usr/X11R7/include/X11/keysymdef.h -unknown- xorg +./usr/X11R7/include/X11/fonts/fontproto.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/fontshow.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fontstruct.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/fontutil.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fontxlfd.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/fsmasks.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/fonts/ft.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/ftfuncs.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/fonts/libxfont2.h xcomp-libXfont2-include xorg +./usr/X11R7/include/X11/fonts/pcf.h xcomp-libXfont-include xorg +./usr/X11R7/include/X11/keysym.h xcomp-xorgproto-include xorg +./usr/X11R7/include/X11/keysymdef.h xcomp-xorgproto-include xorg ./usr/X11R7/include/X11/xf86drm.h xcomp-obsolete obsolete ./usr/X11R7/include/X11/xf86drmMode.h xcomp-obsolete obsolete ./usr/X11R7/include/X11/xf86mm.h xcomp-obsolete obsolete -./usr/X11R7/include/X11/xpm.h-unknown- xorg -./usr/X11R7/include/X11/xshmfence.h -unknown- xorg +./usr/X11R7/include/X11/xpm.hxcomp-libXpm-include xorg +./usr/X11R7/include/X11/xshmfence.h xcomp-libxshmfence-include xorg ./usr/X11R7/include/drm/drm.hxcomp-obsolete obsolete ./
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 14:07:42 UTC 2019 Modified Files: src/usr.sbin/sysinst: disks.c Log Message: Remove a hardcoded assumption that for BIOS boot we always will have the first partition as root - in mixed EFI/BIOS setups this might not be true (and in general the user is free to define arbitrary orders). Pointed out by Robert Nestor. To generate a diff of this commit: cvs rdiff -u -r1.51 -r1.52 src/usr.sbin/sysinst/disks.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.sbin/sysinst/disks.c diff -u src/usr.sbin/sysinst/disks.c:1.51 src/usr.sbin/sysinst/disks.c:1.52 --- src/usr.sbin/sysinst/disks.c:1.51 Tue Aug 20 06:38:17 2019 +++ src/usr.sbin/sysinst/disks.c Mon Oct 21 14:07:42 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: disks.c,v 1.51 2019/08/20 06:38:17 martin Exp $ */ +/* $NetBSD: disks.c,v 1.52 2019/10/21 14:07:42 martin Exp $ */ /* * Copyright 1997 Piermont Information Systems Inc. @@ -1955,12 +1955,30 @@ check_swap(const char *disk, int remove_ char * bootxx_name(struct install_partition_desc *install) { - int fstype; + size_t i; + int fstype = -1; const char *bootxxname; char *bootxx; + /* find a partition to be mounted as / */ + for (i = 0; i < install->num; i++) { + if ((install->infos[i].instflags & PUIINST_MOUNT) + && strcmp(install->infos[i].mount, "/") == 0) { + fstype = install->infos[i].fs_type; + break; + } + } + if (fstype < 0) { + /* not found? take first root type partition instead */ + for (i = 0; i < install->num; i++) { + if (install->infos[i].type == PT_root) { +fstype = install->infos[i].fs_type; +break; + } + } + } + /* check we have boot code for the root partition type */ - fstype = install->infos[0].fs_type; switch (fstype) { #if defined(BOOTXX_FFSV1) || defined(BOOTXX_FFSV2) case FS_BSDFFS:
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 14:07:42 UTC 2019 Modified Files: src/usr.sbin/sysinst: disks.c Log Message: Remove a hardcoded assumption that for BIOS boot we always will have the first partition as root - in mixed EFI/BIOS setups this might not be true (and in general the user is free to define arbitrary orders). Pointed out by Robert Nestor. To generate a diff of this commit: cvs rdiff -u -r1.51 -r1.52 src/usr.sbin/sysinst/disks.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Mon Oct 21 14:23:53 UTC 2019 Modified Files: src/sys/kern: init_sysent.c Log Message: regen To generate a diff of this commit: cvs rdiff -u -r1.325 -r1.326 src/sys/kern/init_sysent.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Mon Oct 21 14:23:53 UTC 2019 Modified Files: src/sys/kern: init_sysent.c Log Message: regen To generate a diff of this commit: cvs rdiff -u -r1.325 -r1.326 src/sys/kern/init_sysent.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/init_sysent.c diff -u src/sys/kern/init_sysent.c:1.325 src/sys/kern/init_sysent.c:1.326 --- src/sys/kern/init_sysent.c:1.325 Sun Sep 22 19:03:20 2019 +++ src/sys/kern/init_sysent.c Mon Oct 21 10:23:53 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: init_sysent.c,v 1.325 2019/09/22 23:03:20 christos Exp $ */ +/* $NetBSD: init_sysent.c,v 1.326 2019/10/21 14:23:53 christos Exp $ */ /* * System call switch table. @@ -8,7 +8,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: init_sysent.c,v 1.325 2019/09/22 23:03:20 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: init_sysent.c,v 1.326 2019/10/21 14:23:53 christos Exp $"); #ifdef _KERNEL_OPT #include "opt_modular.h" @@ -1887,7 +1887,7 @@ struct sysent sysent[] = { .sy_call = (sy_call_t *)sys___getdents30 }, /* 390 = __getdents30 */ { - .sy_call = (sy_call_t *)nullop, + .sy_call = (sy_call_t *)(void *)nullop, }, /* 391 = filler */ { ns(struct compat_30_sys___fhstat30_args),
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 16:10:00 UTC 2019 Modified Files: src/usr.sbin/sysinst: disklabel.c Log Message: When translating (internal) indices to device names, properly deal with gaps in partition allocations (e.g. no swap partition). To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/usr.sbin/sysinst/disklabel.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 16:10:00 UTC 2019 Modified Files: src/usr.sbin/sysinst: disklabel.c Log Message: When translating (internal) indices to device names, properly deal with gaps in partition allocations (e.g. no swap partition). To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/usr.sbin/sysinst/disklabel.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.sbin/sysinst/disklabel.c diff -u src/usr.sbin/sysinst/disklabel.c:1.13 src/usr.sbin/sysinst/disklabel.c:1.14 --- src/usr.sbin/sysinst/disklabel.c:1.13 Wed Aug 14 13:58:00 2019 +++ src/usr.sbin/sysinst/disklabel.c Mon Oct 21 16:09:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: disklabel.c,v 1.13 2019/08/14 13:58:00 martin Exp $ */ +/* $NetBSD: disklabel.c,v 1.14 2019/10/21 16:09:59 martin Exp $ */ /* * Copyright 2018 The NetBSD Foundation, Inc. @@ -717,6 +717,8 @@ again: continue; if (parts->l.d_partitions[i].p_fstype == FS_UNUSED) continue; + if (parts->l.d_partitions[i].p_size == 0) +continue; s = parts->l.d_partitions[i].p_offset; e = parts->l.d_partitions[i].p_size + s; @@ -823,11 +825,17 @@ disklabel_get_part_device(const struct d if (ptn >= parts->l.d_npartitions) return false; - for (id = part_index = 0; id < ptn && - part_index < parts->l.d_npartitions; part_index++) - if (parts->l.d_partitions[part_index].p_fstype != FS_UNUSED || - parts->l.d_partitions[part_index].p_size != 0) - id++; + for (id = part_index = 0; part_index < parts->l.d_npartitions; + part_index++) { + if (parts->l.d_partitions[part_index].p_fstype == FS_UNUSED && + parts->l.d_partitions[part_index].p_size == 0) + continue; + if (id == ptn) + break; + id++; + if (id > ptn) + return false; + } if (part != 0) *part = part_index;
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 16:10:54 UTC 2019 Modified Files: src/usr.sbin/sysinst: bsddisklabel.c disks.c Log Message: Skip unwanted (zero sized) partitions. To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/usr.sbin/sysinst/bsddisklabel.c cvs rdiff -u -r1.52 -r1.53 src/usr.sbin/sysinst/disks.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/usr.sbin/sysinst
Module Name:src Committed By: martin Date: Mon Oct 21 16:10:54 UTC 2019 Modified Files: src/usr.sbin/sysinst: bsddisklabel.c disks.c Log Message: Skip unwanted (zero sized) partitions. To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/usr.sbin/sysinst/bsddisklabel.c cvs rdiff -u -r1.52 -r1.53 src/usr.sbin/sysinst/disks.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.sbin/sysinst/bsddisklabel.c diff -u src/usr.sbin/sysinst/bsddisklabel.c:1.27 src/usr.sbin/sysinst/bsddisklabel.c:1.28 --- src/usr.sbin/sysinst/bsddisklabel.c:1.27 Wed Aug 28 15:19:05 2019 +++ src/usr.sbin/sysinst/bsddisklabel.c Mon Oct 21 16:10:54 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: bsddisklabel.c,v 1.27 2019/08/28 15:19:05 martin Exp $ */ +/* $NetBSD: bsddisklabel.c,v 1.28 2019/10/21 16:10:54 martin Exp $ */ /* * Copyright 1997 Piermont Information Systems Inc. @@ -1278,6 +1278,8 @@ apply_settings_to_partitions(struct pm_d for (i = 0; i < wanted->num; i++) { if (wanted->infos[i].cur_part_id != NO_PART) continue; + if (wanted->infos[i].size <= 0) +continue; if (t.start == infos[i].start) { wanted->infos[i].cur_part_id = pno; wanted->infos[i].cur_start = infos[i].start; Index: src/usr.sbin/sysinst/disks.c diff -u src/usr.sbin/sysinst/disks.c:1.52 src/usr.sbin/sysinst/disks.c:1.53 --- src/usr.sbin/sysinst/disks.c:1.52 Mon Oct 21 14:07:42 2019 +++ src/usr.sbin/sysinst/disks.c Mon Oct 21 16:10:54 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: disks.c,v 1.52 2019/10/21 14:07:42 martin Exp $ */ +/* $NetBSD: disks.c,v 1.53 2019/10/21 16:10:54 martin Exp $ */ /* * Copyright 1997 Piermont Information Systems Inc. @@ -1290,6 +1290,9 @@ make_fstab(struct install_partition_desc const struct part_usage_info *ptn = &install->infos[i]; + if (ptn->size == 0) + continue; + if (ptn->type != PT_swap && (ptn->instflags & PUIINST_MOUNT) == 0) continue;
CVS commit: [netbsd-8] src/external/bsd/pkg_install/dist
Module Name:src Committed By: martin Date: Mon Oct 21 16:57:40 UTC 2019 Modified Files: src/external/bsd/pkg_install/dist/add [netbsd-8]: perform.c pkg_add.1 src/external/bsd/pkg_install/dist/admin [netbsd-8]: audit.c main.c pkg_admin.1 src/external/bsd/pkg_install/dist/create [netbsd-8]: util.c src/external/bsd/pkg_install/dist/delete [netbsd-8]: pkg_delete.c src/external/bsd/pkg_install/dist/info [netbsd-8]: main.c src/external/bsd/pkg_install/dist/lib [netbsd-8]: lib.h license.c parse-config.c pkcs7.c pkg_io.c version.h vulnerabilities-file.c Log Message: Pull up the following revisions, requested by joerg in ticket #1409: external/bsd/pkg_install/dist/add/perform.c up to 1.6 external/bsd/pkg_install/dist/add/pkg_add.1 up to 1.3 external/bsd/pkg_install/dist/admin/audit.c up to 1.3 external/bsd/pkg_install/dist/admin/main.c up to 1.4 external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 external/bsd/pkg_install/dist/create/util.c up to 1.2 external/bsd/pkg_install/dist/delete/pkg_delete.c up to 1.3 external/bsd/pkg_install/dist/info/main.c up to 1.3 external/bsd/pkg_install/dist/lib/lib.h up to 1.9 external/bsd/pkg_install/dist/lib/license.c up to 1.9 external/bsd/pkg_install/dist/lib/parse-config.c up to 1.3 external/bsd/pkg_install/dist/lib/pkcs7.c up to 1.4 external/bsd/pkg_install/dist/lib/pkg_io.c up to 1.3 external/bsd/pkg_install/dist/lib/version.h up to 1.15 external/bsd/pkg_install/dist/lib/vulnerabilities-file.c up to 1.3 Merge pkg_install-20191008 from pkgsrc. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.4.1 src/external/bsd/pkg_install/dist/add/perform.c cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/add/pkg_add.1 cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/admin/audit.c \ src/external/bsd/pkg_install/dist/admin/main.c \ src/external/bsd/pkg_install/dist/admin/pkg_admin.1 cvs rdiff -u -r1.1.1.3 -r1.1.1.3.4.1 \ src/external/bsd/pkg_install/dist/create/util.c cvs rdiff -u -r1.2 -r1.2.4.1 \ src/external/bsd/pkg_install/dist/delete/pkg_delete.c cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/info/main.c cvs rdiff -u -r1.8 -r1.8.4.1 src/external/bsd/pkg_install/dist/lib/lib.h cvs rdiff -u -r1.5 -r1.5.4.1 src/external/bsd/pkg_install/dist/lib/license.c cvs rdiff -u -r1.2 -r1.2.4.1 \ src/external/bsd/pkg_install/dist/lib/parse-config.c \ src/external/bsd/pkg_install/dist/lib/pkcs7.c \ src/external/bsd/pkg_install/dist/lib/pkg_io.c \ src/external/bsd/pkg_install/dist/lib/vulnerabilities-file.c cvs rdiff -u -r1.11 -r1.11.4.1 \ src/external/bsd/pkg_install/dist/lib/version.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-8] src/external/bsd/pkg_install/dist
Module Name:src Committed By: martin Date: Mon Oct 21 16:57:40 UTC 2019 Modified Files: src/external/bsd/pkg_install/dist/add [netbsd-8]: perform.c pkg_add.1 src/external/bsd/pkg_install/dist/admin [netbsd-8]: audit.c main.c pkg_admin.1 src/external/bsd/pkg_install/dist/create [netbsd-8]: util.c src/external/bsd/pkg_install/dist/delete [netbsd-8]: pkg_delete.c src/external/bsd/pkg_install/dist/info [netbsd-8]: main.c src/external/bsd/pkg_install/dist/lib [netbsd-8]: lib.h license.c parse-config.c pkcs7.c pkg_io.c version.h vulnerabilities-file.c Log Message: Pull up the following revisions, requested by joerg in ticket #1409: external/bsd/pkg_install/dist/add/perform.c up to 1.6 external/bsd/pkg_install/dist/add/pkg_add.1 up to 1.3 external/bsd/pkg_install/dist/admin/audit.c up to 1.3 external/bsd/pkg_install/dist/admin/main.c up to 1.4 external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 external/bsd/pkg_install/dist/create/util.c up to 1.2 external/bsd/pkg_install/dist/delete/pkg_delete.c up to 1.3 external/bsd/pkg_install/dist/info/main.c up to 1.3 external/bsd/pkg_install/dist/lib/lib.h up to 1.9 external/bsd/pkg_install/dist/lib/license.c up to 1.9 external/bsd/pkg_install/dist/lib/parse-config.c up to 1.3 external/bsd/pkg_install/dist/lib/pkcs7.c up to 1.4 external/bsd/pkg_install/dist/lib/pkg_io.c up to 1.3 external/bsd/pkg_install/dist/lib/version.h up to 1.15 external/bsd/pkg_install/dist/lib/vulnerabilities-file.c up to 1.3 Merge pkg_install-20191008 from pkgsrc. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.4.1 src/external/bsd/pkg_install/dist/add/perform.c cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/add/pkg_add.1 cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/admin/audit.c \ src/external/bsd/pkg_install/dist/admin/main.c \ src/external/bsd/pkg_install/dist/admin/pkg_admin.1 cvs rdiff -u -r1.1.1.3 -r1.1.1.3.4.1 \ src/external/bsd/pkg_install/dist/create/util.c cvs rdiff -u -r1.2 -r1.2.4.1 \ src/external/bsd/pkg_install/dist/delete/pkg_delete.c cvs rdiff -u -r1.2 -r1.2.4.1 src/external/bsd/pkg_install/dist/info/main.c cvs rdiff -u -r1.8 -r1.8.4.1 src/external/bsd/pkg_install/dist/lib/lib.h cvs rdiff -u -r1.5 -r1.5.4.1 src/external/bsd/pkg_install/dist/lib/license.c cvs rdiff -u -r1.2 -r1.2.4.1 \ src/external/bsd/pkg_install/dist/lib/parse-config.c \ src/external/bsd/pkg_install/dist/lib/pkcs7.c \ src/external/bsd/pkg_install/dist/lib/pkg_io.c \ src/external/bsd/pkg_install/dist/lib/vulnerabilities-file.c cvs rdiff -u -r1.11 -r1.11.4.1 \ src/external/bsd/pkg_install/dist/lib/version.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/bsd/pkg_install/dist/add/perform.c diff -u src/external/bsd/pkg_install/dist/add/perform.c:1.5 src/external/bsd/pkg_install/dist/add/perform.c:1.5.4.1 --- src/external/bsd/pkg_install/dist/add/perform.c:1.5 Thu Apr 20 13:18:23 2017 +++ src/external/bsd/pkg_install/dist/add/perform.c Mon Oct 21 16:57:40 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: perform.c,v 1.5 2017/04/20 13:18:23 joerg Exp $ */ +/* $NetBSD: perform.c,v 1.5.4.1 2019/10/21 16:57:40 martin Exp $ */ #if HAVE_CONFIG_H #include "config.h" #endif @@ -6,7 +6,7 @@ #if HAVE_SYS_CDEFS_H #include #endif -__RCSID("$NetBSD: perform.c,v 1.5 2017/04/20 13:18:23 joerg Exp $"); +__RCSID("$NetBSD: perform.c,v 1.5.4.1 2019/10/21 16:57:40 martin Exp $"); /*- * Copyright (c) 2003 Grant Beattie @@ -1318,7 +1318,7 @@ check_vulnerable(struct pkg_task *pkg) return require_check; } - if (!audit_package(pv, pkg->pkgname, NULL, 2)) + if (!audit_package(pv, pkg->pkgname, NULL, 0, 2)) return 0; if (require_check) Index: src/external/bsd/pkg_install/dist/add/pkg_add.1 diff -u src/external/bsd/pkg_install/dist/add/pkg_add.1:1.2 src/external/bsd/pkg_install/dist/add/pkg_add.1:1.2.4.1 --- src/external/bsd/pkg_install/dist/add/pkg_add.1:1.2 Thu Apr 20 13:18:23 2017 +++ src/external/bsd/pkg_install/dist/add/pkg_add.1 Mon Oct 21 16:57:40 2019 @@ -1,4 +1,4 @@ -.\" $NetBSD: pkg_add.1,v 1.2 2017/04/20 13:18:23 joerg Exp $ +.\" $NetBSD: pkg_add.1,v 1.2.4.1 2019/10/21 16:57:40 martin Exp $ .\" .\" FreeBSD install - a package for the installation and maintenance .\" of non-core utilities. @@ -17,7 +17,7 @@ .\" .\" @(#)pkg_add.1 .\" -.Dd December 27, 2014 +.Dd March 21, 2018 .Dt PKG_ADD 1 .Os .Sh NAME @@ -25,7 +25,7 @@ .Nd a utility for installing and upgrading software package distributions .Sh SYNOPSIS .Nm -.Op Fl AfInRUuVv +.Op Fl AfhInRUuVv .Op Fl C Ar config .Op Fl K Ar pkg_dbdir .Op Fl m Ar machine @@ -119,6 +119,11 @@ removed. Read the configuration
CVS commit: [netbsd-8] src/sys/fs/ntfs
Module Name:src Committed By: martin Date: Mon Oct 21 17:01:57 UTC 2019 Modified Files: src/sys/fs/ntfs [netbsd-8]: ntfs_subr.c ntfs_vfsops.c Log Message: Pull up following revision(s) (requested by hannken in ticket #1410): sys/fs/ntfs/ntfs_vfsops.c: revision 1.108 sys/fs/ntfs/ntfs_subr.c: revision 1.62 It is not possible to call vflush() from xxx_mount(). Replace with a vnode iterator and use vrecycle(). - When the MFT record size is lower than the cluster size we have to read consecutive clusters to fill the MFT record. Should fix PR kern/54598: mount ntfs panic To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.61.10.1 src/sys/fs/ntfs/ntfs_subr.c cvs rdiff -u -r1.107 -r1.107.4.1 src/sys/fs/ntfs/ntfs_vfsops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-8] src/sys/fs/ntfs
Module Name:src Committed By: martin Date: Mon Oct 21 17:01:57 UTC 2019 Modified Files: src/sys/fs/ntfs [netbsd-8]: ntfs_subr.c ntfs_vfsops.c Log Message: Pull up following revision(s) (requested by hannken in ticket #1410): sys/fs/ntfs/ntfs_vfsops.c: revision 1.108 sys/fs/ntfs/ntfs_subr.c: revision 1.62 It is not possible to call vflush() from xxx_mount(). Replace with a vnode iterator and use vrecycle(). - When the MFT record size is lower than the cluster size we have to read consecutive clusters to fill the MFT record. Should fix PR kern/54598: mount ntfs panic To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.61.10.1 src/sys/fs/ntfs/ntfs_subr.c cvs rdiff -u -r1.107 -r1.107.4.1 src/sys/fs/ntfs/ntfs_vfsops.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/ntfs/ntfs_subr.c diff -u src/sys/fs/ntfs/ntfs_subr.c:1.61 src/sys/fs/ntfs/ntfs_subr.c:1.61.10.1 --- src/sys/fs/ntfs/ntfs_subr.c:1.61 Sat Mar 28 19:24:05 2015 +++ src/sys/fs/ntfs/ntfs_subr.c Mon Oct 21 17:01:57 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ntfs_subr.c,v 1.61 2015/03/28 19:24:05 maxv Exp $ */ +/* $NetBSD: ntfs_subr.c,v 1.61.10.1 2019/10/21 17:01:57 martin Exp $ */ /*- * Copyright (c) 1998, 1999 Semen Ustimenko (sem...@freebsd.org) @@ -29,7 +29,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ntfs_subr.c,v 1.61 2015/03/28 19:24:05 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ntfs_subr.c,v 1.61.10.1 2019/10/21 17:01:57 martin Exp $"); #include #include @@ -271,6 +271,8 @@ ntfs_loadntnode(struct ntfsmount *ntmp, struct buf *bp; daddr_t bn; off_t boff; + size_t resid, l; + char *data; dprintf(("%s: read system node\n", __func__)); @@ -281,17 +283,26 @@ ntfs_loadntnode(struct ntfsmount *ntmp, boff = ntfs_cntob(ntmp->ntm_mftcn) + ntfs_bntob(ntmp->ntm_bpmftrec) * ip->i_number; bn = ntfs_cntobn(ntfs_btocn(boff)); - off = ntfs_btocnoff(boff); + boff = ntfs_btocnoff(boff); + resid = ntfs_bntob(ntmp->ntm_bpmftrec); + data = (char *)mfrp; + while (resid > 0) { + l = MIN(resid, ntfs_cntob(1) - boff); + + error = bread(ntmp->ntm_devvp, bn, ntfs_cntob(1), + 0, &bp); + if (error) { +printf("%s: BREAD FAILED\n", __func__); +goto out; + } + memcpy(data, (char *)bp->b_data + boff, l); + bqrelse(bp); - error = bread(ntmp->ntm_devvp, bn, ntfs_cntob(1), - 0, &bp); - if (error) { - printf("%s: BREAD FAILED\n", __func__); - goto out; + bn += ntfs_cntobn(1); + boff = 0; + data += l; + resid -= l; } - memcpy(mfrp, (char *)bp->b_data + off, - ntfs_bntob(ntmp->ntm_bpmftrec)); - bqrelse(bp); } else { struct vnode *vp; Index: src/sys/fs/ntfs/ntfs_vfsops.c diff -u src/sys/fs/ntfs/ntfs_vfsops.c:1.107 src/sys/fs/ntfs/ntfs_vfsops.c:1.107.4.1 --- src/sys/fs/ntfs/ntfs_vfsops.c:1.107 Mon Apr 17 08:32:00 2017 +++ src/sys/fs/ntfs/ntfs_vfsops.c Mon Oct 21 17:01:57 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ntfs_vfsops.c,v 1.107 2017/04/17 08:32:00 hannken Exp $ */ +/* $NetBSD: ntfs_vfsops.c,v 1.107.4.1 2019/10/21 17:01:57 martin Exp $ */ /*- * Copyright (c) 1998, 1999 Semen Ustimenko @@ -29,7 +29,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ntfs_vfsops.c,v 1.107 2017/04/17 08:32:00 hannken Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ntfs_vfsops.c,v 1.107.4.1 2019/10/21 17:01:57 martin Exp $"); #include #include @@ -322,6 +322,7 @@ ntfs_mountfs(struct vnode *devvp, struct dev_t dev = devvp->v_rdev; int error, i; struct vnode *vp; + struct vnode_iterator *marker; ntmp = NULL; @@ -471,9 +472,13 @@ out1: if (ntmp->ntm_sysvn[i]) vrele(ntmp->ntm_sysvn[i]); - if (vflush(mp, NULLVP, 0)) { - dprintf(("ntfs_mountfs: vflush failed\n")); + vfs_vnode_iterator_init(mp, &marker); + while ((vp = vfs_vnode_iterator_next(marker, NULL, NULL))) { + if (vrecycle(vp)) + continue; + panic("%s: cannot recycle vnode %p", __func__, vp); } + vfs_vnode_iterator_destroy(marker); out: spec_node_setmountedfs(devvp, NULL); if (bp)
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 17:03:01 UTC 2019 Modified Files: src/doc [netbsd-8]: CHANGES-8.2 Log Message: Tickets #1409 and #1410 To generate a diff of this commit: cvs rdiff -u -r1.1.2.52 -r1.1.2.53 src/doc/CHANGES-8.2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/CHANGES-8.2 diff -u src/doc/CHANGES-8.2:1.1.2.52 src/doc/CHANGES-8.2:1.1.2.53 --- src/doc/CHANGES-8.2:1.1.2.52 Thu Oct 17 18:41:27 2019 +++ src/doc/CHANGES-8.2 Mon Oct 21 17:03:01 2019 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-8.2,v 1.1.2.52 2019/10/17 18:41:27 martin Exp $ +# $NetBSD: CHANGES-8.2,v 1.1.2.53 2019/10/21 17:03:01 martin Exp $ A complete list of changes from the NetBSD 8.1 release to the NetBSD 8.2 release: @@ -1299,3 +1299,31 @@ sys/dev/pci/ixgbe/ixgbe.c 1.214 Disable EEE for backplane X550EM_X. [msaitoh, ticket #1408] +external/bsd/pkg_install/dist/add/perform.c up to 1.6 +external/bsd/pkg_install/dist/add/pkg_add.1 up to 1.3 +external/bsd/pkg_install/dist/admin/audit.c up to 1.3 +external/bsd/pkg_install/dist/admin/main.c up to 1.4 +external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 +external/bsd/pkg_install/dist/create/util.c up to 1.2 +external/bsd/pkg_install/dist/delete/pkg_delete.c up to 1.3 +external/bsd/pkg_install/dist/info/main.c up to 1.3 +external/bsd/pkg_install/dist/lib/lib.h up to 1.9 +external/bsd/pkg_install/dist/lib/license.c up to 1.9 +external/bsd/pkg_install/dist/lib/parse-config.c up to 1.3 +external/bsd/pkg_install/dist/lib/pkcs7.c up to 1.4 +external/bsd/pkg_install/dist/lib/pkg_io.c up to 1.3 +external/bsd/pkg_install/dist/lib/version.h up to 1.15 +external/bsd/pkg_install/dist/lib/vulnerabilities-file.c up to 1.3 + + Merge pkg_install-20191008 from pkgsrc. + [joerg, ticket #1409] + +sys/fs/ntfs/ntfs_subr.c1.62 +sys/fs/ntfs/ntfs_vfsops.c 1.108 + + It is not possible to call vflush() from xxx_mount(). + Replace with a vnode iterator and use vrecycle(). + When the MFT record size is lower than the cluster size we have + to read consecutive clusters to fill the MFT record. + [hannken, ticket #1410] +
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 17:03:01 UTC 2019 Modified Files: src/doc [netbsd-8]: CHANGES-8.2 Log Message: Tickets #1409 and #1410 To generate a diff of this commit: cvs rdiff -u -r1.1.2.52 -r1.1.2.53 src/doc/CHANGES-8.2 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: mgorny Date: Mon Oct 21 17:07:01 UTC 2019 Modified Files: src/sys/kern: kern_sig.c src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Fix a race condition when handling concurrent LWP signals and add a test Fix a race condition that caused PT_GET_SIGINFO to return incorrect information when multiple signals were delivered concurrently to different LWPs. Add a regression test that verifies that when 50 threads concurrently use pthread_kill() on themselves, the debugger receives all signals with correct information. The kernel uses separate signal queues for each LWP. However, the signal context used to implement PT_GET_SIGINFO is stored in 'struct proc' and therefore common to all LWPs in the process. Previously, this member was filled in kpsignal2(), i.e. when the signal was sent. This meant that if another LWP managed to send another signal concurrently, the data was overwritten before the process was stopped. As a result, PT_GET_SIGINFO did not report the correct LWP and signal (it could even report a different signal than wait()). This can be quite reliably reproduced with the number of 20 LWPs, however it can also occur with 10. This patch moves setting of signal context to issignal(), just before the process is actually stopped. The data is taken from per-LWP or per-process signal queue. The added test confirms that the debugger correctly receives all signals, and PT_GET_SIGINFO reports both correct LWP and signal number. Reviewed by kamil. To generate a diff of this commit: cvs rdiff -u -r1.375 -r1.376 src/sys/kern/kern_sig.c cvs rdiff -u -r1.137 -r1.138 src/tests/lib/libc/sys/t_ptrace_wait.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/kern_sig.c diff -u src/sys/kern/kern_sig.c:1.375 src/sys/kern/kern_sig.c:1.376 --- src/sys/kern/kern_sig.c:1.375 Wed Oct 16 18:29:49 2019 +++ src/sys/kern/kern_sig.c Mon Oct 21 17:07:00 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_sig.c,v 1.375 2019/10/16 18:29:49 christos Exp $ */ +/* $NetBSD: kern_sig.c,v 1.376 2019/10/21 17:07:00 mgorny Exp $ */ /*- * Copyright (c) 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -70,7 +70,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_sig.c,v 1.375 2019/10/16 18:29:49 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_sig.c,v 1.376 2019/10/21 17:07:00 mgorny Exp $"); #include "opt_ptrace.h" #include "opt_dtrace.h" @@ -1318,10 +1318,6 @@ kpsignal2(struct proc *p, ksiginfo_t *ks if (p->p_stat != SACTIVE && p->p_stat != SSTOP) return 0; - /* XXX for core dump/debugger */ - p->p_sigctx.ps_lwp = ksi->ksi_lid; - p->p_sigctx.ps_info = ksi->ksi_info; - /* * Notify any interested parties of the signal. */ @@ -1831,7 +1827,7 @@ int issignal(struct lwp *l) { struct proc *p; - int signo, prop; + int siglwp, signo, prop; sigpend_t *sp; sigset_t ss; @@ -1873,6 +1869,7 @@ issignal(struct lwp *l) if (signo == 0) { sp = &l->l_sigpend; ss = sp->sp_set; + siglwp = l->l_lid; if ((p->p_lflag & PL_PPWAIT) != 0) sigminusset(&vforksigmask, &ss); sigminusset(&l->l_sigmask, &ss); @@ -1880,6 +1877,7 @@ issignal(struct lwp *l) if ((signo = firstsig(&ss)) == 0) { sp = &p->p_sigpend; ss = sp->sp_set; +siglwp = 0; if ((p->p_lflag & PL_PPWAIT) != 0) sigminusset(&vforksigmask, &ss); sigminusset(&l->l_sigmask, &ss); @@ -1898,6 +1896,28 @@ issignal(struct lwp *l) } } + if (sp) { + /* Overwrite process' signal context to correspond + * to the currently reported LWP. This is necessary + * for PT_GET_SIGINFO to report the correct signal when + * multiple LWPs have pending signals. We do this only + * when the signal comes from the queue, for signals + * created by the debugger we assume it set correct + * siginfo. + */ + ksiginfo_t *ksi = TAILQ_FIRST(&sp->sp_info); + if (ksi) { +p->p_sigctx.ps_lwp = ksi->ksi_lid; +p->p_sigctx.ps_info = ksi->ksi_info; + } else { +p->p_sigctx.ps_lwp = siglwp; +memset(&p->p_sigctx.ps_info, 0, +sizeof(p->p_sigctx.ps_info)); +p->p_sigctx.ps_info._signo = signo; +p->p_sigctx.ps_info._code = SI_NOINFO; + } + } + /* * We should see pending but ignored signals only if * we are being traced. Index: src/tests/lib/libc/sys/t_ptrace_wait.c diff -u src/tests/lib/libc/sys/t_ptrace_wait.c:1.137 src/tests/lib/libc/sys/t_ptrace_wait.c:1.138 --- src/tests/lib/libc/sys/t_ptrace_wait.c:1.137 Sun Oct 13 09:42:15 2019 +++ src/tests/lib/libc/sys/t_ptrace_wait.c Mon Oct 21 17:07:00 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: t_ptrace_wait.c,v 1.137 2019/10/13 09:42:15 kamil Exp $ */ +/* $NetBSD: t_ptrace_wait.c,v 1.138 2019/10/21 17:07:00 mgorny Exp $ */ /*- * Copyright (c) 2016, 2017, 2018, 2019 The NetBSD Foundation, Inc. @@ -27,7 +27,7 @@ */ #include -__RCSID("$NetBSD: t_ptrace_wait.c,v 1.137
CVS commit: src
Module Name:src Committed By: mgorny Date: Mon Oct 21 17:07:01 UTC 2019 Modified Files: src/sys/kern: kern_sig.c src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Fix a race condition when handling concurrent LWP signals and add a test Fix a race condition that caused PT_GET_SIGINFO to return incorrect information when multiple signals were delivered concurrently to different LWPs. Add a regression test that verifies that when 50 threads concurrently use pthread_kill() on themselves, the debugger receives all signals with correct information. The kernel uses separate signal queues for each LWP. However, the signal context used to implement PT_GET_SIGINFO is stored in 'struct proc' and therefore common to all LWPs in the process. Previously, this member was filled in kpsignal2(), i.e. when the signal was sent. This meant that if another LWP managed to send another signal concurrently, the data was overwritten before the process was stopped. As a result, PT_GET_SIGINFO did not report the correct LWP and signal (it could even report a different signal than wait()). This can be quite reliably reproduced with the number of 20 LWPs, however it can also occur with 10. This patch moves setting of signal context to issignal(), just before the process is actually stopped. The data is taken from per-LWP or per-process signal queue. The added test confirms that the debugger correctly receives all signals, and PT_GET_SIGINFO reports both correct LWP and signal number. Reviewed by kamil. To generate a diff of this commit: cvs rdiff -u -r1.375 -r1.376 src/sys/kern/kern_sig.c cvs rdiff -u -r1.137 -r1.138 src/tests/lib/libc/sys/t_ptrace_wait.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/tests/lib/libc/sys
Module Name:src Committed By: kamil Date: Mon Oct 21 18:31:40 UTC 2019 Modified Files: src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Remove preprocessor switch TEST_VFORK_ENABLED in t_ptrace_wait* vfork(2) tests are now enabled always and confirmed to be stable. To generate a diff of this commit: cvs rdiff -u -r1.138 -r1.139 src/tests/lib/libc/sys/t_ptrace_wait.c 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/libc/sys/t_ptrace_wait.c diff -u src/tests/lib/libc/sys/t_ptrace_wait.c:1.138 src/tests/lib/libc/sys/t_ptrace_wait.c:1.139 --- src/tests/lib/libc/sys/t_ptrace_wait.c:1.138 Mon Oct 21 17:07:00 2019 +++ src/tests/lib/libc/sys/t_ptrace_wait.c Mon Oct 21 18:31:40 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: t_ptrace_wait.c,v 1.138 2019/10/21 17:07:00 mgorny Exp $ */ +/* $NetBSD: t_ptrace_wait.c,v 1.139 2019/10/21 18:31:40 kamil Exp $ */ /*- * Copyright (c) 2016, 2017, 2018, 2019 The NetBSD Foundation, Inc. @@ -27,7 +27,7 @@ */ #include -__RCSID("$NetBSD: t_ptrace_wait.c,v 1.138 2019/10/21 17:07:00 mgorny Exp $"); +__RCSID("$NetBSD: t_ptrace_wait.c,v 1.139 2019/10/21 18:31:40 kamil Exp $"); #include #include @@ -121,10 +121,6 @@ static int debug = 0; printf("%s() %s:%d " a, __func__, __FILE__, __LINE__, ##__VA_ARGS__); \ while (/*CONSTCOND*/0) -#ifndef TEST_VFORK_ENABLED -#define TEST_VFORK_ENABLED 1 -#endif - #ifndef TEST_LWP_ENABLED #define TEST_LWP_ENABLED 1 #endif @@ -3269,7 +3265,6 @@ FORK_TEST(fork15, "fork", true, false, t FORK_TEST(fork16, "fork", true, true, true, true) #endif -#if TEST_VFORK_ENABLED FORK_TEST(vfork1, "vfork", false, false, false, false) #if defined(TWAIT_HAVE_PID) FORK_TEST(vfork2, "vfork", false, true, false, false) @@ -3294,7 +3289,6 @@ FORK_TEST(vfork14, "vfork", true, true, FORK_TEST(vfork15, "vfork", true, false, true, true) FORK_TEST(vfork16, "vfork", true, true, true, true) #endif -#endif FORK_TEST(posix_spawn1, "spawn", false, false, false, false) FORK_TEST(posix_spawn2, "spawn", false, true, false, false) @@ -3497,22 +3491,17 @@ ATF_TC_BODY(name, tc) \ FORK_DETACH_FORKER(posix_spawn_detach_spawner, "spawn", false) FORK_DETACH_FORKER(fork_detach_forker, "fork", false) -#if TEST_VFORK_ENABLED FORK_DETACH_FORKER(vfork_detach_vforker, "vfork", false) FORK_DETACH_FORKER(vfork_detach_vforkerdone, "vforkdone", false) -#endif FORK_DETACH_FORKER(posix_spawn_kill_spawner, "spawn", true) FORK_DETACH_FORKER(fork_kill_forker, "fork", true) -#if TEST_VFORK_ENABLED FORK_DETACH_FORKER(vfork_kill_vforker, "vfork", true) FORK_DETACH_FORKER(vfork_kill_vforkerdone, "vforkdone", true) #endif -#endif /// -#if TEST_VFORK_ENABLED static void traceme_vfork_fork_body(pid_t (*fn)(void)) { @@ -3571,7 +3560,6 @@ ATF_TC_BODY(name, tc) \ TRACEME_VFORK_FORK_TEST(traceme_vfork_fork, fork) TRACEME_VFORK_FORK_TEST(traceme_vfork_vfork, vfork) -#endif /// @@ -6126,13 +6114,11 @@ FORK2_TEST(posix_spawn_singalmasked, "sp FORK2_TEST(posix_spawn_singalignored, "spawn", false, true) FORK2_TEST(fork_singalmasked, "fork", true, false) FORK2_TEST(fork_singalignored, "fork", false, true) -#if TEST_VFORK_ENABLED FORK2_TEST(vfork_singalmasked, "vfork", true, false) FORK2_TEST(vfork_singalignored, "vfork", false, true) FORK2_TEST(vforkdone_singalmasked, "vforkdone", true, false) FORK2_TEST(vforkdone_singalignored, "vforkdone", false, true) #endif -#endif /// @@ -6991,7 +6977,6 @@ CLONE_TEST(clone_files8, CLONE_FILES, tr //CLONE_TEST(clone_sighand8, CLONE_SIGHAND, true, true, true) #endif -#if TEST_VFORK_ENABLED CLONE_TEST(clone_vfork1, CLONE_VFORK, false, false, false) #if defined(TWAIT_HAVE_PID) CLONE_TEST(clone_vfork2, CLONE_VFORK, true, false, false) @@ -7004,7 +6989,6 @@ CLONE_TEST(clone_vfork6, CLONE_VFORK, tr CLONE_TEST(clone_vfork7, CLONE_VFORK, false, true, true) CLONE_TEST(clone_vfork8, CLONE_VFORK, true, true, true) #endif -#endif /// @@ -7367,15 +7351,12 @@ CLONE_TEST2(clone_files_signalignored, C CLONE_TEST2(clone_files_signalmasked, CLONE_FILES, false, true) //CLONE_TEST2(clone_sighand_signalignored, CLONE_SIGHAND, true, false) // XXX //CLONE_TEST2(clone_sighand_signalmasked, CLONE_SIGHAND, false, true) // XXX -#if TEST_VFORK_ENABLED CLONE_TEST2(clone_vfork_signalignored, CLONE_VFORK, true, false) CLONE_TEST2(clone_vfork_signalmasked, CLONE_VFORK, false, true) #endif -#endif /// -#if TEST_VFORK_ENABLED #if defined(TWAIT_HAVE_PID) static void traceme_vfork_clone_body(int flag
CVS commit: src/tests/lib/libc/sys
Module Name:src Committed By: kamil Date: Mon Oct 21 18:31:40 UTC 2019 Modified Files: src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Remove preprocessor switch TEST_VFORK_ENABLED in t_ptrace_wait* vfork(2) tests are now enabled always and confirmed to be stable. To generate a diff of this commit: cvs rdiff -u -r1.138 -r1.139 src/tests/lib/libc/sys/t_ptrace_wait.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/tests/lib/libc/sys
Module Name:src Committed By: kamil Date: Mon Oct 21 18:36:08 UTC 2019 Modified Files: src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Remove preprocessor switch TEST_LWP_ENABLED in t_ptrace_wait* LWP tests are now enabled always and confirmed to be stable. To generate a diff of this commit: cvs rdiff -u -r1.139 -r1.140 src/tests/lib/libc/sys/t_ptrace_wait.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/tests/lib/libc/sys
Module Name:src Committed By: kamil Date: Mon Oct 21 18:36:08 UTC 2019 Modified Files: src/tests/lib/libc/sys: t_ptrace_wait.c Log Message: Remove preprocessor switch TEST_LWP_ENABLED in t_ptrace_wait* LWP tests are now enabled always and confirmed to be stable. To generate a diff of this commit: cvs rdiff -u -r1.139 -r1.140 src/tests/lib/libc/sys/t_ptrace_wait.c 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/libc/sys/t_ptrace_wait.c diff -u src/tests/lib/libc/sys/t_ptrace_wait.c:1.139 src/tests/lib/libc/sys/t_ptrace_wait.c:1.140 --- src/tests/lib/libc/sys/t_ptrace_wait.c:1.139 Mon Oct 21 18:31:40 2019 +++ src/tests/lib/libc/sys/t_ptrace_wait.c Mon Oct 21 18:36:08 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: t_ptrace_wait.c,v 1.139 2019/10/21 18:31:40 kamil Exp $ */ +/* $NetBSD: t_ptrace_wait.c,v 1.140 2019/10/21 18:36:08 kamil Exp $ */ /*- * Copyright (c) 2016, 2017, 2018, 2019 The NetBSD Foundation, Inc. @@ -27,7 +27,7 @@ */ #include -__RCSID("$NetBSD: t_ptrace_wait.c,v 1.139 2019/10/21 18:31:40 kamil Exp $"); +__RCSID("$NetBSD: t_ptrace_wait.c,v 1.140 2019/10/21 18:36:08 kamil Exp $"); #include #include @@ -121,10 +121,6 @@ static int debug = 0; printf("%s() %s:%d " a, __func__, __FILE__, __LINE__, ##__VA_ARGS__); \ while (/*CONSTCOND*/0) -#ifndef TEST_LWP_ENABLED -#define TEST_LWP_ENABLED 1 -#endif - /// static void @@ -5484,11 +5480,6 @@ trace_threads(bool trace_create, bool tr /* Track created and exited threads */ bool traced_lwps[__arraycount(t)]; -#if !TEST_LWP_ENABLED - if (trace_create || trace_exit) - atf_tc_skip("PR kern/51995"); -#endif - DPRINTF("Before forking process PID=%d\n", getpid()); SYSCALL_REQUIRE((child = fork()) != -1); if (child == 0) {
CVS commit: src/sys/dev/ata
Module Name:src Committed By: christos Date: Mon Oct 21 18:37:47 UTC 2019 Modified Files: src/sys/dev/ata: ata.c Log Message: Fix assert_sleepable() panic by allocating with NOSLEEP. The alternative is to unlock and relock the channel, but seems more dangerous to do so. To generate a diff of this commit: cvs rdiff -u -r1.151 -r1.152 src/sys/dev/ata/ata.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/ata/ata.c diff -u src/sys/dev/ata/ata.c:1.151 src/sys/dev/ata/ata.c:1.152 --- src/sys/dev/ata/ata.c:1.151 Mon Oct 14 20:13:53 2019 +++ src/sys/dev/ata/ata.c Mon Oct 21 14:37:47 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ata.c,v 1.151 2019/10/15 00:13:53 chs Exp $ */ +/* $NetBSD: ata.c,v 1.152 2019/10/21 18:37:47 christos Exp $ */ /* * Copyright (c) 1998, 2001 Manuel Bouyer. All rights reserved. @@ -25,7 +25,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.151 2019/10/15 00:13:53 chs Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.152 2019/10/21 18:37:47 christos Exp $"); #include "opt_ata.h" @@ -750,7 +750,9 @@ atabus_alloc_drives(struct ata_channel * atabus_free_drives(chp); if (chp->ch_drive == NULL) { chp->ch_drive = kmem_zalloc( - sizeof(struct ata_drive_datas) * ndrives, KM_SLEEP); + sizeof(struct ata_drive_datas) * ndrives, KM_NOSLEEP); + if (chp->ch_drive == NULL) + return ENOMEM; } for (i = 0; i < ndrives; i++) { chp->ch_drive[i].chnl_softc = chp;
CVS commit: src/sys/dev/ata
Module Name:src Committed By: christos Date: Mon Oct 21 18:37:47 UTC 2019 Modified Files: src/sys/dev/ata: ata.c Log Message: Fix assert_sleepable() panic by allocating with NOSLEEP. The alternative is to unlock and relock the channel, but seems more dangerous to do so. To generate a diff of this commit: cvs rdiff -u -r1.151 -r1.152 src/sys/dev/ata/ata.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/ata
Module Name:src Committed By: christos Date: Mon Oct 21 18:58:57 UTC 2019 Modified Files: src/sys/dev/ata: ata.c Log Message: chuq does not like insomniac allocations so unlock-alloc-lock instead. To generate a diff of this commit: cvs rdiff -u -r1.152 -r1.153 src/sys/dev/ata/ata.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/ata
Module Name:src Committed By: christos Date: Mon Oct 21 18:58:57 UTC 2019 Modified Files: src/sys/dev/ata: ata.c Log Message: chuq does not like insomniac allocations so unlock-alloc-lock instead. To generate a diff of this commit: cvs rdiff -u -r1.152 -r1.153 src/sys/dev/ata/ata.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/ata/ata.c diff -u src/sys/dev/ata/ata.c:1.152 src/sys/dev/ata/ata.c:1.153 --- src/sys/dev/ata/ata.c:1.152 Mon Oct 21 14:37:47 2019 +++ src/sys/dev/ata/ata.c Mon Oct 21 14:58:57 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ata.c,v 1.152 2019/10/21 18:37:47 christos Exp $ */ +/* $NetBSD: ata.c,v 1.153 2019/10/21 18:58:57 christos Exp $ */ /* * Copyright (c) 1998, 2001 Manuel Bouyer. All rights reserved. @@ -25,7 +25,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.152 2019/10/21 18:37:47 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.153 2019/10/21 18:58:57 christos Exp $"); #include "opt_ata.h" @@ -749,10 +749,18 @@ atabus_alloc_drives(struct ata_channel * if (chp->ch_ndrives != ndrives) atabus_free_drives(chp); if (chp->ch_drive == NULL) { - chp->ch_drive = kmem_zalloc( - sizeof(struct ata_drive_datas) * ndrives, KM_NOSLEEP); - if (chp->ch_drive == NULL) - return ENOMEM; + void *drv; + + ata_channel_unlock(chp); + drv = kmem_zalloc(sizeof(*chp->ch_drive) * ndrives, KM_SLEEP); + ata_channel_lock(chp); + + if (chp->ch_drive != NULL) { + /* lost the race */ + kmem_free(drv, sizeof(*chp->ch_drive) * ndrives); + return 0; + } + chp->ch_drive = drv; } for (i = 0; i < ndrives; i++) { chp->ch_drive[i].chnl_softc = chp;
CVS commit: src/sys/dev/pci
Module Name:src Committed By: christos Date: Mon Oct 21 19:00:11 UTC 2019 Modified Files: src/sys/dev/pci: satalink.c Log Message: follow the channel locking protocol during probe (like the other drivers) To generate a diff of this commit: cvs rdiff -u -r1.56 -r1.57 src/sys/dev/pci/satalink.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/pci
Module Name:src Committed By: christos Date: Mon Oct 21 19:00:11 UTC 2019 Modified Files: src/sys/dev/pci: satalink.c Log Message: follow the channel locking protocol during probe (like the other drivers) To generate a diff of this commit: cvs rdiff -u -r1.56 -r1.57 src/sys/dev/pci/satalink.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/satalink.c diff -u src/sys/dev/pci/satalink.c:1.56 src/sys/dev/pci/satalink.c:1.57 --- src/sys/dev/pci/satalink.c:1.56 Sun Dec 9 06:14:02 2018 +++ src/sys/dev/pci/satalink.c Mon Oct 21 15:00:11 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: satalink.c,v 1.56 2018/12/09 11:14:02 jdolecek Exp $ */ +/* $NetBSD: satalink.c,v 1.57 2019/10/21 19:00:11 christos Exp $ */ /*- * Copyright (c) 2003 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: satalink.c,v 1.56 2018/12/09 11:14:02 jdolecek Exp $"); +__KERNEL_RCSID(0, "$NetBSD: satalink.c,v 1.57 2019/10/21 19:00:11 christos Exp $"); #include #include @@ -787,6 +787,7 @@ sii3112_drv_probe(struct ata_channel *ch uint8_t /* scnt, sn, */ cl, ch; int s; + ata_channel_lock(chp); /* * The 3112 is a 2-port part, and only has one drive per channel * (each port emulates a master drive). @@ -861,8 +862,10 @@ sii3112_drv_probe(struct ata_channel *ch device_xname(sc->sc_wdcdev.sc_atac.atac_dev), chp->ch_channel, scnt, sn, cl, ch); #endif - if (atabus_alloc_drives(chp, 1) != 0) + if (atabus_alloc_drives(chp, 1) != 0) { + ata_channel_unlock(chp); return; + } /* * scnt and sn are supposed to be 0x1 for ATAPI, but in some * cases we get wrong values here, so ignore it. @@ -885,6 +888,7 @@ sii3112_drv_probe(struct ata_channel *ch "port %d: unknown SStatus: 0x%08x\n", chp->ch_channel, sstatus); } + ata_channel_unlock(chp); } static void
CVS commit: [netbsd-9] src/sys
Module Name:src Committed By: martin Date: Mon Oct 21 20:06:17 UTC 2019 Modified Files: src/sys/compat/common [netbsd-9]: kern_uipc_socket_50.c src/sys/kern [netbsd-9]: uipc_socket.c src/sys/sys [netbsd-9]: compat_stub.h Log Message: Pull up following revision(s) (requested by pgoyette in ticket #339): sys/compat/common/kern_uipc_socket_50.c: revision 1.3 sys/sys/compat_stub.h: revision 1.19 sys/kern/uipc_socket.c: revision 1.284 Actually return the updated pointer-to-mbuf-pointer to the caller rather than discarding-after-assignment. Introduced from the [pgoyette-compat] branch work. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.6.1 src/sys/compat/common/kern_uipc_socket_50.c cvs rdiff -u -r1.281 -r1.281.2.1 src/sys/kern/uipc_socket.c cvs rdiff -u -r1.18 -r1.18.2.1 src/sys/sys/compat_stub.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/sys
Module Name:src Committed By: martin Date: Mon Oct 21 20:06:17 UTC 2019 Modified Files: src/sys/compat/common [netbsd-9]: kern_uipc_socket_50.c src/sys/kern [netbsd-9]: uipc_socket.c src/sys/sys [netbsd-9]: compat_stub.h Log Message: Pull up following revision(s) (requested by pgoyette in ticket #339): sys/compat/common/kern_uipc_socket_50.c: revision 1.3 sys/sys/compat_stub.h: revision 1.19 sys/kern/uipc_socket.c: revision 1.284 Actually return the updated pointer-to-mbuf-pointer to the caller rather than discarding-after-assignment. Introduced from the [pgoyette-compat] branch work. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.6.1 src/sys/compat/common/kern_uipc_socket_50.c cvs rdiff -u -r1.281 -r1.281.2.1 src/sys/kern/uipc_socket.c cvs rdiff -u -r1.18 -r1.18.2.1 src/sys/sys/compat_stub.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/compat/common/kern_uipc_socket_50.c diff -u src/sys/compat/common/kern_uipc_socket_50.c:1.2 src/sys/compat/common/kern_uipc_socket_50.c:1.2.6.1 --- src/sys/compat/common/kern_uipc_socket_50.c:1.2 Mon Apr 15 10:53:17 2019 +++ src/sys/compat/common/kern_uipc_socket_50.c Mon Oct 21 20:06:17 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_uipc_socket_50.c,v 1.2 2019/04/15 10:53:17 pgoyette Exp $ */ +/* $NetBSD: kern_uipc_socket_50.c,v 1.2.6.1 2019/10/21 20:06:17 martin Exp $ */ /* * Copyright (c) 2002, 2007, 2008, 2009 The NetBSD Foundation, Inc. @@ -101,7 +101,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_uipc_socket_50.c,v 1.2 2019/04/15 10:53:17 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_uipc_socket_50.c,v 1.2.6.1 2019/10/21 20:06:17 martin Exp $"); #if defined(_KERNEL_OPT) #include "opt_compat_netbsd.h" @@ -210,7 +210,7 @@ uipc_socket_50_setopt1(int opt, struct s } static int -uipc_socket_50_sbts(int opt, struct mbuf **mp) +uipc_socket_50_sbts(int opt, struct mbuf ***mp) { struct timeval50 tv50; struct timeval tv; @@ -220,10 +220,10 @@ uipc_socket_50_sbts(int opt, struct mbuf if (opt & SO_OTIMESTAMP) { timeval_to_timeval50(&tv, &tv50); - *mp = sbcreatecontrol(&tv50, sizeof(tv50), SCM_OTIMESTAMP, + **mp = sbcreatecontrol(&tv50, sizeof(tv50), SCM_OTIMESTAMP, SOL_SOCKET); - if (*mp) - mp = &(*mp)->m_next; + if (**mp) + *mp = &(**mp)->m_next; return 0; } else return EPASSTHROUGH; Index: src/sys/kern/uipc_socket.c diff -u src/sys/kern/uipc_socket.c:1.281 src/sys/kern/uipc_socket.c:1.281.2.1 --- src/sys/kern/uipc_socket.c:1.281 Tue Jul 16 22:57:55 2019 +++ src/sys/kern/uipc_socket.c Mon Oct 21 20:06:17 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: uipc_socket.c,v 1.281 2019/07/16 22:57:55 pgoyette Exp $ */ +/* $NetBSD: uipc_socket.c,v 1.281.2.1 2019/10/21 20:06:17 martin Exp $ */ /* * Copyright (c) 2002, 2007, 2008, 2009 The NetBSD Foundation, Inc. @@ -71,7 +71,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.281 2019/07/16 22:57:55 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.281.2.1 2019/10/21 20:06:17 martin Exp $"); #ifdef _KERNEL_OPT #include "opt_compat_netbsd.h" @@ -2420,7 +2420,7 @@ sbsavetimestamp(int opt, struct mbuf **m microtime(&tv); - MODULE_HOOK_CALL(uipc_socket_50_sbts_hook, (opt, mp), enosys(), error); + MODULE_HOOK_CALL(uipc_socket_50_sbts_hook, (opt, &mp), enosys(), error); if (error == 0) return mp; Index: src/sys/sys/compat_stub.h diff -u src/sys/sys/compat_stub.h:1.18 src/sys/sys/compat_stub.h:1.18.2.1 --- src/sys/sys/compat_stub.h:1.18 Sat Jul 20 20:59:05 2019 +++ src/sys/sys/compat_stub.h Mon Oct 21 20:06:17 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: compat_stub.h,v 1.18 2019/07/20 20:59:05 mrg Exp $ */ +/* $NetBSD: compat_stub.h,v 1.18.2.1 2019/10/21 20:06:17 martin Exp $ */ /*- * Copyright (c) 2018 The NetBSD Foundation, Inc. @@ -231,7 +231,7 @@ MODULE_HOOK(uipc_socket_50_setopt1_hook, (int, struct socket *, const struct sockopt *)); MODULE_HOOK(uipc_socket_50_getopt1_hook, int, (int, struct socket *, struct sockopt *)); -MODULE_HOOK(uipc_socket_50_sbts_hook, int, (int, struct mbuf **)); +MODULE_HOOK(uipc_socket_50_sbts_hook, int, (int, struct mbuf ***)); /* * uipc_syscalls_50 compatibility
CVS commit: [netbsd-9] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 20:07:36 UTC 2019 Modified Files: src/doc [netbsd-9]: CHANGES-9.0 Log Message: Ticket #339 To generate a diff of this commit: cvs rdiff -u -r1.1.2.81 -r1.1.2.82 src/doc/CHANGES-9.0 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/CHANGES-9.0 diff -u src/doc/CHANGES-9.0:1.1.2.81 src/doc/CHANGES-9.0:1.1.2.82 --- src/doc/CHANGES-9.0:1.1.2.81 Thu Oct 17 19:39:31 2019 +++ src/doc/CHANGES-9.0 Mon Oct 21 20:07:36 2019 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-9.0,v 1.1.2.81 2019/10/17 19:39:31 martin Exp $ +# $NetBSD: CHANGES-9.0,v 1.1.2.82 2019/10/21 20:07:36 martin Exp $ A complete list of changes from the initial NetBSD 9.0 branch on 2019-07-30 until the 9.0 release: @@ -5074,3 +5074,10 @@ doc/3RDPARTY (apply patch) Import bind 9.14.7. [maya, ticket #351] +sys/compat/common/kern_uipc_socket_50.c 1.3 +sys/kern/uipc_socket.c1.284 +sys/sys/compat_stub.h1.19 + + sbsavetimestamp: fix mbuf pointer handling. + [pgoyette, ticket #339] +
CVS commit: [netbsd-9] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 20:07:36 UTC 2019 Modified Files: src/doc [netbsd-9]: CHANGES-9.0 Log Message: Ticket #339 To generate a diff of this commit: cvs rdiff -u -r1.1.2.81 -r1.1.2.82 src/doc/CHANGES-9.0 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/external/bsd/pkg_install/dist
Module Name:src Committed By: martin Date: Mon Oct 21 20:09:23 UTC 2019 Modified Files: src/external/bsd/pkg_install/dist/admin [netbsd-9]: main.c pkg_admin.1 src/external/bsd/pkg_install/dist/lib [netbsd-9]: license.c version.h Log Message: Pull up the following revisions, requested by joerg in ticket #352: external/bsd/pkg_install/dist/admin/main.c up to 1.4 external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 external/bsd/pkg_install/dist/lib/license.c up to 1.9 external/bsd/pkg_install/dist/lib/version.h up to 1.15 Merge pkg_install-20191008 from pkgsrc. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.3.4.1 src/external/bsd/pkg_install/dist/admin/main.c cvs rdiff -u -r1.4 -r1.4.2.1 \ src/external/bsd/pkg_install/dist/admin/pkg_admin.1 cvs rdiff -u -r1.8 -r1.8.2.1 src/external/bsd/pkg_install/dist/lib/license.c cvs rdiff -u -r1.14 -r1.14.2.1 \ src/external/bsd/pkg_install/dist/lib/version.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/external/bsd/pkg_install/dist
Module Name:src Committed By: martin Date: Mon Oct 21 20:09:23 UTC 2019 Modified Files: src/external/bsd/pkg_install/dist/admin [netbsd-9]: main.c pkg_admin.1 src/external/bsd/pkg_install/dist/lib [netbsd-9]: license.c version.h Log Message: Pull up the following revisions, requested by joerg in ticket #352: external/bsd/pkg_install/dist/admin/main.c up to 1.4 external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 external/bsd/pkg_install/dist/lib/license.c up to 1.9 external/bsd/pkg_install/dist/lib/version.h up to 1.15 Merge pkg_install-20191008 from pkgsrc. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.3.4.1 src/external/bsd/pkg_install/dist/admin/main.c cvs rdiff -u -r1.4 -r1.4.2.1 \ src/external/bsd/pkg_install/dist/admin/pkg_admin.1 cvs rdiff -u -r1.8 -r1.8.2.1 src/external/bsd/pkg_install/dist/lib/license.c cvs rdiff -u -r1.14 -r1.14.2.1 \ src/external/bsd/pkg_install/dist/lib/version.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/bsd/pkg_install/dist/admin/main.c diff -u src/external/bsd/pkg_install/dist/admin/main.c:1.3 src/external/bsd/pkg_install/dist/admin/main.c:1.3.4.1 --- src/external/bsd/pkg_install/dist/admin/main.c:1.3 Sun Mar 25 04:04:36 2018 +++ src/external/bsd/pkg_install/dist/admin/main.c Mon Oct 21 20:09:22 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.3 2018/03/25 04:04:36 sevan Exp $ */ +/* $NetBSD: main.c,v 1.3.4.1 2019/10/21 20:09:22 martin Exp $ */ #if HAVE_CONFIG_H #include "config.h" @@ -7,10 +7,10 @@ #if HAVE_SYS_CDEFS_H #include #endif -__RCSID("$NetBSD: main.c,v 1.3 2018/03/25 04:04:36 sevan Exp $"); +__RCSID("$NetBSD: main.c,v 1.3.4.1 2019/10/21 20:09:22 martin Exp $"); /*- - * Copyright (c) 1999-2009 The NetBSD Foundation, Inc. + * Copyright (c) 1999-2019 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation @@ -59,8 +59,10 @@ __RCSID("$NetBSD: main.c,v 1.3 2018/03/2 #endif #ifndef NETBSD #include +#include #else #include +#include #endif #if HAVE_LIMITS_H #include @@ -93,6 +95,7 @@ static const char Options[] = "C:K:SVbd: int quiet, verbose; static void set_unset_variable(char **, Boolean); +static void digest_input(char **); /* print usage message and exit */ void @@ -521,6 +524,9 @@ main(int argc, char *argv[]) } else if (strcasecmp(argv[0], "unset") == 0) { argv++; /* "unset" */ set_unset_variable(argv, TRUE); + } else if (strcasecmp(argv[0], "digest") == 0) { + argv++; /* "digest" */ + digest_input(argv); } else if (strcasecmp(argv[0], "config-var") == 0) { argv++; if (argv == NULL || argv[1] != NULL) @@ -736,3 +742,22 @@ set_unset_variable(char **argv, Boolean return; } + +static void +digest_input(char **argv) +{ + char digest[SHA256_DIGEST_STRING_LENGTH]; + int failures = 0; + + while (*argv != NULL) { + if (SHA256_File(*argv, digest)) { + puts(digest); + } else { + warn("cannot process %s", *argv); + ++failures; + } + argv++; + } + if (failures) + exit(EXIT_FAILURE); +} Index: src/external/bsd/pkg_install/dist/admin/pkg_admin.1 diff -u src/external/bsd/pkg_install/dist/admin/pkg_admin.1:1.4 src/external/bsd/pkg_install/dist/admin/pkg_admin.1:1.4.2.1 --- src/external/bsd/pkg_install/dist/admin/pkg_admin.1:1.4 Sat Apr 6 00:05:47 2019 +++ src/external/bsd/pkg_install/dist/admin/pkg_admin.1 Mon Oct 21 20:09:22 2019 @@ -1,10 +1,11 @@ -.\" $NetBSD: pkg_admin.1,v 1.4 2019/04/06 00:05:47 sevan Exp $ +.\" $NetBSD: pkg_admin.1,v 1.4.2.1 2019/10/21 20:09:22 martin Exp $ .\" -.\" Copyright (c) 1999-2010 The NetBSD Foundation, Inc. +.\" Copyright (c) 1999-2019 The NetBSD Foundation, Inc. .\" All rights reserved. .\" .\" This code is derived from software contributed to The NetBSD Foundation -.\" by Hubert Feyrer . +.\" by Hubert Feyrer and +.\" by Joerg Sonnenberger . .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -27,7 +28,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 25, 2018 +.Dd October 8, 2019 .Dt PKG_ADMIN 1 .Os .Sh NAME @@ -182,6 +183,9 @@ otherwise it exits with error. Print the current value of .Ar variable as used after parsing the configuration file. +.It Cm digest Ar file ... +Compute a SHA256 message digest of +.Ar file . .It Cm dump Dump the contents of the package database, similar to .Cm pkg_info -F . @@ -204,6 +208,11 @@ for packages matching Print the URL of the best matching package to stdout for each pattern. If a pattern is not matched, it is skipped and the command will return a failure. +.It Cm gpg-sign-package pkg spkg +Sign the binary package +.Ar pkg +using GPG and write the result to +
CVS commit: [netbsd-9] src/sys
Module Name:src Committed By: martin Date: Mon Oct 21 20:13:09 UTC 2019 Modified Files: src/sys/kern [netbsd-9]: sys_sig.c src/sys/sys [netbsd-9]: signalvar.h Log Message: Pull up following revision(s) (requested by maxv in ticket #353): sys/kern/sys_sig.c: revision 1.48 sys/sys/signalvar.h: revision 1.94 sys/sys/signalvar.h: revision 1.95 Introduce sigaction_copy(), to copy sigaction structures without padding, and use it in sigaction1(). This is to fix info leaks all at once in the signal functions. - Fix libkvm build. To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.47.4.1 src/sys/kern/sys_sig.c cvs rdiff -u -r1.93.2.2 -r1.93.2.3 src/sys/sys/signalvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/sys
Module Name:src Committed By: martin Date: Mon Oct 21 20:13:09 UTC 2019 Modified Files: src/sys/kern [netbsd-9]: sys_sig.c src/sys/sys [netbsd-9]: signalvar.h Log Message: Pull up following revision(s) (requested by maxv in ticket #353): sys/kern/sys_sig.c: revision 1.48 sys/sys/signalvar.h: revision 1.94 sys/sys/signalvar.h: revision 1.95 Introduce sigaction_copy(), to copy sigaction structures without padding, and use it in sigaction1(). This is to fix info leaks all at once in the signal functions. - Fix libkvm build. To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.47.4.1 src/sys/kern/sys_sig.c cvs rdiff -u -r1.93.2.2 -r1.93.2.3 src/sys/sys/signalvar.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/sys_sig.c diff -u src/sys/kern/sys_sig.c:1.47 src/sys/kern/sys_sig.c:1.47.4.1 --- src/sys/kern/sys_sig.c:1.47 Sat Dec 1 14:05:33 2018 +++ src/sys/kern/sys_sig.c Mon Oct 21 20:13:09 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: sys_sig.c,v 1.47 2018/12/01 14:05:33 maxv Exp $ */ +/* $NetBSD: sys_sig.c,v 1.47.4.1 2019/10/21 20:13:09 martin Exp $ */ /*- * Copyright (c) 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -66,7 +66,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: sys_sig.c,v 1.47 2018/12/01 14:05:33 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sys_sig.c,v 1.47.4.1 2019/10/21 20:13:09 martin Exp $"); #include "opt_dtrace.h" @@ -466,7 +466,7 @@ sigaction1(struct lwp *l, int signum, co ps = p->p_sigacts; if (osa) - *osa = SIGACTION_PS(ps, signum); + sigaction_copy(osa, &SIGACTION_PS(ps, signum)); if (!nsa) goto out; @@ -476,7 +476,7 @@ sigaction1(struct lwp *l, int signum, co goto out; } - SIGACTION_PS(ps, signum) = *nsa; + sigaction_copy(&SIGACTION_PS(ps, signum), nsa); ps->sa_sigdesc[signum].sd_tramp = tramp; ps->sa_sigdesc[signum].sd_vers = vers; sigminusset(&sigcantmask, &SIGACTION_PS(ps, signum).sa_mask); Index: src/sys/sys/signalvar.h diff -u src/sys/sys/signalvar.h:1.93.2.2 src/sys/sys/signalvar.h:1.93.2.3 --- src/sys/sys/signalvar.h:1.93.2.2 Tue Oct 15 19:23:09 2019 +++ src/sys/sys/signalvar.h Mon Oct 21 20:13:09 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: signalvar.h,v 1.93.2.2 2019/10/15 19:23:09 martin Exp $ */ +/* $NetBSD: signalvar.h,v 1.93.2.3 2019/10/21 20:13:09 martin Exp $ */ /* * Copyright (c) 1991, 1993 @@ -39,6 +39,10 @@ #include #include +#ifndef _KERNEL +#include /* Required for memset(3) and memcpy(3) prototypes */ +#endif /* _KERNEL */ + /* * Kernel signal definitions and data structures, * not exported to user programs. @@ -93,6 +97,18 @@ struct sigctx { #define SIGACTION_PS(ps, sig) (ps->sa_sigdesc[(sig)].sd_sigact) /* + * Copy a sigaction structure without padding. + */ +static __inline void +sigaction_copy(struct sigaction *dst, const struct sigaction *src) +{ + memset(dst, 0, sizeof(*dst)); + dst->_sa_u._sa_handler = src->_sa_u._sa_handler; + memcpy(&dst->sa_mask, &src->sa_mask, sizeof(dst->sa_mask)); + dst->sa_flags = src->sa_flags; +} + +/* * Signal properties and actions. * The array below categorizes the signals and their default actions * according to the following properties:
CVS commit: [netbsd-9] src/sys/fs/ntfs
Module Name:src Committed By: martin Date: Mon Oct 21 20:15:03 UTC 2019 Modified Files: src/sys/fs/ntfs [netbsd-9]: ntfs_subr.c ntfs_vfsops.c Log Message: Pull up following revision(s) (requested by hannken in ticket #354): sys/fs/ntfs/ntfs_vfsops.c: revision 1.108 sys/fs/ntfs/ntfs_subr.c: revision 1.62 It is not possible to call vflush() from xxx_mount(). Replace with a vnode iterator and use vrecycle(). - When the MFT record size is lower than the cluster size we have to read consecutive clusters to fill the MFT record. Should fix PR kern/54598: mount ntfs panic To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.61.22.1 src/sys/fs/ntfs/ntfs_subr.c cvs rdiff -u -r1.107 -r1.107.16.1 src/sys/fs/ntfs/ntfs_vfsops.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/ntfs/ntfs_subr.c diff -u src/sys/fs/ntfs/ntfs_subr.c:1.61 src/sys/fs/ntfs/ntfs_subr.c:1.61.22.1 --- src/sys/fs/ntfs/ntfs_subr.c:1.61 Sat Mar 28 19:24:05 2015 +++ src/sys/fs/ntfs/ntfs_subr.c Mon Oct 21 20:15:02 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ntfs_subr.c,v 1.61 2015/03/28 19:24:05 maxv Exp $ */ +/* $NetBSD: ntfs_subr.c,v 1.61.22.1 2019/10/21 20:15:02 martin Exp $ */ /*- * Copyright (c) 1998, 1999 Semen Ustimenko (sem...@freebsd.org) @@ -29,7 +29,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ntfs_subr.c,v 1.61 2015/03/28 19:24:05 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ntfs_subr.c,v 1.61.22.1 2019/10/21 20:15:02 martin Exp $"); #include #include @@ -271,6 +271,8 @@ ntfs_loadntnode(struct ntfsmount *ntmp, struct buf *bp; daddr_t bn; off_t boff; + size_t resid, l; + char *data; dprintf(("%s: read system node\n", __func__)); @@ -281,17 +283,26 @@ ntfs_loadntnode(struct ntfsmount *ntmp, boff = ntfs_cntob(ntmp->ntm_mftcn) + ntfs_bntob(ntmp->ntm_bpmftrec) * ip->i_number; bn = ntfs_cntobn(ntfs_btocn(boff)); - off = ntfs_btocnoff(boff); + boff = ntfs_btocnoff(boff); + resid = ntfs_bntob(ntmp->ntm_bpmftrec); + data = (char *)mfrp; + while (resid > 0) { + l = MIN(resid, ntfs_cntob(1) - boff); + + error = bread(ntmp->ntm_devvp, bn, ntfs_cntob(1), + 0, &bp); + if (error) { +printf("%s: BREAD FAILED\n", __func__); +goto out; + } + memcpy(data, (char *)bp->b_data + boff, l); + bqrelse(bp); - error = bread(ntmp->ntm_devvp, bn, ntfs_cntob(1), - 0, &bp); - if (error) { - printf("%s: BREAD FAILED\n", __func__); - goto out; + bn += ntfs_cntobn(1); + boff = 0; + data += l; + resid -= l; } - memcpy(mfrp, (char *)bp->b_data + off, - ntfs_bntob(ntmp->ntm_bpmftrec)); - bqrelse(bp); } else { struct vnode *vp; Index: src/sys/fs/ntfs/ntfs_vfsops.c diff -u src/sys/fs/ntfs/ntfs_vfsops.c:1.107 src/sys/fs/ntfs/ntfs_vfsops.c:1.107.16.1 --- src/sys/fs/ntfs/ntfs_vfsops.c:1.107 Mon Apr 17 08:32:00 2017 +++ src/sys/fs/ntfs/ntfs_vfsops.c Mon Oct 21 20:15:02 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: ntfs_vfsops.c,v 1.107 2017/04/17 08:32:00 hannken Exp $ */ +/* $NetBSD: ntfs_vfsops.c,v 1.107.16.1 2019/10/21 20:15:02 martin Exp $ */ /*- * Copyright (c) 1998, 1999 Semen Ustimenko @@ -29,7 +29,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ntfs_vfsops.c,v 1.107 2017/04/17 08:32:00 hannken Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ntfs_vfsops.c,v 1.107.16.1 2019/10/21 20:15:02 martin Exp $"); #include #include @@ -322,6 +322,7 @@ ntfs_mountfs(struct vnode *devvp, struct dev_t dev = devvp->v_rdev; int error, i; struct vnode *vp; + struct vnode_iterator *marker; ntmp = NULL; @@ -471,9 +472,13 @@ out1: if (ntmp->ntm_sysvn[i]) vrele(ntmp->ntm_sysvn[i]); - if (vflush(mp, NULLVP, 0)) { - dprintf(("ntfs_mountfs: vflush failed\n")); + vfs_vnode_iterator_init(mp, &marker); + while ((vp = vfs_vnode_iterator_next(marker, NULL, NULL))) { + if (vrecycle(vp)) + continue; + panic("%s: cannot recycle vnode %p", __func__, vp); } + vfs_vnode_iterator_destroy(marker); out: spec_node_setmountedfs(devvp, NULL); if (bp)
CVS commit: [netbsd-9] src/sys/fs/ntfs
Module Name:src Committed By: martin Date: Mon Oct 21 20:15:03 UTC 2019 Modified Files: src/sys/fs/ntfs [netbsd-9]: ntfs_subr.c ntfs_vfsops.c Log Message: Pull up following revision(s) (requested by hannken in ticket #354): sys/fs/ntfs/ntfs_vfsops.c: revision 1.108 sys/fs/ntfs/ntfs_subr.c: revision 1.62 It is not possible to call vflush() from xxx_mount(). Replace with a vnode iterator and use vrecycle(). - When the MFT record size is lower than the cluster size we have to read consecutive clusters to fill the MFT record. Should fix PR kern/54598: mount ntfs panic To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.61.22.1 src/sys/fs/ntfs/ntfs_subr.c cvs rdiff -u -r1.107 -r1.107.16.1 src/sys/fs/ntfs/ntfs_vfsops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/sys/uvm
Module Name:src Committed By: martin Date: Mon Oct 21 20:17:31 UTC 2019 Modified Files: src/sys/uvm [netbsd-9]: uvm_mmap.c Log Message: Pull up following revision(s) (requested by maxv in ticket #355): sys/uvm/uvm_mmap.c: revision 1.173 Change 'npgs' from int to size_t. Otherwise the 64bit->32bit conversion could lead to npgs=0, which is not expected. It later triggers a panic in uvm_vsunlock(). Found by TriforceAFL (Akul Pillai). To generate a diff of this commit: cvs rdiff -u -r1.172 -r1.172.4.1 src/sys/uvm/uvm_mmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/sys/uvm
Module Name:src Committed By: martin Date: Mon Oct 21 20:17:31 UTC 2019 Modified Files: src/sys/uvm [netbsd-9]: uvm_mmap.c Log Message: Pull up following revision(s) (requested by maxv in ticket #355): sys/uvm/uvm_mmap.c: revision 1.173 Change 'npgs' from int to size_t. Otherwise the 64bit->32bit conversion could lead to npgs=0, which is not expected. It later triggers a panic in uvm_vsunlock(). Found by TriforceAFL (Akul Pillai). To generate a diff of this commit: cvs rdiff -u -r1.172 -r1.172.4.1 src/sys/uvm/uvm_mmap.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/uvm/uvm_mmap.c diff -u src/sys/uvm/uvm_mmap.c:1.172 src/sys/uvm/uvm_mmap.c:1.172.4.1 --- src/sys/uvm/uvm_mmap.c:1.172 Sat Apr 6 03:06:29 2019 +++ src/sys/uvm/uvm_mmap.c Mon Oct 21 20:17:31 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_mmap.c,v 1.172 2019/04/06 03:06:29 thorpej Exp $ */ +/* $NetBSD: uvm_mmap.c,v 1.172.4.1 2019/10/21 20:17:31 martin Exp $ */ /* * Copyright (c) 1997 Charles D. Cranor and Washington University. @@ -46,7 +46,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: uvm_mmap.c,v 1.172 2019/04/06 03:06:29 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uvm_mmap.c,v 1.172.4.1 2019/10/21 20:17:31 martin Exp $"); #include "opt_compat_netbsd.h" #include "opt_pax.h" @@ -132,7 +132,8 @@ sys_mincore(struct lwp *l, const struct vaddr_t start, end, lim; struct vm_map *map; vsize_t len; - int error = 0, npgs; + int error = 0; + size_t npgs; map = &p->p_vmspace->vm_map;
CVS commit: [netbsd-9] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 20:25:53 UTC 2019 Modified Files: src/doc [netbsd-9]: CHANGES-9.0 Log Message: Tickets #352 - #355 To generate a diff of this commit: cvs rdiff -u -r1.1.2.82 -r1.1.2.83 src/doc/CHANGES-9.0 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-9] src/doc
Module Name:src Committed By: martin Date: Mon Oct 21 20:25:53 UTC 2019 Modified Files: src/doc [netbsd-9]: CHANGES-9.0 Log Message: Tickets #352 - #355 To generate a diff of this commit: cvs rdiff -u -r1.1.2.82 -r1.1.2.83 src/doc/CHANGES-9.0 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/CHANGES-9.0 diff -u src/doc/CHANGES-9.0:1.1.2.82 src/doc/CHANGES-9.0:1.1.2.83 --- src/doc/CHANGES-9.0:1.1.2.82 Mon Oct 21 20:07:36 2019 +++ src/doc/CHANGES-9.0 Mon Oct 21 20:25:52 2019 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-9.0,v 1.1.2.82 2019/10/21 20:07:36 martin Exp $ +# $NetBSD: CHANGES-9.0,v 1.1.2.83 2019/10/21 20:25:52 martin Exp $ A complete list of changes from the initial NetBSD 9.0 branch on 2019-07-30 until the 9.0 release: @@ -5081,3 +5081,31 @@ sys/sys/compat_stub.h1.19 sbsavetimestamp: fix mbuf pointer handling. [pgoyette, ticket #339] +external/bsd/pkg_install/dist/admin/main.c up to 1.4 +external/bsd/pkg_install/dist/admin/pkg_admin.1 up to 1.5 +external/bsd/pkg_install/dist/lib/license.c up to 1.9 +external/bsd/pkg_install/dist/lib/version.h up to 1.15 + + Merge pkg_install-20191008 from pkgsrc. + [joerg, ticket #352] + +sys/kern/sys_sig.c1.48 +sys/sys/signalvar.h1.94,1.95 + + Fix info leaks in the signal functions. + [maxv, ticket #353] + +sys/fs/ntfs/ntfs_subr.c1.62 +sys/fs/ntfs/ntfs_vfsops.c 1.108 + + It is not possible to call vflush() from xxx_mount(). + Replace with a vnode iterator and use vrecycle(). + When the MFT record size is lower than the cluster size we have + to read consecutive clusters to fill the MFT record. + [hannken, ticket #354] + +sys/uvm/uvm_mmap.c1.173 + + Change 'npgs' from int to size_t. + [maxv, ticket #355] +
CVS commit: src/distrib/sets/lists/xcomp
Module Name:src Committed By: uki Date: Tue Oct 22 03:01:53 UTC 2019 Modified Files: src/distrib/sets/lists/xcomp: mi Log Message: Give syspkg names to xcomp all online manuals To generate a diff of this commit: cvs rdiff -u -r1.212 -r1.213 src/distrib/sets/lists/xcomp/mi 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/xetc
Module Name:src Committed By: uki Date: Tue Oct 22 06:28:18 UTC 2019 Modified Files: src/distrib/sets/lists/xetc: md.x68k mi Log Message: Give syspkg names to xetc files To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/distrib/sets/lists/xetc/md.x68k cvs rdiff -u -r1.36 -r1.37 src/distrib/sets/lists/xetc/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/xetc/md.x68k diff -u src/distrib/sets/lists/xetc/md.x68k:1.5 src/distrib/sets/lists/xetc/md.x68k:1.6 --- src/distrib/sets/lists/xetc/md.x68k:1.5 Thu Mar 29 04:43:55 2018 +++ src/distrib/sets/lists/xetc/md.x68k Tue Oct 22 06:28:18 2019 @@ -1,2 +1,2 @@ -# $NetBSD: md.x68k,v 1.5 2018/03/29 04:43:55 snj Exp $ -./etc/X11/X68kConfig -unknown- xorg +# $NetBSD: md.x68k,v 1.6 2019/10/22 06:28:18 uki Exp $ +./etc/X11/X68kConfig xetc-x11-etc xorg Index: src/distrib/sets/lists/xetc/mi diff -u src/distrib/sets/lists/xetc/mi:1.36 src/distrib/sets/lists/xetc/mi:1.37 --- src/distrib/sets/lists/xetc/mi:1.36 Sun Aug 18 07:25:54 2019 +++ src/distrib/sets/lists/xetc/mi Tue Oct 22 06:28:18 2019 @@ -1,87 +1,87 @@ -# $NetBSD: mi,v 1.36 2019/08/18 07:25:54 maya Exp $ +# $NetBSD: mi,v 1.37 2019/10/22 06:28:18 uki Exp $ # # Note: don't delete entries from here - mark them as "obsolete" instead. # -./etc/X11/ctwm/system.ctwmrc-unknown- xorg -./etc/X11/fs/config -unknown- xorg +./etc/X11/ctwm/system.ctwmrcxetc-ctwm-etc xorg +./etc/X11/fs/config xetc-xfs-etc xorg ./etc/X11/lbxproxy/AtomControlxetc-obsolete obsolete,xorg -./etc/X11/proxymngr/pmconfig-unknown- xorg -./etc/X11/twm/system.twmrc-unknown- xorg -./etc/X11/xdm/GiveConsole-unknown- xorg -./etc/X11/xdm/TakeConsole-unknown- xorg -./etc/X11/xdm/Xaccess -unknown- xorg -./etc/X11/xdm/Xreset -unknown- xorg -./etc/X11/xdm/Xresources-unknown- xorg -./etc/X11/xdm/Xservers -unknown- xorg -./etc/X11/xdm/Xservers.fs-unknown- xorg -./etc/X11/xdm/Xservers.ws-unknown- xorg -./etc/X11/xdm/Xsession -unknown- xorg -./etc/X11/xdm/Xsetup_0 -unknown- xorg -./etc/X11/xdm/Xstartup -unknown- xorg -./etc/X11/xdm/Xwilling -unknown- xorg -./etc/X11/xdm/xdm-config-unknown- xorg +./etc/X11/proxymngr/pmconfigxetc-proxymngr-etc xorg +./etc/X11/twm/system.twmrcxetc-twm-etc xorg +./etc/X11/xdm/GiveConsolexetc-xdm-etc xorg +./etc/X11/xdm/TakeConsolexetc-xdm-etc xorg +./etc/X11/xdm/Xaccess xetc-xdm-etc xorg +./etc/X11/xdm/Xreset xetc-xdm-etc xorg +./etc/X11/xdm/Xresourcesxetc-xdm-etc xorg +./etc/X11/xdm/Xservers xetc-xdm-etc xorg +./etc/X11/xdm/Xservers.fsxetc-xdm-etc xorg +./etc/X11/xdm/Xservers.wsxetc-xdm-etc xorg +./etc/X11/xdm/Xsession xetc-xdm-etc xorg +./etc/X11/xdm/Xsetup_0 xetc-xdm-etc xorg +./etc/X11/xdm/Xstartup xetc-xdm-etc xorg +./etc/X11/xdm/Xwilling xetc-xdm-etc xorg +./etc/X11/xdm/xdm-configxetc-xdm-etc xorg ./etc/X11/xdm/xorg-bw.xpmxetc-obsolete obsolete ./etc/X11/xdm/xorg.xpm xetc-obsolete obsolete -./etc/X11/xinit/xinitrc -unknown- xorg -./etc/X11/xsm/system.xsm-unknown- xorg -./etc/drirc -unknown- xorg -./etc/fonts/conf.avail/10-autohint.conf -unknown- xorg -./etc/fonts/conf.avail/10-hinting-full.conf -unknown- xorg -./etc/fonts/conf.avail/10-hinting-medium.conf -unknown- xorg -./etc/fonts/conf.avail/10-hinting-none.conf -unknown- xorg -./etc/fonts/conf.avail/10-hinting-slight.conf -unknown- xorg -./etc/fonts/conf.avail/10-no-sub-pixel.conf -unknown- xorg -./etc/fonts/conf.avail/10-scale-bitmap-fonts.conf -unknown- xorg -./etc/fonts/conf.avail/10-sub-pixel-bgr.conf -unknown- xorg -./etc/fonts/conf.avail/10-sub-pixel-rgb.conf -unknown- xorg -./etc/fonts/conf.avail/10-sub-pixel-vbgr.conf -unknown- xorg -./etc/fonts/conf.avail/10-sub-pixel-vrgb.conf -unknown- xorg -./etc/fonts/conf.avail/10-unhinted.conf -unknown- xorg -./etc/fonts/conf.avail/11-lcdfilter-default.conf -unknown- xorg -./etc/fonts/conf.avail/11-lcdfilter-legacy.conf -unknown- xorg -./etc/fonts/conf.avail/11-lcdfilter-light.conf -unknown- xorg -./etc/fonts/conf.avail/20-fix-globaladvance.conf -unknown- obsolete -./etc/fonts/conf.avail/20-unhint-small-vera.conf -unknown- xorg -./etc/fonts/conf.avail/25-unhint-nonlatin.conf -unknown- xorg -./etc/fonts/conf.avail/30-metric-aliases.conf -unknown- xorg -./etc/fonts/conf.avail/30-urw-aliases.conf -unknown- obsolete -./etc/fonts/conf.avail/40-nonlatin.conf -unknown- xorg -./etc/fonts/conf.avail/45-generic.conf -unknown- xorg -./etc/fonts/conf.avail/45-latin.conf -unknown- xorg -./etc/fonts/conf.avail/49-sansserif.conf -unknown- xorg -./etc/fonts/conf.avail/50-user.conf -unknown- xorg -./etc/fonts/conf.avail/51-local.conf -unknown- xorg -./etc/fonts/conf.avail/60-generic.conf -unknown- xorg -./etc/fonts/conf.avail/60-latin.conf -unknown- xorg -./etc/fonts/conf.avail/65-fonts-persian
CVS commit: src/distrib/sets/lists/xetc
Module Name:src Committed By: uki Date: Tue Oct 22 06:28:18 UTC 2019 Modified Files: src/distrib/sets/lists/xetc: md.x68k mi Log Message: Give syspkg names to xetc files To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/distrib/sets/lists/xetc/md.x68k cvs rdiff -u -r1.36 -r1.37 src/distrib/sets/lists/xetc/mi Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.