Recent changes to this wiki:

Add PR 55997 as a regression since -9 (even if its cause is not clearly pinpointed to a kernel regression yet)
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- wikisrc/releng/netbsd-10.mdwn	19 Feb 2021 18:47:43 -0000	1.36
+++ wikisrc/releng/netbsd-10.mdwn	27 Feb 2021 10:06:38 -0000	1.37
@@ -14,6 +14,7 @@
 * ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
 * ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
 * ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
+* [[!template id=pr number=55997]]: lang/perl5 fails to build on NetBSD-current under COMPAT_NETBSD32
 
 ## PRs worth fixing
 

various links to man pages, etc
Index: wikisrc/ports/evbarm/raspberry_pi.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/raspberry_pi.mdwn,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -r1.143 -r1.144
--- wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:31:25 -0000	1.143
+++ wikisrc/ports/evbarm/raspberry_pi.mdwn	27 Feb 2021 07:52:06 -0000	1.144
@@ -21,13 +21,15 @@
  - root filesystem can be uSD or USB-attached mass storage
  - serial or graphics console (with EDID query / parsing)
  - X11 via HDMI
- - GPU (VCHIQ) - 3D and video decode. man page missing.
- - USB host controller - dwctwo(4) and most devices work
- - Ethernet - usmsc(4), mue(4)
- - DMA controller driver and sdhc(4) support
+	- via framebuffer (and llvmpipe on AArch64), X11 does not use the VideoCore GPU
+ - GPU (OpenGL ES and video decoding acceleration) - [vchiq(4)](//man.netbsd.org/evbarm/vchiq.4)
+	- with 32-bit kernels only, see man page
+ - USB host controller - [dwctwo(4)](//man.netbsd.org/evbarm/dwctwo.4) and most devices work
+ - Ethernet - [usmsc(4)](//man.netbsd.org/usmsc.4), [mue(4)](//man.netbsd.org/mue.4)
+ - DMA controller driver and [sdhc(4)](//man.netbsd.org/sdhc.4) support
  - RNG
- - Audio: works. man page missing.
- - GPIO
+ - Audio - [vcaudio(4)](//man.netbsd.org/evbarm/vcaudio.4])
+ - GPIO - [bcmgpio(4)](//man.netbsd.org/evbarm/bcmgpio.4)
  - I²C: works, could use enhancements, man page
  - SPI: could use enhancements, man page
 
@@ -39,13 +41,12 @@
 ## NetBSD current
 
  - RPI4 (using EDK2 UEFI firmware)
-	- RPI4 Ethernet (Broadcom GENETv5) - genet(4)
+	- RPI4 Ethernet (Broadcom GENETv5) - genet(4); needs man page
  - RPI3/RPI4 audio with aarch64 kernels
 	- Previously the driver was only included with 32-bit (ARMv7/ARMv6)
-	  kernels and images due to the Broadcom code having 64-bit cleanliness
-	  issues.
+	  kernels, now works [due to dma-ranges](//mail-index.NetBSD.org/source-changes-d/2021/01/22/msg013133.html).
  - RPI3 builtin bluetooth
- - RPI3 and RPI0W builtin WiFi - bwfm(4)
+ - RPI3 and RPI0W builtin WiFi - [bwfm(4)](//man.netbsd.org/bwfm.4)
  - Big endian support
 
 ## What needs documenting if it works

xen: improve booting info
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.190
retrieving revision 1.191
diff -u -r1.190 -r1.191
--- wikisrc/ports/xen/howto.mdwn	26 Feb 2021 18:39:20 -0000	1.190
+++ wikisrc/ports/xen/howto.mdwn	26 Feb 2021 19:03:20 -0000	1.191
@@ -107,19 +107,21 @@
 
 Support for PVHVM and PVH is available only in NetBSD-current.
 
-NetBSD as a dom0 does not run SMP, because some drivers are not yet
-safe for this.  \todo Link to more information about what needs work.
+NetBSD up to and including NetBSD 9 as a dom0 does not run SMP,
+because some drivers are not yet safe for this.  NetBSD-current
+supports SMP in dom0.
 
 NetBSD, when run as a domU, can and does typically run SMP.
 
-Note: NetBSD support is called XEN3.  However, it does support Xen 4,
-because the hypercall interface has remained identical.
+Note that while Xen 4.13 is current, the kernel support is still
+called XEN3, because the hypercall interface has not changed
+significantly.
 
 # Creating a NetBSD dom0
 
-In order to install a NetBSD as a dom0, one must first install a normal
-NetBSD system, and then pivot the install to a dom0 install by changing
-the kernel and boot configuration.
+In order to install a NetBSD as a dom0, one first installs a normal
+NetBSD system, and then pivot the install to a dom0 install by
+changing the kernel and boot configuration.
 
 In 2018-05, trouble booting a dom0 was reported with 256M of RAM: with
 512M it worked reliably.  This does not make sense, but if you see
@@ -127,12 +129,16 @@
 
 ## Installation of NetBSD
 
-[Install NetBSD/amd64](/guide/inst/)
-just as you would if you were not using Xen.
-Therefore, use the most recent release, or a build from the most recent stable branch.
+[Install NetBSD/amd64](/guide/inst/) just as you would if you were not
+using Xen.  Therefore, use the most recent release, or a build from
+the most recent stable branch.  Alternatively, use -current, being
+mindful of all the usual caveats of lower stability of current, and
+likely a bit more so.
 
 ## Installation of Xen
 
+### Building Xen
+
 Use the most recent version of Xen in pkgsrc, unless the DESCR says that it is not suitable.
 Therefore, choose 4.13.
 In the dom0, install xenkernel413 and xentools413 from pkgsrc.
@@ -144,28 +150,49 @@
 # cp -p /usr/pkg/xen413-kernel/xen.gz /
 """]]
 
-Then, place a NetBSD XEN3_DOM0 kernel in the `/` directory. Such kernel
-can either be compiled manually, or downloaded from the NetBSD FTP, for
-example at:
+Then, place a NetBSD XEN3_DOM0 kernel in the `/` directory. Such
+kernel can either be taken from a local release build.sh run, compiled
+manually, or downloaded from the NetBSD FTP, for example at:
 
 [[!template id=programlisting text="""
 ftp.netbsd.org/pub/NetBSD/NetBSD-9.1/amd64/binary/kernel/netbsd-XEN3_DOM0.gz
 """]]
 
-Add a line to /boot.cfg to boot Xen:
+### Configuring booting
+
+Read boot.cfg(8) carefully.  Add lines to /boot.cfg to boot Xen:
 
 [[!template id=filecontent name="/boot.cfg" text="""
 menu=Xen:load /netbsd-XEN3_DOM0.gz console=pc;multiboot /xen.gz dom0_mem=512M
+menu=Xen single user:load /netbsd-XEN3_DOM0.gz console=pc -s;multiboot /xen.gz dom0_mem=512M
 """]]
 
+\todo Explain why console=pc is given.  Perhaps there is some notion
+of a separate console instead of xencons.
+
+\todo Check the single user line.
+
 This specifies that the dom0 should have 512MB of ram, leaving the rest
 to be allocated for domUs.
 
-NB: This says add, not replace, so that you will be able to boot a
-NetBSD kernel without Xen.  Once Xen boots ok, you may want to set it
-as default.
+NB: This says add, not replace, so that you will be able to more
+easily boot a NetBSD kernel without Xen.  Once Xen boots ok, you may
+want to set it as default.  It is highly likely that you will have
+trouble at some point, and keeping an up-to-date GENERIC for use in
+fixing problems is the standard prudent approach.
+
+### Console selection
+
+See boot_console(8).  Understand that you should start from a place of
+having console setup correct for booting GENERIC before trying to
+configure Xen.
+
+By default, the hypervisor (Xen itself) will use \todo as the console
 
-To use a serial console, add settings as follows:
+By default, the NetBSD dom0 kernel will use xencons(4) (the man page
+does not exist) as console.
+
+To use a serial console for the Xen hypervisor, add settings as follows:
 
 [[!template id=filecontent name="/boot.cfg" text="""
 menu=Xen:load /netbsd-XEN3_DOM0.gz;multiboot /xen.gz dom0_mem=512M console=com1 com1=9600,8n1
@@ -178,12 +205,21 @@
 which directs the console I/O through Xen to the same console device Xen
 itself uses (in this case, the serial port).
 
+\todo Explain why boot.cfg shows forcing the dom0 console also,
+separately from the hypervisor console.
+
+### Tuning
+
 In an attempt to add performance, one can also add `dom0_max_vcpus=1 dom0_vcpus_pin`,
 to force only one vcpu to be provided (since NetBSD dom0 can't use
 more) and to pin that vcpu to a physical CPU. Xen has
 [many boot options](http://xenbits.xenproject.org/docs/4.13-testing/misc/xen-command-line.html),
 and other than dom0 memory and max_vcpus, they are generally not
 necessary.
+\todo Revisit this advice with current.
+\todo Explain if anyone has ever actually measured that this helps.
+
+### rc.conf
 
 Ensure that the boot scripts installed in
 `/usr/pkg/share/examples/rc.d` are in `/etc/rc.d`, either because you
@@ -198,6 +234,8 @@
 
 \todo Recommend for/against xen-watchdog.
 
+### Testing
+
 Now, reboot so that you are running a DOM0 kernel under Xen, rather
 than GENERIC without Xen.
 
@@ -234,9 +272,9 @@
 There are (at least) two additional things different about NetBSD as a
 dom0 kernel compared to hardware.
 
-One is that the module ABI is different because some of the #defines
-change, so one must build modules for Xen.  As of netbsd-7, the build
-system does this automatically.
+One is that through NetBSD 9 the module ABI is different because some
+of the #defines change, so there are separate sets of modules in
+/stand.  In NetBSD-current, there is only one set of modules.
 
 The other difference is that XEN3_DOM0 does not have exactly the same
 options as GENERIC.  While it is debatable whether or not this is a
@@ -260,8 +298,8 @@
 replaces the kernel and reboots, and then overlays userland binaries
 and adjusts `/etc`.
 
-Note that one must update both the non-Xen kernel typically used for
-rescue purposes and the DOM0 kernel used with Xen.
+Note that one should update both the non-Xen kernel typically used for
+rescue purposes, as well as the DOM0 kernel used with Xen.
 
 ## anita (for testing NetBSD)
 
@@ -561,13 +599,11 @@
 
 \todo Explain where the kernel comes from.
 
-
 ## Creating a Solaris domU
 
 See possibly outdated
 [Solaris domU instructions](/ports/xen/howto-solaris/).
 
-
 ## PCI passthrough: Using PCI devices in guest domains
 
 NB: PCI passthrough only works on some Xen versions and as of 2020 it

xen: Demote info about migration from grub
At this point anything about grub is ancient history and there's no
reason to believe there are any maintained netbsd/xen systems with
grub. We already have a place to store the old info, so simply demote
the conversion information to tidy the main HOWTO.
Members: 
	ports/xen/howto-grub.mdwn:1.2->1.3 
	ports/xen/howto.mdwn:1.189->1.190 

Index: wikisrc/ports/xen/howto-grub.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto-grub.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/ports/xen/howto-grub.mdwn	24 Dec 2014 01:05:19 -0000	1.2
+++ wikisrc/ports/xen/howto-grub.mdwn	26 Feb 2021 18:39:20 -0000	1.3
@@ -6,6 +6,40 @@
 to use the native boot code, and that you probably should not be
 reading this.
 
+Converting from grub to /boot
+-----------------------------
+
+These instructions are provided only to help people using grub, which
+used to be the normal approach.
+
+These instructions were used to convert a system from
+grub to /boot.  The system was originally installed in February of
+2006 with a RAID1 setup and grub to boot Xen 2, and has been updated
+over time.  Before these commands, it was running NetBSD 6 i386, Xen
+4.1 and grub, much like the message linked earlier in the grub
+section.
+
+[[!template id=programlisting text="""
+# Install MBR bootblocks on both disks.
+fdisk -i /dev/rwd0d
+fdisk -i /dev/rwd1d
+# Install NetBSD primary boot loader (/ is FFSv1) into RAID1 components.
+installboot -v /dev/rwd0d /usr/mdec/bootxx_ffsv1
+installboot -v /dev/rwd1d /usr/mdec/bootxx_ffsv1
+# Install secondary boot loader
+cp -p /usr/mdec/boot /
+# Create boot.cfg following earlier guidance:
+menu=Xen:load /netbsd-XEN3PAE_DOM0.gz console=pc;multiboot /xen.gz dom0_mem=512M
+menu=Xen.ok:load /netbsd-XEN3PAE_DOM0.ok.gz console=pc;multiboot /xen.ok.gz dom0_mem=512M
+menu=GENERIC:boot
+menu=GENERIC single-user:boot -s
+menu=GENERIC.ok:boot netbsd.ok
+menu=GENERIC.ok single-user:boot netbsd.ok -s
+menu=Drop to boot prompt:prompt
+default=1
+timeout=30
+"""]]
+
 Install
 -------
 
@@ -20,7 +54,6 @@
 Grub config
 -----------
 
-
     #Grub config file for NetBSD/xen. Copy as /grub/menu.lst and run
     # grub-install /dev/rwd0d (assuming your boot device is wd0).
     #
@@ -77,7 +110,6 @@
       chainloader +1
 
     ## end of grub config file.
-          
 
 Install grub with the following command:
 
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.189
retrieving revision 1.190
diff -u -r1.189 -r1.190
--- wikisrc/ports/xen/howto.mdwn	19 Nov 2020 13:55:58 -0000	1.189
+++ wikisrc/ports/xen/howto.mdwn	26 Feb 2021 18:39:20 -0000	1.190
@@ -273,39 +273,6 @@
 anita --vmm=xl test file:///usr/obj/i386/
 """]]
 
-## Converting from grub to /boot (historical note)
-
-These instructions are provided only to help people using grub, which
-used to be the normal approach.
-
-These instructions were used to convert a system from
-grub to /boot.  The system was originally installed in February of
-2006 with a RAID1 setup and grub to boot Xen 2, and has been updated
-over time.  Before these commands, it was running NetBSD 6 i386, Xen
-4.1 and grub, much like the message linked earlier in the grub
-section.
-
-[[!template id=programlisting text="""
-# Install MBR bootblocks on both disks.
-fdisk -i /dev/rwd0d
-fdisk -i /dev/rwd1d
-# Install NetBSD primary boot loader (/ is FFSv1) into RAID1 components.
-installboot -v /dev/rwd0d /usr/mdec/bootxx_ffsv1
-installboot -v /dev/rwd1d /usr/mdec/bootxx_ffsv1
-# Install secondary boot loader
-cp -p /usr/mdec/boot /
-# Create boot.cfg following earlier guidance:
-menu=Xen:load /netbsd-XEN3PAE_DOM0.gz console=pc;multiboot /xen.gz dom0_mem=512M
-menu=Xen.ok:load /netbsd-XEN3PAE_DOM0.ok.gz console=pc;multiboot /xen.ok.gz dom0_mem=512M
-menu=GENERIC:boot
-menu=GENERIC single-user:boot -s
-menu=GENERIC.ok:boot netbsd.ok
-menu=GENERIC.ok single-user:boot netbsd.ok -s
-menu=Drop to boot prompt:prompt
-default=1
-timeout=30
-"""]]
-
 # Unprivileged domains (domU)
 
 This section describes general concepts about domUs.  It does not

link to non-external package listings
Index: wikisrc/templates/page.tmpl
===================================================================
RCS file: /cvsroot/wikisrc/templates/page.tmpl,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- wikisrc/templates/page.tmpl	2 Jan 2021 09:02:49 -0000	1.68
+++ wikisrc/templates/page.tmpl	24 Feb 2021 09:02:41 -0000	1.69
@@ -82,7 +82,7 @@
 		    Gallery</a></li>
 	<li><a href="//wiki.NetBSD.org/ports/">
 		    Ports</a></li>
-	<li><a href="http://pkgsrc.se/">
+	<li><a href="//cdn.netbsd.org/pub/pkgsrc/current/pkgsrc/README.html">
 		    Packages</a></li>
 	</ul>
 	</li>

section was updated, reflect that
Index: wikisrc/ports/evbarm/raspberry_pi.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/raspberry_pi.mdwn,v
retrieving revision 1.142
retrieving revision 1.143
diff -u -r1.142 -r1.143
--- wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:22:48 -0000	1.142
+++ wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:31:25 -0000	1.143
@@ -50,7 +50,6 @@
 
 ## What needs documenting if it works
 
- - (Everything listed in the previous section.)
  - CM1
  - CM3
  - CM3lite

various fixes
Index: wikisrc/ports/evbarm/raspberry_pi.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/raspberry_pi.mdwn,v
retrieving revision 1.141
retrieving revision 1.142
diff -u -r1.141 -r1.142
--- wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:05:57 -0000	1.141
+++ wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:22:48 -0000	1.142
@@ -10,9 +10,7 @@
 
 <small>([Raspberry Pi image](http://www.flickr.com/photos/42325803@N07/8118758647/) by Christopher Lee used under CC-By-2.0 license)</small>
 
-# What works (and what doesn't yet)
-
-"Works" is primarily relative to the earmv6hf-el and earmv7hf-el CPU targets (32-bit).
+# What works
 
 ## NetBSD 8
 
@@ -25,7 +23,7 @@
  - X11 via HDMI
  - GPU (VCHIQ) - 3D and video decode. man page missing.
  - USB host controller - dwctwo(4) and most devices work
- - USB Ethernet - usmsc(4)
+ - Ethernet - usmsc(4), mue(4)
  - DMA controller driver and sdhc(4) support
  - RNG
  - Audio: works. man page missing.
@@ -40,14 +38,15 @@
 
 ## NetBSD current
 
+ - RPI4 (using EDK2 UEFI firmware)
+	- RPI4 Ethernet (Broadcom GENETv5) - genet(4)
  - RPI3/RPI4 audio with aarch64 kernels
 	- Previously the driver was only included with 32-bit (ARMv7/ARMv6)
 	  kernels and images due to the Broadcom code having 64-bit cleanliness
 	  issues.
  - RPI3 builtin bluetooth
- - RPI3 and RPI0W builtin WiFi
- - RPI4 (using EDK2 UEFI firmware)
-	- RPI4 Ethernet (Broadcom GENETv5, genet(4))
+ - RPI3 and RPI0W builtin WiFi - bwfm(4)
+ - Big endian support
 
 ## What needs documenting if it works
 
@@ -68,23 +67,21 @@
  - RPI0 uses "earmv6hf".
  - RPI0W uses "earmv6hf".
  - RPI2 uses "earmv7hf".
- - RPI2-1.2 uses "earmv7hf" or "aarch64" (armv8 CPU hardware)
- - RPI3 uses "earmv7hf" or "aarch64" (armv8 CPU hardware)
- - RPI4 uses "aarch64" (armv8 CPU hardware)
+ - RPI2-1.2 uses "earmv7hf" or "aarch64" (ARMv8 CPU hardware)
+ - RPI3 uses "earmv7hf" or "aarch64" (ARMv8 CPU hardware)
+ - RPI4 uses "aarch64" (ARMv8 CPU hardware)
 
-Note that one can run a build of earmv6hf on the 2 and 3.  There will still be a kernel7, built to use the 2/3 hardware, but with the armv6 instruction set.
-
-In theory the code compiled for earmv7hf will be faster, but anecdotal experience is that it doesn't matter that much.
-
-While the evbarm port has "eb" variants (for big-endian mode), the RPI systems do not support eb and these variants will not work.  Systems built for older CPU architectures (earm, earmv4, earmv5) are not expected to work on RPI.
+Note that one can run a build of earmv6hf on the 2 and 3.  There will still be a kernel7, built to use the 2/3 hardware, but with the armv6 instruction set.  In theory the code compiled for earmv7hf will be faster, but anecdotal experience is that it doesn't matter that much.  Builds of NetBSD for earlier revisions of ARM are unsupported.
 
 # Installation
 
+## Using standard images
+
 The simplest way is to download the appropriate SD card image from the NetBSD mirrors:
 
 - The Raspberry Pi 1 requires the ARMv6 [rpi.img.gz](http://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv6hf/binary/gzimg/rpi.img.gz).
 - The Raspberry Pi 2-3 can use the standard ARMv7 [armv7.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) image.
-- The Raspberry Pi 3 can also use [https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz](arm64.img.gz).
+- The Raspberry Pi 3 can also use [arm64.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz).
 
 Decompress it and write it to the SD card:
 

Expand on 64-bit support, RPI4
Index: wikisrc/ports/evbarm/raspberry_pi.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/raspberry_pi.mdwn,v
retrieving revision 1.140
retrieving revision 1.141
diff -u -r1.140 -r1.141
--- wikisrc/ports/evbarm/raspberry_pi.mdwn	16 Oct 2020 17:44:01 -0000	1.140
+++ wikisrc/ports/evbarm/raspberry_pi.mdwn	24 Feb 2021 08:05:57 -0000	1.141
@@ -1,12 +1,8 @@
 [[!meta title="NetBSD/evbarm on Raspberry Pi"]]
 
-This page describes the NetBSD/evbarm port on [Raspberry Pi](http://www.raspberrypi.org) hardware.  All [board variants](https://en.wikipedia.org/wiki/Raspberry_Pi#Specifications) earlier than the RPI4 are believed supported, and specific boards known to work are listed.  We use e.g. "RPI2" to refer to "Raspberry Pi 2" to save precious bytes on this page.  This web page is still 32-bit (aarch32) centric, even though as of mid-2020 aarch64 is also a normal approach.
+This page describes the NetBSD/evbarm port on [Raspberry Pi](http://www.raspberrypi.org) hardware.  All [board variants](https://en.wikipedia.org/wiki/Raspberry_Pi#Specifications) earlier than the RPI4 are believed supported, and specific boards known to work are listed.  We use e.g. "RPI2" to refer to "Raspberry Pi 2" to save precious bytes on this page.
 
-Initial, limited, Raspberry Pi support was introduced in NetBSD 6.0.  NetBSD 7.0 added complete support for the board, along with introducing support for the quad-core Raspberry Pi 2 board.  Raspberry Pi 3 support was added for NetBSD 8.  NetBSD 9 supports aarch64, meaning using the newer processors in 64-bit mode (via -current in mid 2018).
-
-Overall, this page takes the view that NetBSD 7 and earlier are obsolete; aside from history, it is written as if those versions don't exist.
-
-The HOWTO is written for what works on formal releases, release branches (e.g. netbsd-9) and NetBSD-current.  It purposefully does not contain instructions about how to get things to work by installing code that is still being tested and not yet in -current.
+Initial Raspberry Pi support was introduced in NetBSD 6.0.  NetBSD 7.0 added complete support for the board, along with introducing support for the quad-core Raspberry Pi 2 board.  Raspberry Pi 3 support was added for NetBSD 8.  NetBSD 9 supports aarch64, meaning using the newer processors in 64-bit mode.
 
 [[images/raspberrypi.jpg]]
 
@@ -44,14 +40,14 @@
 
 ## NetBSD current
 
+ - RPI3/RPI4 audio with aarch64 kernels
+	- Previously the driver was only included with 32-bit (ARMv7/ARMv6)
+	  kernels and images due to the Broadcom code having 64-bit cleanliness
+	  issues.
  - RPI3 builtin bluetooth
-
-## (maybe) NetBSD current, with manual steps
-
-   These items do not work in the sense that they simply function after a standard install.  Being listed here implies only that there has been list traffic that implies that after taking a bunch of steps (e.g. new firmware, new dtbs, enabling drivers, applying patches), one can end up with the feature working.  The HOWTO explicitly refrains from describing these steps because they are ephemeral.  However, the fact that list traffic indicates success is possible is a clue that proper support is on the horizon, and that is notable.
-
  - RPI3 and RPI0W builtin WiFi
- - RPI4
+ - RPI4 (using EDK2 UEFI firmware)
+	- RPI4 Ethernet (Broadcom GENETv5, genet(4))
 
 ## What needs documenting if it works
 
@@ -64,6 +60,7 @@
 
  - USB (host); isochronous transfers.
  - RPI0W Bluetooth Low Energy (probably)
+ - DRM/KMS
 
 # CPU types
 
@@ -73,38 +70,43 @@
  - RPI2 uses "earmv7hf".
  - RPI2-1.2 uses "earmv7hf" or "aarch64" (armv8 CPU hardware)
  - RPI3 uses "earmv7hf" or "aarch64" (armv8 CPU hardware)
- - RPI4 \todo
+ - RPI4 uses "aarch64" (armv8 CPU hardware)
 
 Note that one can run a build of earmv6hf on the 2 and 3.  There will still be a kernel7, built to use the 2/3 hardware, but with the armv6 instruction set.
 
-In theory the code compiled for earmv7hf will be faster, but anecdotal experience is that it doesn't matter that much.  \todo Post a link to a quality benchmark.
+In theory the code compiled for earmv7hf will be faster, but anecdotal experience is that it doesn't matter that much.
 
 While the evbarm port has "eb" variants (for big-endian mode), the RPI systems do not support eb and these variants will not work.  Systems built for older CPU architectures (earm, earmv4, earmv5) are not expected to work on RPI.
 
-The RPI2-1.2, RPI3 and RPI4 have an armv8 CPU that supports aarch64 (64-bit mode) in addition to aarch32 (regular 32-bit ARM).  This is supported, from 9 onwards, by the "aarch64" MACHINE_ARCH of evbarm, also available in build.sh via the alias evbarm64.  This is also referred to as [[NetBSD/aarch64|aarch64]].
-
 # Installation
 
-## SD card structure
+The simplest way is to download the appropriate SD card image from the NetBSD mirrors:
 
-The Raspberry Pi looks for firmware and kernel.img on the first FAT32 MBR partition of the uSD card.  A separate kernel (kernel7.img) is used on RPI2 and RPI3.
-The NetBSD kernel will then find NetBSD MBR partition and within that the root disklabel partition, and use that FFS partition as the root filesystem.
+- The Raspberry Pi 1 requires the ARMv6 [rpi.img.gz](http://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv6hf/binary/gzimg/rpi.img.gz).
+- The Raspberry Pi 2-3 can use the standard ARMv7 [armv7.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) image.
+- The Raspberry Pi 3 can also use [https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz](arm64.img.gz).
 
-A 2 GB card is the smallest workable size that the installation image will fit on.  After the first boot, the system resizes the NetBSD root partition to fill the card.  Note that swap is after /boot and before /, and not contained in the NetBSD fdisk partition.  However, if you don't try to change the partition structure, this should not cause you any trouble.
+Decompress it and write it to the SD card:
 
-Note that SD cards generally have limited write tolerance, so you may wish to disable atime updates via the noatime option, as is done by the default installation.
+	$ gunzip armv7.img.gz
+	$ dd if=armv7.img of=/dev/rld0d conv=sync bs=1m progress=1
 
-## Choosing a version
+If you're not using NetBSD, your operating system's dd command's arguments may vary. On Windows, try [Rawrite32](https://www.netbsd.org/~martin/rawrite32/).
 
-First, decide if you want to install a formal release (8.0 or 9.0), a stable branch build (netbsd-8, netbsd-9), or NetBSD-current.  For people who don't know how to choose among those, a recent build of netbsd-9 is probably best, with 9.0 the choice for those who value being at exactly a formal release.
+The Raspberry Pi 4 requires the [UEFI firmware](https://github.com/pftf/RPi4/releases). Write the UEFI firmware to the SD card, and then insert an USB drive with the standard NetBSD `arm64.img` written to it. The Pi will then boot from USB.
 
-See also "ebijun's image", below, which is NetBSD-current and includes packages.
+The Raspberry Pi 3 can also [boot NetBSD from UEFI firmware](https://washbear.neocities.org/rpi3-netbsd-uefi.html), but the installation process is currently more complicated. However, there are some advantages, so you might want to try anyway.
+
+## SD card structure
 
-## Getting bits to install
+The Raspberry Pi looks for firmware and kernel.img on the first FAT32 MBR partition of the uSD card.  A separate kernel (kernel7.img) is used on RPI2 and RPI3.
+The NetBSD kernel will then find NetBSD MBR partition and within that the root disklabel partition, and use that FFS partition as the root filesystem.
 
-You can either build a release yourself with build.sh, or get a release from the NetBSD HTTPS/FTP servers.  The bits from both sources should match, except for things like  timestamps, or because the sources are from slightly different points along branches.
+A 2 GB card is the smallest workable size that the installation image will fit on.  After the first boot, the system resizes the NetBSD root partition to fill the card.  Note that swap is after /boot and before /, and not contained in the NetBSD fdisk partition.  However, if you don't try to change the partition structure, this should not cause you any trouble.
 
-### Building yourself
+Note that SD cards generally have limited write tolerance, so you may wish to disable atime updates via the noatime option, as is done by the default installation.
+
+## Building yourself
 
 Getting sources and building a release with build.sh is not special for evbarm.  However, the evbarm port has a very large number of CPU types, compared to i386 and amd64 which have one each.  The standard approach is to use -m to define MACHINE and -a to define MACHINE_ARCH.  build.sh supports aliases that can be passed as a MACHINE value, but denote both MACHINE and a MACHINE_ARCH.   The third line uses an alias and is equal to the second, for RPI2/3.  Note that the aliases start with "evb" while the MACHINE_ARCH values do not, and that aliases have "-el" or "-eb", while the MACHINE_ARCH values have no suffix or "eb".
 
@@ -114,28 +116,6 @@
 
 Consider setting RELEASEMACHINEDIR if you wish to build multiple MACHINE_ARCH values for a MACHINE; see build.sh.  Use something like "evbarm-earmv7hf", so that 1) earvm6 and earmv7 don't collide and 2) anita will recognize it as a type of evbarm.
 
-### NetBSD autobuild HTTPS/FTP servers
-
-NetBSD provides nightly builds on [nycdn.netbsd.org](https://nycdn.netbsd.org/pub/NetBSD-daily/).  The next directory level is the branch being built (netbsd-8, netbsd-9, HEAD, and more), plus optionally things like compiler type.  It is followed by date/time, e.g. "HEAD/201811051650Z"; once a build is complete the symlink "latest" is adjusted to point to it.  The next level is "${MACHINE}-${MACHINE_ARCH}", e.g. "evbarm-earmv7hf", and multiple combinations are provided.
-
-An example URL, arguably the standard approach for first-time NetBSD/RPI users, is <https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-8/latest/evbarm-earmv7hf/binary/gzimg/>
-
-### release layout
-
-Once you get to the releasedir, self-built and autobuild releases have the same structure.
-
- - The 'evbarm-earmv6hf/binary/gzimg/' directory contains an rpi.img file that will run on any of the RPI boards.
- - The 'evbarm-earmv7hf/binary/gzimg/' directory contains an armv7.img file that uses the armv7 instruction set, and thus can run only on the RPI2 and RPI3 (and perhaps the CM3).  It also supports systems other than the RPI family.
-
-\todo Explain why there is no armv7_inst.gz.
-
-## Preparing a uSD card
-
-Once you have rpi.img.gz (or rpi_inst for earmv6 boards), put it on a uSD card using gunzip and dd, for example:
-
- - gunzip rpi.img.gz
- - dd if=rpi.img of=/dev/disk1
-
 ## Console approaches
 
 The standard approach is to use a USB keyboard and an HDMI monitor for installation.
@@ -253,19 +233,14 @@
 
 ### NetBSD 8
 
-On NetBSD 8, dtb files are not used. (\todo Really?)
+On NetBSD 8, dtb files are not used.
 
 ### NetBSD 9
 
-(This is harder than it should be.)
 Build a release.  gunzip the armv7.img, vnconfig it, and mount the MSDOS partition (e) e.g. on /mnt.  Copy the dtb files from /mnt/foo.dtb to /boot, and from /mnt/dtb/foo.dtb to /boot/dtb.
 
 It seems that some systems, including RPI, require dtb files in /boot, and some expect them in /boot/dtb.
 
-\todo Explain if you only really need the right one for your system type.
-
-\todo Explain how one is supposed to be able to update these from the dtb files in releasedir/binary/kernel, or fix it to have the same structure.
-
 ### NetBSD current
 
 When updating, ensure that /boot is mounted and that you unpack the dtb set.
@@ -310,6 +285,12 @@
 
 # X11 and GPU
 
+Video acceleration currently only works with 32-bit (ARMv7 and ARMv6) kernels due to the Broadcom code not being 64-bit clean.
+
+Since applications require specialized support for the GPU, only a few applications are normally accelerated.  NetBSD/aarch64 normally uses `llvmpipe` to provide fast parallel CPU-driven support for OpenGL, so should be faster when running normal applications.
+
+The situation should be improved, ideally by writing a DRM/KMS driver.
+
 ## Video playback
 
 Accelerated video playback is supported with the [OMXPlayer](http://pkgsrc.se/multimedia/omxplayer) application and through GStreamer with the [omx](http://pkgsrc.se/multimedia/gst-plugins1-omx) plugin.

Index: wikisrc/ports/evbarm/odroid-c1.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/odroid-c1.mdwn,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:12:00 -0000	1.34
+++ wikisrc/ports/evbarm/odroid-c1.mdwn	22 Feb 2021 01:47:18 -0000	1.35
@@ -42,7 +42,11 @@
 # dd if=u-boot.bin.odroidc1 of=armv7.img bs=512 seek=64 conv=notrunc
 """]]
 * Write the image to an SD card.
-* Tested 2021-02-19 with NetBSD-current, christos
+
+- Tested 2021-02-19 with NetBSD-current, christos
+  - serial fights with ucb keyboard. (avoid by short circuiting cngetc in meson_uart.c to return -1)
+  - awge0 does not work reliably (can't even get a dhcp address, stops receiving packets after less than a minute)
+  - machine crashes under load
 
 # Installation (NetBSD 7.0/7.1)
 

Index: wikisrc/ports/evbarm/odroid-c1.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/odroid-c1.mdwn,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:07:31 -0000	1.33
+++ wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:12:00 -0000	1.34
@@ -31,7 +31,7 @@
 # Installation (NetBSD 8.0 and later)
 
 * Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *armv7.img*, the latest is [[here|https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-earmv7hf/binary/gzimg/armv7.img]].
-* Build U-Boot for ODROID-C1 <hhttps://github.com/jaredmcneill/u-boot-odroid>
+* Build U-Boot for ODROID-C1 <https://github.com/jaredmcneill/u-boot-odroid>
   * Pre-built binaries here:
    <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/odroidc1/u-boot-odroidc-v2011.03-20150308.tar.gz>
    <http://www.netbsd.org/~jmcneill/u-boot.bin.odroidc1>

Index: wikisrc/ports/evbarm/odroid-c1.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/odroid-c1.mdwn,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:06:17 -0000	1.32
+++ wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:07:31 -0000	1.33
@@ -42,6 +42,7 @@
 # dd if=u-boot.bin.odroidc1 of=armv7.img bs=512 seek=64 conv=notrunc
 """]]
 * Write the image to an SD card.
+* Tested 2021-02-19 with NetBSD-current, christos
 
 # Installation (NetBSD 7.0/7.1)
 

Index: wikisrc/ports/evbarm/odroid-c1.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/odroid-c1.mdwn,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 22:02:03 -0000	1.31
+++ wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 23:06:17 -0000	1.32
@@ -31,23 +31,17 @@
 # Installation (NetBSD 8.0 and later)
 
 * Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *armv7.img*, the latest is [[here|https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-earmv7hf/binary/gzimg/armv7.img]].
-* Build U-Boot for ODROID-C1 <https://github.com/hardkernel/u-boot/tree/odroidc-v2011.03>
-  * Pre-built binaries here: <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/odroidc1/u-boot-odroidc-v2011.03-20150308.tar.gz>
+* Build U-Boot for ODROID-C1 <hhttps://github.com/jaredmcneill/u-boot-odroid>
+  * Pre-built binaries here:
+   <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/odroidc1/u-boot-odroidc-v2011.03-20150308.tar.gz>
+   <http://www.netbsd.org/~jmcneill/u-boot.bin.odroidc1>
 * Write the bootloader to the empty space at the start of the base image:
 [[!template  id=programlisting text="""
 # dd if=bl1.bin.hardkernel of=armv7.img bs=1 count=442 conv=notrunc
 # dd if=bl1.bin.hardkernel of=armv7.img bs=512 skip=1 seek=1 conv=notrunc
-# dd if=u-boot.bin of=armv7.img bs=512 seek=64 conv=notrunc
+# dd if=u-boot.bin.odroidc1 of=armv7.img bs=512 seek=64 conv=notrunc
 """]]
 * Write the image to an SD card.
-* Edit *boot.ini* on the MS-DOS partition. Note that the default boot.ini has `console=fb` in `bootargs`, which you should remove if you want serial console:
-[[!template  id=programlisting text="""
-ODROIDC-UBOOT-CONFIG
-
-setenv bootargs "root=ld0a awge0.mac-address=${ethaddr} console=fb"
-setenv bootcmd "fatload mmc 0:1 0x21000000 netbsd-ODROID-C1.ub; bootm 0x21000000"
-run bootcmd
-"""]] 
 
 # Installation (NetBSD 7.0/7.1)
 

Index: wikisrc/ports/evbarm/odroid-c1.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm/odroid-c1.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/ports/evbarm/odroid-c1.mdwn	26 May 2020 13:46:46 -0000	1.30
+++ wikisrc/ports/evbarm/odroid-c1.mdwn	19 Feb 2021 22:02:03 -0000	1.31
@@ -30,7 +30,7 @@
 
 # Installation (NetBSD 8.0 and later)
 
-* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *armv7.img*
+* Start with an ARMv7 image from *evbarm-earmv7hf/binary/gzimg/* such as *armv7.img*, the latest is [[here|https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-earmv7hf/binary/gzimg/armv7.img]].
 * Build U-Boot for ODROID-C1 <https://github.com/hardkernel/u-boot/tree/odroidc-v2011.03>
   * Pre-built binaries here: <http://ftp.netbsd.org/pub/NetBSD/misc/jmcneill/odroidc1/u-boot-odroidc-v2011.03-20150308.tar.gz>
 * Write the bootloader to the empty space at the start of the base image:

Move some bugs to "showstopper" status
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- wikisrc/releng/netbsd-10.mdwn	16 Feb 2021 15:48:39 -0000	1.35
+++ wikisrc/releng/netbsd-10.mdwn	19 Feb 2021 18:47:43 -0000	1.36
@@ -1,9 +1,22 @@
 [[!meta title="NetBSD 10.0 preliminary tasklist"]]
 
-## PRs worth fixing
+## Showstopper bugs and PRs
 
 * **Any issues found by [syzbot](https://syzkaller.appspot.com/netbsd) may potentially crash
   the kernel and should be investigated and fixed.**
+* [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
+* topdown uvm mmap assertion failure (PR upcoming) - PMAP_PREFER can cause KASSERT failure
+
+## Regressions since netbsd-9
+
+* ~~[[!template id=pr number=54913]]: fexecve(2) panics in chroot(8)~~
+* [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
+* ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
+* ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
+* ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
+
+## PRs worth fixing
+
 * ~~[[!template id=pr number=51734]]: hdaudio(4) "RIRB timeout" interrupt storm on boot~~
 * [[!template id=pr number=52583]]: iwm(4) "unhandled firmware response" followed by panic after extended use
 * [[!template id=pr number=53173]]: "go test net/http" locks up the machine
@@ -21,15 +34,6 @@
 * [[!template id=pr number=55533]]: mmap(2) fails when called with a non-zero hint
 * [[!template id=pr number=55892]]: npf cannot handle large tables
 
-## Regressions since netbsd-9
-
-* ~~[[!template id=pr number=54913]]: fexecve(2) panics in chroot(8)~~
-* [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
-* [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
-* ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
-* ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
-* ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
-
 ## Test Regressions since netbsd-9
 Some of this issues are older (so "regression" is slightly wrong), but it was necessary to disable tests to not break whole test setups. This are likely effects caused by bugs in the tests or RUMP, so not considered show stoppers.
 

zfs: Note 80%
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- wikisrc/zfs.mdwn	18 Feb 2021 00:26:35 -0000	1.39
+++ wikisrc/zfs.mdwn	18 Feb 2021 00:28:44 -0000	1.40
@@ -100,6 +100,10 @@
 Information about created or imported pools is stored in
 /etc/zfs/zpool.cache.
 
+Conventional wisdom is that a pool that is more than 80% used gets
+unhappy; so far there is not NetBSD-specific wisdom to confirm or
+refute that.
+
 ## pool native blocksize mismatch
 
 ZFS attempts to find out the native blocksize for a disk when using it

zfs: add swap hints
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- wikisrc/zfs.mdwn	17 Feb 2021 18:14:41 -0000	1.38
+++ wikisrc/zfs.mdwn	18 Feb 2021 00:26:35 -0000	1.39
@@ -187,7 +187,10 @@
 disklabels and gpt labels from a zvol.
 
 Doing "swapctl -a" on a zvol device node fails.  \todo Is it really
-true that NetBSD can't swap on a zvol?
+true that NetBSD can't swap on a zvol?  (When using a zvol for swap,
+standard advice is to avoid the "-s" option which avoids reserving the
+allocated space.  Standard advice is also to consider using a
+dedicated pool.)
 
 \todo Explain that one can export a zvol via iscsi.
 

zfs: spiff up zvol section
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- wikisrc/zfs.mdwn	17 Feb 2021 17:53:07 -0000	1.37
+++ wikisrc/zfs.mdwn	17 Feb 2021 18:14:41 -0000	1.38
@@ -177,19 +177,24 @@
 Within a ZFS pool, the standard approach is to have file systems, but
 one can also create a zvol, which is a block device of a certain size.
 
-\todo The zvol will appear as /dev/???? and can be used in many
-respects like a slice.  However, the system will not read disklabels
-and gpt labels from a zvol; in this respect it is more like a disklabel
-partition or wedge than a disk drive.
+As an example, "zfs create -V 16G tank0/xen-netbsd-9-amd64" creates a
+zvol (intended to be a virtual disk for a domU).
 
-\todo Explain that one can export a zvol via iscsi.
+The zvol in the example will appear as
+/dev/zvol/rdsk/tank0/xen-netbsd-9-amd64 and
+/dev/zvol/dsk/tank0/xen-netbsd-9-amd64 and can be used like a
+disklabel partition or wedge.  However, the system will not read
+disklabels and gpt labels from a zvol.
+
+Doing "swapctl -a" on a zvol device node fails.  \todo Is it really
+true that NetBSD can't swap on a zvol?
 
-\todo Explain if one can swap on a zvol.
+\todo Explain that one can export a zvol via iscsi.
 
-\todo Explain that one can use ccd to create a normal-looking disk
-from a zvol.  This allows reading a GPT label from the zvol, which is
-useful in case the zvol had been exported via iscsi and some other
-system created a label.
+One can use ccd to create a normal-looking disk from a zvol.  This
+allows reading a GPT label from the zvol, which is useful in case the
+zvol had been exported via iscsi and some other system created a
+label.
 
 # Memory usage
 

zfs: describe mountpoint conventions
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- wikisrc/zfs.mdwn	17 Feb 2021 17:44:58 -0000	1.36
+++ wikisrc/zfs.mdwn	17 Feb 2021 17:53:07 -0000	1.37
@@ -100,7 +100,7 @@
 Information about created or imported pools is stored in
 /etc/zfs/zpool.cache.
 
-## pool Native blocksize mismatch
+## pool native blocksize mismatch
 
 ZFS attempts to find out the native blocksize for a disk when using it
 in a pool; this is almost always 512 or 4096.  Somewhere between 9.0
@@ -138,6 +138,14 @@
 \todo Determine a good fix, perhaps man page changes only, fix it
 upstream, in curent, and in 9, before removing this discussion.
 
+## mountpoint conventions
+
+By default, datasets are mounted as /poolname/datasetname.  One can
+also set a mountpoint; see zfs(8).
+
+There does not appear to be any reason to choose explicit mountpoints
+vs the default (and either using data in place or symlinking to it).
+
 ## mount order
 
 NetBSD 9 mounts other file systems and then ZFS file systems.  This can

zfs: minor reorg
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- wikisrc/zfs.mdwn	17 Feb 2021 17:40:26 -0000	1.35
+++ wikisrc/zfs.mdwn	17 Feb 2021 17:44:58 -0000	1.36
@@ -8,17 +8,6 @@
 Many things are marked with \todo because they need a better
 explanation, and some have question marks
 
-# Documentation Pointers
-
-See the man pages for zfs(8), zpool(8).  Also see zdb(8), if only for
-seeing pool config info when run with no arguments.
-
-  - [OpenZFS Documentation](https://openzfs.github.io/openzfs-docs/)
-  - [OpenZFS admin docs index page](https://github.com/openzfs/zfs/wiki/Admin-Documentation)
-  - [FreeBSD Handbook ZFS Chapter](https://www.freebsd.org/doc/handbook/zfs.html)
-  - [Oracle ZFS Administration Manual](https://docs.oracle.com/cd/E26505_01/html/E37384/index.html)
-  - [Wikipedia](https://en.wikipedia.org/wiki/ZFS)
-
 # Status of ZFS in NetBSD
 
 ## NetBSD 8
@@ -36,20 +25,6 @@
 branch.  As of 2021-02, ZFS in the NetBSD 9.1 release is very close to
 netbsd-9.
 
-### Native blocksize
-
-ZFS attempts to find out the native blocksize for a disk when using it
-in a pool; this is almost always 512 or 4096.  Somewhere between 9.0
-and 9.1, at least some disks on some controllers that used to report
-512 now report 4096.  This provokes a blocksize mismatch warning.
-
-Given that the native blocksize of the disk didn't change, and things
-seemed OK using the 512 emulated blocks, the warning is likely not
-critical.  However, it is also likely that rebuilding the pool with
-the 4096 blocksize is likely to result in better behavior because ZFS
-will only try to do 4096-byte writes.  \todo Verify this and find the
-actual change and explain better.
-
 ## NetBSD-current
 
 NetBSD-current (as of 2021-02) has similar ZFS code to 9.
@@ -59,12 +34,13 @@
 
 ## NetBSD/xen special issues
 
+Summary: if you are using NetBSD, xen and zfs, use NetBSD-current.
+
 In NetBSD-9, MAXPHYS is 64KB in most places, but because of xbd(4) it
 is set to 32KB for XEN kernels.  Thus the standard zfs kernel modules
 do not work under xen.  In NetBSD-current, xbd(4) supports 64 KB
-MAXPHYS and this is no longer an issue.
-
-Xen and zfs on current are reported to work well together, as of 2021-02.
+MAXPHYS and this is no longer an issue.  Xen and zfs on current are
+reported to work well together, as of 2021-02.
 
 ## Architectures
 
@@ -92,7 +68,18 @@
   - Create a filesystem mounted on /n0 as "zfs create -o
     mountpoint=/n0 pool1/n0".
 
-  - Go back and read the documentation and start over.
+  - Read the documentation referenced in the next section.
+
+## Documentation Pointers
+
+See the man pages for zfs(8), zpool(8).  Also see zdb(8), if only for
+seeing pool config info when run with no arguments.
+
+  - [OpenZFS Documentation](https://openzfs.github.io/openzfs-docs/)
+  - [OpenZFS admin docs index page](https://github.com/openzfs/zfs/wiki/Admin-Documentation)
+  - [FreeBSD Handbook ZFS Chapter](https://www.freebsd.org/doc/handbook/zfs.html)
+  - [Oracle ZFS Administration Manual](https://docs.oracle.com/cd/E26505_01/html/E37384/index.html)
+  - [Wikipedia](https://en.wikipedia.org/wiki/ZFS)
 
 # NetBSD-specific information
 
@@ -113,6 +100,20 @@
 Information about created or imported pools is stored in
 /etc/zfs/zpool.cache.
 
+## pool Native blocksize mismatch
+
+ZFS attempts to find out the native blocksize for a disk when using it
+in a pool; this is almost always 512 or 4096.  Somewhere between 9.0
+and 9.1, at least some disks on some controllers that used to report
+512 now report 4096.  This provokes a blocksize mismatch warning.
+
+Given that the native blocksize of the disk didn't change, and things
+seemed OK using the 512 emulated blocks, the warning is likely not
+critical.  However, it is also likely that rebuilding the pool with
+the 4096 blocksize is likely to result in better behavior because ZFS
+will only try to do 4096-byte writes.  \todo Verify this and find the
+actual change and explain better.
+
 ## pool importing problems
 
 While one can "zpool pool0 /dev/wd0f" and have a working pool, this

zfs:formattting
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- wikisrc/zfs.mdwn	17 Feb 2021 17:34:51 -0000	1.34
+++ wikisrc/zfs.mdwn	17 Feb 2021 17:40:26 -0000	1.35
@@ -117,13 +117,12 @@
 
 While one can "zpool pool0 /dev/wd0f" and have a working pool, this
 pool cannot be exported and imported straigthforwardly.  "zpool
-export" works fine, and deletes zpool.cache.
-
-"zpool import", however, only looks at entire disks (e.g. /dev/wd0),
-and might look at slices (e.g. /dev/dk0).  It does not look at
-partitions like /dev/wd0f, and there is no way on the command line to
-ask that specific devices be examined.  Thus, export/import fails for
-pools with disklabel partitions.
+export" works fine, and deletes zpool.cache.  "zpool import", however,
+only looks at entire disks (e.g. /dev/wd0), and might look at slices
+(e.g. /dev/dk0).  It does not look at partitions like /dev/wd0f, and
+there is no way on the command line to ask that specific devices be
+examined.  Thus, export/import fails for pools with disklabel
+partitions.
 
 One can make wd0 be a link to wd0f temporarily, and the pool will then
 be importable.  However, "wd0" is stored in zpool.cache and on the

zfs: mention zdb(8)
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- wikisrc/zfs.mdwn	17 Feb 2021 17:25:45 -0000	1.33
+++ wikisrc/zfs.mdwn	17 Feb 2021 17:34:51 -0000	1.34
@@ -10,7 +10,8 @@
 
 # Documentation Pointers
 
-See the man pages for zfs(8) and zpool(8).
+See the man pages for zfs(8), zpool(8).  Also see zdb(8), if only for
+seeing pool config info when run with no arguments.
 
   - [OpenZFS Documentation](https://openzfs.github.io/openzfs-docs/)
   - [OpenZFS admin docs index page](https://github.com/openzfs/zfs/wiki/Admin-Documentation)
@@ -163,7 +164,6 @@
 -maproot=0:10 causes a kernel NULL pointer dereference.  This is now
 fixed.
 
-
 ## zvol
 
 Within a ZFS pool, the standard approach is to have file systems, but

zfs: Explain how to import disklabel partitions
Also, catch up with NFS bugfixes and improvements
Members: 
	zfs.mdwn:1.32->1.33 

Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- wikisrc/zfs.mdwn	14 Feb 2021 16:35:50 -0000	1.32
+++ wikisrc/zfs.mdwn	17 Feb 2021 17:25:45 -0000	1.33
@@ -109,6 +109,34 @@
   - disklabel partitions (e.g., /dev/sd0e)
   - wedges (e.g., /dev/dk0)
 
+Information about created or imported pools is stored in
+/etc/zfs/zpool.cache.
+
+## pool importing problems
+
+While one can "zpool pool0 /dev/wd0f" and have a working pool, this
+pool cannot be exported and imported straigthforwardly.  "zpool
+export" works fine, and deletes zpool.cache.
+
+"zpool import", however, only looks at entire disks (e.g. /dev/wd0),
+and might look at slices (e.g. /dev/dk0).  It does not look at
+partitions like /dev/wd0f, and there is no way on the command line to
+ask that specific devices be examined.  Thus, export/import fails for
+pools with disklabel partitions.
+
+One can make wd0 be a link to wd0f temporarily, and the pool will then
+be importable.  However, "wd0" is stored in zpool.cache and on the
+next boot that will attempt to be used.  This is obviously not a good
+approach.
+
+One an mkdir e.g. /etc/zfs/pool0 and in it have a symlink to
+/dev/wd0f.  Then, zpool import -d /etc/zfs/pool0 will scan
+/etc/zfs/pool0/wd0f and succeed.  The resulting zpool.cache will have
+that path, but having symlinks in /etc/zfs/POOLNAME seems acceptable.
+
+\todo Determine a good fix, perhaps man page changes only, fix it
+upstream, in curent, and in 9, before removing this discussion.
+
 ## mount order
 
 NetBSD 9 mounts other file systems and then ZFS file systems.  This can
@@ -126,13 +154,15 @@
 
 The "zfs share" command adds a line for each filesystem with the
 sharenfs property set to /etc/zfs/exports, and "zfs unshare" removes
-it.  \todo Explain if /etc/zfs/exports is used and whether this makes
-any sense on NetBSD.
+it.  This file is ignored on NetBSD-9 and current before 20210216; on
+current after 20210216 those filesystems should be exported (assuming
+NFS is enabled).  It does not appear to be possible to set options
+like maproot and network restrictions via this method.
 
-On current as of 20210214, a remote mkdir of a filesystem mounted via
+On current before 20210216, a remote mkdir of a filesystem mounted via
 -maproot=0:10 causes a kernel NULL pointer dereference.  This is now
-understood and expected to be fixed very soon.  See
-[misc/55042](http://gnats.netbsd.org/55042).
+fixed.
+
 
 ## zvol
 

Update test stats
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- wikisrc/releng/netbsd-10.mdwn	12 Feb 2021 19:51:08 -0000	1.34
+++ wikisrc/releng/netbsd-10.mdwn	16 Feb 2021 15:48:39 -0000	1.35
@@ -61,35 +61,35 @@
     </tr> ---->
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/amd64/">amd64</a>, qemu, official b5 runs</td>
-        <td>2021-02-06</td> <td>22 failures</td><td> </td><td> </td>
+        <td>2021-02-16</td> <td>22 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.NetBSD.org/~martin/aarch64-atf/">evbarm64el-aarch64</a>, real hardware</td>
-        <td>2021-02-04</td> <td>25 failures</td><td> </td><td> </td>
+        <td>2021-02-11</td> <td>28 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/evbearmv7hf-atf/">evbearmv7hfeb</a>, real hardware</td>
-        <td>021-02-01</td> <td>33 failures</td><td> </td><td> </td>
+        <td>021-02-09</td> <td>37 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/i386/">i386</a>, qemu, official b5 runs</td>
-        <td>20210-02-06</td> <td>39 failures</td><td> </td><td> </td>
+        <td>20210-02-16</td> <td>40 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.NetBSD.org/~martin/sparc64-atf/">sparc64</a>, real hardware</td>
-        <td>2021-02-04</td> <td>41 failures</td><td> </td><td>all wg(4) tests fail due to mbuf pool memory corruption</td>
+        <td>2021-02-07</td> <td>45 failures</td><td> </td><td>all wg(4) tests fail due to mbuf pool memory corruption</td>
     </tr>
     <tr>
         <td><a href="//www-soc.lip6.fr/~bouyer/NetBSD-tests/xen/HEAD/">XEN</a>, i386 and amd64</td>
-        <td>2021-02-04</td> <td>49 failures</td><td> </td><td> </td>
+        <td>2021-02-14</td> <td>45 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/evbarm-atf/">evbarmv5</a>, real hardware</td>
-        <td>2021-02-04</td> <td>65 failures</td><td></td><td>userland watchdog starvation<br/>PR <a href="//gnats.netbsd.org/55272">55272</a></td>
+        <td>2021-02-15</td> <td>81 failures</td><td></td><td>userland watchdog starvation<br/>PR <a href="//gnats.netbsd.org/55272">55272</a></td>
     </tr>
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/sparc64/">sparc64</a>, qemu, low memory</td>
-        <td>2021-02-03</td> <td>82 failures</td><td> </td><td> </td>
+        <td>2021-02-11</td> <td>458 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/landisk-atf/">landisk</a>, SH4, real hardware, low memory</td>

[Date planning] OSC2021 Online/Nagoya,May29 and OSC2021 Online/Kyoto
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- wikisrc/users/jun.mdwn	11 Feb 2021 03:45:36 -0000	1.43
+++ wikisrc/users/jun.mdwn	15 Feb 2021 10:12:35 -0000	1.44
@@ -11,7 +11,7 @@
 - 16:00-16:45 Room E Cross BUGLUG Community Camp 
 
 ## Open Source Conference 2021 Online/Nagoya NetBSD BoF
-- 2021 Jun.5 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- 2021 May.29 Sat XX:XX-XX:XX JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive 
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
@@ -21,7 +21,7 @@
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
 ## Open Source Conference 2021 Online/Kyoto NetBSD BoF
-- 2021 Jul-Aug XX Sat XX:XX-XX:XX JST (UTC+9) TBD
+- 2021 Jul.30-31 or Aug.6-7 Sat XX:XX-XX:XX JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive 
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 

zfs: Explain 9.0/9.1 blocksize change
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- wikisrc/zfs.mdwn	14 Feb 2021 15:07:29 -0000	1.31
+++ wikisrc/zfs.mdwn	14 Feb 2021 16:35:50 -0000	1.32
@@ -35,6 +35,20 @@
 branch.  As of 2021-02, ZFS in the NetBSD 9.1 release is very close to
 netbsd-9.
 
+### Native blocksize
+
+ZFS attempts to find out the native blocksize for a disk when using it
+in a pool; this is almost always 512 or 4096.  Somewhere between 9.0
+and 9.1, at least some disks on some controllers that used to report
+512 now report 4096.  This provokes a blocksize mismatch warning.
+
+Given that the native blocksize of the disk didn't change, and things
+seemed OK using the 512 emulated blocks, the warning is likely not
+critical.  However, it is also likely that rebuilding the pool with
+the 4096 blocksize is likely to result in better behavior because ZFS
+will only try to do 4096-byte writes.  \todo Verify this and find the
+actual change and explain better.
+
 ## NetBSD-current
 
 NetBSD-current (as of 2021-02) has similar ZFS code to 9.

zfs: update NFS
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/zfs.mdwn	12 Feb 2021 15:41:40 -0000	1.30
+++ wikisrc/zfs.mdwn	14 Feb 2021 15:07:29 -0000	1.31
@@ -107,15 +107,18 @@
 
 ## NFS
 
-zfs filesystems are reported to be exportable over NFS.
+zfs filesystems can be exported via NFS, simply by placing them in
+/etc/exports like any other filesystem.
 
-The "zfs share" command adds a line to /etc/zfs/exports, and "zfs
-unshare" removes it.
-
-\todo Explain how /etc/zfs/exports is used.
-
-This is reported to work on 9.0 STABLE, but to cause a panic on
-current (20200302).  See [misc/55042](http://gnats.netbsd.org/55042).
+The "zfs share" command adds a line for each filesystem with the
+sharenfs property set to /etc/zfs/exports, and "zfs unshare" removes
+it.  \todo Explain if /etc/zfs/exports is used and whether this makes
+any sense on NetBSD.
+
+On current as of 20210214, a remote mkdir of a filesystem mounted via
+-maproot=0:10 causes a kernel NULL pointer dereference.  This is now
+understood and expected to be fixed very soon.  See
+[misc/55042](http://gnats.netbsd.org/55042).
 
 ## zvol
 

Improve ieee80211_tx_complete() documentation
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	10 Feb 2021 18:50:43 -0000	1.13
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	13 Feb 2021 17:29:08 -0000	1.14
@@ -395,12 +395,16 @@
    past and there are other protocols. Also the `ieee80211_crypto_encap`
    function lost its first argument (the radio common ic pointer).
 
-   The transmit function frees the `mbuf` and calls `ieee80211_free_node(ni)`
-   in all error cases. Else it queues the `mbuf` for transmit and
+   The transmit function queues the `mbuf` for transmit and
    makes sure when transmission is done by hardware to call
-   `ieee80211_tx_complete` with both `mbuf` and `ni`. This call
-   will free the mbuf and the node, and in some cases also cause state
-   machine callbacks.
+   `ieee80211_tx_complete` with both `mbuf` and `ni`. This function
+   also needs to be called in all error cases, with an error value as
+   status (last argument). The actual value does not matter, the stack
+   just checks for 0 (success) and != 0 (failure). This call
+   will free the mbuf and the node, and in some cases also cause
+   further state changes (like waking up VAPs, scheduling a new scan
+   later, or even causing immediate state machine transitions and retrying
+   in error cases).
 
  * If the driver_activate() function only passes deactivation requests
    on to if_deactivate() you can replace it by a shim that gets

resolved PR #55458: entropy: WrAnRdNcING no nstropy in eed
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 17:39:00 -0000	1.33
+++ wikisrc/releng/netbsd-10.mdwn	12 Feb 2021 19:51:08 -0000	1.34
@@ -16,7 +16,7 @@
 * ~~[[!template id=pr number=54771]]: nvme(4) fails to attach~~ (not a showstopper)
 * [[!template id=pr number=54914]]: fcntl(F_GETPATH) is broken in chroot
 * [[!template id=pr number=55042]]: kernel panics when ZFS filesystem is exported with NFS
-* [[!template id=pr number=55458]]: entropy: WrAnRdNcING no nstropy in  eed
+* ~~[[!template id=pr number=55458]]: entropy: WrAnRdNcING no nstropy in  eed~~
 * [[!template id=pr number=55510]]: pg_jobc going negative and crashing the kernel
 * [[!template id=pr number=55533]]: mmap(2) fails when called with a non-zero hint
 * [[!template id=pr number=55892]]: npf cannot handle large tables

Fix typo.
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- wikisrc/zfs.mdwn	12 Feb 2021 14:46:26 -0000	1.29
+++ wikisrc/zfs.mdwn	12 Feb 2021 15:41:40 -0000	1.30
@@ -180,7 +180,7 @@
 Currently, there are multiple ZFS projects and codebases:
 
   - [OpenZFS](http://www.open-zfs.org/wiki/Main_Page)
-  - [openzfs repository](https://github.com/openzfs/zfs}
+  - [openzfs repository](https://github.com/openzfs/zfs)
   - [zfsonlinux](https://zfsonlinux.org/)
   - [OpenZFS on OS X ](https://openzfsonosx.org/) [repo](https://github.com/openzfsonosx)
   - proprietary ZFS in Solaris (not relevant in open source)

zfs: add wd0 notion
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- wikisrc/zfs.mdwn	12 Feb 2021 14:41:36 -0000	1.28
+++ wikisrc/zfs.mdwn	12 Feb 2021 14:46:26 -0000	1.29
@@ -91,7 +91,7 @@
 One can add disks or parts of disks into pools.  Methods of specifying
 areas to be included include:
 
-  - entire disks (e.g., /dev/wd0d on amd64)
+  - entire disks (e.g., /dev/wd0d on amd64, or /dev/wd0 which has the same major/minor)
   - disklabel partitions (e.g., /dev/sd0e)
   - wedges (e.g., /dev/dk0)
 

zfs minor todo adjustment
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- wikisrc/zfs.mdwn	12 Feb 2021 14:28:54 -0000	1.27
+++ wikisrc/zfs.mdwn	12 Feb 2021 14:41:36 -0000	1.28
@@ -6,8 +6,7 @@
 emphatically not a tutorial or an introduction to ZFS.
 
 Many things are marked with \todo because they need a better
-explanation, and some have question marks, indicating that the
-statement needs verification.
+explanation, and some have question marks
 
 # Documentation Pointers
 
@@ -191,6 +190,6 @@
 is a notion of a shared core codebase and OS-specific adaptation code.
 
   - [zfsonlinux relationship to OpenZFS](https://github.com/openzfs/zfs/wiki/OpenZFS-Patches)
-  - FreeBSD more or less imports code from openzfs and pushes back fixes. \verify
-  - NetBSD has imported code from FreeBSD
-  - The status of ZFS on macOS is unclear (2021-02)
+  - FreeBSD more or less imports code from openzfs and pushes back fixes. \todo Verify this.
+  - NetBSD has imported code from FreeBSD.
+  - The status of ZFS on macOS is unclear (2021-02).

zfs: rototill and simplify
Index: wikisrc/zfs.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/zfs.mdwn,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- wikisrc/zfs.mdwn	24 Jun 2020 15:19:56 -0000	1.26
+++ wikisrc/zfs.mdwn	12 Feb 2021 14:28:54 -0000	1.27
@@ -13,96 +13,44 @@
 
 See the man pages for zfs(8) and zpool(8).
 
-  - [Oracle ZFS Administration Manual](https://docs.oracle.com/cd/E26505_01/html/E37384/index.html)
-  - [FreeBSD Handbook ZFS Chapter](https://www.freebsd.org/doc/handbook/zfs.html)
+  - [OpenZFS Documentation](https://openzfs.github.io/openzfs-docs/)
   - [OpenZFS admin docs index page](https://github.com/openzfs/zfs/wiki/Admin-Documentation)
-
+  - [FreeBSD Handbook ZFS Chapter](https://www.freebsd.org/doc/handbook/zfs.html)
+  - [Oracle ZFS Administration Manual](https://docs.oracle.com/cd/E26505_01/html/E37384/index.html)
   - [Wikipedia](https://en.wikipedia.org/wiki/ZFS)
 
 # Status of ZFS in NetBSD
 
-## Sources of ZFS code
-
-\todo Verify/fix.
-
-Currently, there are multiple ZFS projects and codebases:
-
-  - ZFS as released under the CDDL (common ancestor)
-  - [OpenZFS](http://www.open-zfs.org/wiki/Main_Page) [github wiki](https://github.com/openzfs/zfs/wiki)
-  - [zfsonlinux](https://zfsonlinux.org/)
-  - [OpenZFS on OS X ](https://openzfsonosx.org/) [repo](https://github.com/openzfsonosx)
-  - proprietary ZFS in Solaris (not relevant in open source)
-
-OpenZFS is a coordinating project to align open ZFS codebases.  There
-is a notion of a shared core codebase and OS-specific adaptation code.
-As of early 2020, it appears that there are two co-root repositories:
-illumos and zfsonlinux, with a notion that fixes and improvements
-should be cross-shared.  This is different from the situation through
-late 2019 where sharing was done via a designated sharing repository,
-and appears to be a new, more efficient, procedure among cooperating
-people, rather than any kind of fork.
-
-  - [deprecation of OpenZFS repo](https://github.com/openzfs/openzfs/)
-  - [zfsonlinux relationship to OpenZFS](https://github.com/openzfs/zfs/wiki/OpenZFS-Patches)
-
-\todo Explain how FreeBSD code relates to zfsonlinux (imported/merged and fixes pushed upstream?).
-
-\todo Explain how the NetBSD code relates (imported from FreeBSD? intent to continue to track?)
+## NetBSD 8
 
-\todo Explain if NetBSD has a plan to join zfsonlinux as a first-class
-member, vs tracking via FreeBSD.
-
-\todo Explain how OpenZFS on OS X relates (tracks zfsonlinux?).
-
-See [FreeBSD's history](https://wiki.freebsd.org/ZFSTuningGuide).
-
-## NetBSD code history
-
-\todo This section really needs help.
-
-Before NetBSD 8, NetBSD imported ZFS code from ?, which was version ?
-
-Before NetBSD 9, NetBSD imported updated ZFS code from FreeBSD.  That
-FreeBSD code came from ?, which was version ?
-
-## NetBSD 8 and earlier
-
-While there is some ZFS code, it is old, and seems to have significant
-problems.  If one wants to use ZFS, first upgrade to NetBSD 9.  It is
-unlikely that anyone is interested in helping, other than telling you
-to upgrade to 9.
-
-(Reports of how well NetBSD 8 works are welcome on netbsd-users, if it
-can actually be recommended for use.)
+NetBSD 8 has an old version of ZFS, and it is not recommended for use
+at all.  There is no evidence that anyone is interested in helping
+with ZFS on 8.  Those wishing to use ZFS on NetBSD 8 should therefore
+update to NetBSD 9.
 
 ## NetBSD 9
 
-There have been fixes since 9.0 RELEASE.  It is best to upgrade along
-the netbsd-9 branch, but the release should be ok.  Most aspects work solidly.
+NetBSD-9 has ZFS that is considered to work well.  There have been
+fixes since 9.0_RELEASE.  As always, people running NetBSD 9 are
+likely best served by the most recent version of the netbsd-9 stable
+branch.  As of 2021-02, ZFS in the NetBSD 9.1 release is very close to
+netbsd-9.
 
-\todo Explain this in terms of versions of FreeBSD OpenZFS and/or
-zfsonlinux.
+## NetBSD-current
 
-\todo This supports pool version 28/5000 (really true?).  Of the
-feature flags found in modern OpenZFS, \todo are supported.
-
-Generally, fixes to ZFS in current will be pulled up to 9, but new
-features typically will not be.
-
-## NetBSD current
-
-The ZFS code in current is very similar to that in 9.
+NetBSD-current (as of 2021-02) has similar ZFS code to 9.
 
 There is initial support for [[ZFS root|wiki/RootOnZFS]], via booting from
 ffs and pivoting.
 
-One can make a ccd using a zvol as a component.  See the zvol section below.
+## NetBSD/xen special issues
 
-## Things that aren't supported yet
+In NetBSD-9, MAXPHYS is 64KB in most places, but because of xbd(4) it
+is set to 32KB for XEN kernels.  Thus the standard zfs kernel modules
+do not work under xen.  In NetBSD-current, xbd(4) supports 64 KB
+MAXPHYS and this is no longer an issue.
 
-\todo hotswap (maybe - not clear exactly what this means)
-
-\todo direct boot into zfs root (via boot blocks reading zfs)
+Xen and zfs on current are reported to work well together, as of 2021-02.
 
 ## Architectures
 
@@ -115,6 +63,23 @@
 to build and run reliably.  (Of course, users are welcome to build it
 and report.)
 
+# Quick Start
+
+See the [FreeBSD Quickstart
+Guide](https://www.freebsd.org/doc/handbook/zfs-quickstart.html); only
+the first item is NetBSD specific.
+
+  - Put zfs=YES in rc.conf.
+
+  - Create a pool as "zpool create pool1 /dev/dk0".
+
+  - df and see /pool1
+
+  - Create a filesystem mounted on /n0 as "zfs create -o
+    mountpoint=/n0 pool1/n0".
+
+  - Go back and read the documentation and start over.
+
 # NetBSD-specific information
 
 ## rc.conf
@@ -127,15 +92,10 @@
 One can add disks or parts of disks into pools.  Methods of specifying
 areas to be included include:
 
-  - entire disks (e.g., /dev/rwd0d on amd64)
+  - entire disks (e.g., /dev/wd0d on amd64)
   - disklabel partitions (e.g., /dev/sd0e)
   - wedges (e.g., /dev/dk0)
 
-## legacy vs ? mount points
-
-\todo Explain, if this is NetBSD specific.  Explain consequences, as
-this seems to have something to do with mount ordering.
-
 ## mount order
 
 NetBSD 9 mounts other file systems and then ZFS file systems.  This can
@@ -143,16 +103,17 @@
 NFS.  A workaround is to use noauto and do the mounts in
 /etc/rc.local.
 
-NetBSD current after 20200301 mounts ZFS first. \todo Explain
-consequences.
+NetBSD current after 20200301 mounts ZFS first.  The same issues and
+workarounds apply in different circumstances.
 
 ## NFS
 
-\todo Verify if this is accurate.
+zfs filesystems are reported to be exportable over NFS.
+
+The "zfs share" command adds a line to /etc/zfs/exports, and "zfs
+unshare" removes it.
 
-zfs filesystems can be exported over NFS.  While there are zfs
-commands that appear to be about controlling exports, they simply
-print information that can be added to exports(5).
+\todo Explain how /etc/zfs/exports is used.
 
 This is reported to work on 9.0 STABLE, but to cause a panic on
 current (20200302).  See [misc/55042](http://gnats.netbsd.org/55042).
@@ -176,61 +137,60 @@
 useful in case the zvol had been exported via iscsi and some other
 system created a label.
 
-## TRIM
-
-There is some notion of TRIM and zfs using it.
-
-\todo Explain how this relates to NetBSD.

(Diff truncated)
removed
--- wikisrc/projects/project/qtopia.mdwn	2021-02-11 11:13:19.775517250 +0000
+++ /dev/null	2021-02-11 11:10:01.860305405 +0000
@@ -1,22 +0,0 @@
-[[!template id=project
-
-title="NetBSD port of Qtopia Core Open Source Edition"
-
-contact="""
-[tech-embed](mailto:tech-embed@NetBSD.org)
-"""
-
-category="pkgsrc"
-difficulty="hard"
-
-description="""
-Qtopia Core (formerly QT/Embedded) is a framework for building
-single-application devices on embedded systems.  Currently this only runs on
-Linux, but many current and future NetBSD systems would benefit from having a
-light-weight replacement for X11 provided by Qtopia Core.
-
-See also the
-[Qtopia Core documentation](http://doc.trolltech.com/4.2/qtopiacore.html) and
-[this mail](http://mail-index.NetBSD.org/tech-embed/2009/03/08/msg001123.html).
-"""
-]]

[Fixed] Open Source Conference 2021 Online/Spring NetBSD BoF 2021 Mar.6 Sat 10:00-10:45 JST (UTC+9)
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- wikisrc/users/jun.mdwn	3 Feb 2021 03:49:00 -0000	1.42
+++ wikisrc/users/jun.mdwn	11 Feb 2021 03:45:36 -0000	1.43
@@ -4,7 +4,8 @@
 
 # 2021
 ## Open Source Conference 2021 Online/Spring NetBSD BoF
-- 2021 Mar.6 Sat 10:00-10:45 JST (UTC+9) ROOM C TBD
+- 2021 Mar.6 Sat 10:00-10:45 JST (UTC+9) ROOM C
+- https://register.ospn.jp/osc2021-online-spring/modules/eventrsv/2.html
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/196661/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 - 16:00-16:45 Room E Cross BUGLUG Community Camp 

Mention the ieee80211_tx_complete call
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	18 Jan 2021 09:10:31 -0000	1.12
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	10 Feb 2021 18:50:43 -0000	1.13
@@ -395,9 +395,12 @@
    past and there are other protocols. Also the `ieee80211_crypto_encap`
    function lost its first argument (the radio common ic pointer).
 
-     XXXXX
-
-   This function frees the `mbuf` and calls `ieee80211_free_node(ni)`.
+   The transmit function frees the `mbuf` and calls `ieee80211_free_node(ni)`
+   in all error cases. Else it queues the `mbuf` for transmit and
+   makes sure when transmission is done by hardware to call
+   `ieee80211_tx_complete` with both `mbuf` and `ni`. This call
+   will free the mbuf and the node, and in some cases also cause state
+   machine callbacks.
 
  * If the driver_activate() function only passes deactivation requests
    on to if_deactivate() you can replace it by a shim that gets

cosmetics
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 17:28:53 -0000	1.32
+++ wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 17:39:00 -0000	1.33
@@ -61,39 +61,39 @@
     </tr> ---->
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/amd64/">amd64</a>, qemu, official b5 runs</td>
-        <td>2021-02-06</td> <td>22 failures</td><td /><td />
+        <td>2021-02-06</td> <td>22 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.NetBSD.org/~martin/aarch64-atf/">evbarm64el-aarch64</a>, real hardware</td>
-        <td>2021-02-04</td> <td>25 failures</td><td></td><td></td>
+        <td>2021-02-04</td> <td>25 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/evbearmv7hf-atf/">evbearmv7hfeb</a>, real hardware</td>
-        <td>021-02-01</td> <td>33 failures</td>
+        <td>021-02-01</td> <td>33 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/i386/">i386</a>, qemu, official b5 runs</td>
-        <td>20210-02-06</td> <td>39 failures</td><td /><td />
+        <td>20210-02-06</td> <td>39 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.NetBSD.org/~martin/sparc64-atf/">sparc64</a>, real hardware</td>
-        <td>2021-02-04</td> <td>41 failures</td><td /><td>all wg(4) tests fail!</td>
+        <td>2021-02-04</td> <td>41 failures</td><td> </td><td>all wg(4) tests fail due to mbuf pool memory corruption</td>
     </tr>
     <tr>
         <td><a href="//www-soc.lip6.fr/~bouyer/NetBSD-tests/xen/HEAD/">XEN</a>, i386 and amd64</td>
-        <td>2021-02-04</td> <td>49 failures</td><td></td><td/>
+        <td>2021-02-04</td> <td>49 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/evbarm-atf/">evbarmv5</a>, real hardware</td>
-        <td>2021-02-04</td> <td>65 failures</td><td></td><td>PR <a href="//gnats.netbsd.org/55272">55272</a></td>
+        <td>2021-02-04</td> <td>65 failures</td><td></td><td>userland watchdog starvation<br/>PR <a href="//gnats.netbsd.org/55272">55272</a></td>
     </tr>
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/sparc64/">sparc64</a>, qemu, low memory</td>
-        <td>2021-02-03</td> <td>82 failures</td>
+        <td>2021-02-03</td> <td>82 failures</td><td> </td><td> </td>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/landisk-atf/">landisk</a>, SH4, real hardware, low memory</td>
-        <td>2021-02-04</td> <td>132 failures</td><td>2021-01-05</td><td>pagedeamon lockups, PR <a href="//gnats.netbsd.org/55491">55491</a></td>
+        <td>2021-02-04</td> <td>132 failures</td><td>2021-01-05</td><td>pagedeamon lockups<br/>PR <a href="//gnats.netbsd.org/55491">55491</a></td>
     </tr>
   </tbody>
 </table>

Update test stats
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 16:28:04 -0000	1.31
+++ wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 17:28:53 -0000	1.32
@@ -31,7 +31,7 @@
 * ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
 
 ## Test Regressions since netbsd-9
-While the PR may be older (so "regression" slightly wrong) it was necessary to disable tests to not break whole testbed setups. This are likely effects caused by bugs in the tests or RUMP.
+Some of this issues are older (so "regression" is slightly wrong), but it was necessary to disable tests to not break whole test setups. This are likely effects caused by bugs in the tests or RUMP, so not considered show stoppers.
 
 * [[!template id=pr number=49141]]: lib/librumpclient/t_exec/threxec test randomly fails
 * [[!template id=pr number=50350]]: rump/rumpkern/t_sp/stress_{long,short} fail
@@ -43,8 +43,7 @@
 ## Current status and timeline
 
 * no concrete timeline yet, to be re-evaluated end of February
-* current is getting a lot better
-* plain numbers have improved due to tests being disabled (for the first section of bugs above), this will be undone
+* current is getting a lot better, but there are still issues that need fixing for the branch
 * hoping to see the best architectures with single digit unexpected failures before the branch
 
 ## Last Test Results overview
@@ -55,45 +54,46 @@
      <tr><td>Test</td> <td>Last checked</td> <td>Status</td><td>Last full test run</td><td>Comments</td></tr>
   </thead>
   <tbody>
+  <!---- hardware broken, not available for new test runs currently 
     <tr>
         <td><a href="//www.netbsd.org/~martin/macppc-atf/">macppc</a>, real hardware</td>
         <td>2020-11-08</td> <td>12 failures</td><td></td><td>PR <a href="//gnats.netbsd.org/55272">55272</a>, PR <a href="//gnats.netbsd.org/55338">55338</a></td>
+    </tr> ---->
+    <tr>
+        <td><a href="//releng.netbsd.org/b5reports/amd64/">amd64</a>, qemu, official b5 runs</td>
+        <td>2021-02-06</td> <td>22 failures</td><td /><td />
     </tr>
     <tr>
         <td><a href="//www.NetBSD.org/~martin/aarch64-atf/">evbarm64el-aarch64</a>, real hardware</td>
-        <td>2020-11-08</td> <td>19 failures</td><td></td><td></td>
+        <td>2021-02-04</td> <td>25 failures</td><td></td><td></td>
     </tr>
     <tr>
-        <td><a href="//releng.netbsd.org/b5reports/i386/">i386</a>, qemu, official b5 runs</td>
-        <td>2020-11-08</td> <td>33 failures</td><td /><td />
+        <td><a href="//www.netbsd.org/~martin/evbearmv7hf-atf/">evbearmv7hfeb</a>, real hardware</td>
+        <td>021-02-01</td> <td>33 failures</td>
     </tr>
     <tr>
-        <td><a href="//www.NetBSD.org/~martin/sparc64-atf/">sparc64</a>, real hardware</td>
-        <td>2020-11-08</td> <td>33 failures</td><td /><td>all wg(4) tests fail!</td>
+        <td><a href="//releng.netbsd.org/b5reports/i386/">i386</a>, qemu, official b5 runs</td>
+        <td>20210-02-06</td> <td>39 failures</td><td /><td />
     </tr>
     <tr>
-        <td><a href="//releng.netbsd.org/b5reports/amd64/">amd64</a>, qemu, official b5 runs</td>
-        <td>2020-11-08</td> <td>35 failures</td><td /><td />
+        <td><a href="//www.NetBSD.org/~martin/sparc64-atf/">sparc64</a>, real hardware</td>
+        <td>2021-02-04</td> <td>41 failures</td><td /><td>all wg(4) tests fail!</td>
     </tr>
     <tr>
         <td><a href="//www-soc.lip6.fr/~bouyer/NetBSD-tests/xen/HEAD/">XEN</a>, i386 and amd64</td>
-        <td>2020-11-08</td> <td>58 failures</td><td></td><td/>
+        <td>2021-02-04</td> <td>49 failures</td><td></td><td/>
     </tr>
     <tr>
         <td><a href="//www.netbsd.org/~martin/evbarm-atf/">evbarmv5</a>, real hardware</td>
-        <td>2020-11-08</td> <td>60 failures</td><td></td><td>PR <a href="//gnats.netbsd.org/55272">55272</a>, UVM amap issues</td>
-    </tr>
-    <tr>
-        <td><a href="//www.netbsd.org/~martin/landisk-atf/">landisk</a>, SH4, real hardware, low memory</td>
-        <td>2020-11-08</td> <td>116 failures</td><td></td><td>PR <a href="//gnats.netbsd.org/55491">55491</a></td>
+        <td>2021-02-04</td> <td>65 failures</td><td></td><td>PR <a href="//gnats.netbsd.org/55272">55272</a></td>
     </tr>
     <tr>
         <td><a href="//releng.netbsd.org/b5reports/sparc64/">sparc64</a>, qemu, low memory</td>
-        <td>2020-11-08</td> <td>requires qemu update</td><td>2019-12-07</td>
+        <td>2021-02-03</td> <td>82 failures</td>
     </tr>
     <tr>
-        <td><a href="//www.netbsd.org/~martin/evbearmv7hf-atf/">evbearmv7hfeb</a>, real hardware</td>
-        <td>2020-11-08</td> <td>locks up during test run</td><td>2020-05-30</td><td>UVM amap issues</td>
+        <td><a href="//www.netbsd.org/~martin/landisk-atf/">landisk</a>, SH4, real hardware, low memory</td>
+        <td>2021-02-04</td> <td>132 failures</td><td>2021-01-05</td><td>pagedeamon lockups, PR <a href="//gnats.netbsd.org/55491">55491</a></td>
     </tr>
   </tbody>
 </table>

partial update (mostly PR state cleanup), test results will follow
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/releng/netbsd-10.mdwn	20 Jan 2021 10:44:25 -0000	1.30
+++ wikisrc/releng/netbsd-10.mdwn	6 Feb 2021 16:28:04 -0000	1.31
@@ -1,24 +1,5 @@
 [[!meta title="NetBSD 10.0 preliminary tasklist"]]
 
-## Extra severe Regressions since netbsd-9
-While the PR may be older (so "regression" slightly wrong) new scheduler bugs made it necessary to disable tests to not break whole testbed setups (where in older releases the tests would just fail).
-
-* [[!template id=pr number=49141]]: lib/librumpclient/t_exec/threxec test randomly fails
-* [[!template id=pr number=50350]]: rump/rumpkern/t_sp/stress_{long,short} fail
-* [[!template id=pr number=55304]]: lib/librumpclient/t_exec/threxec, rump/rumpkern/t_sp/reconnect now fail
-* [[!template id=pr number=55356]]: stress_killer test case now fails on real hardware
-* [[!template id=pr number=55338]]: rump threxec test broken
-* [[!template id=pr number=55632]]: tests/net/ipsec/t_ipsec_misc: timeout tests fail randomly
-
-## Regressions since netbsd-9
-
-* ~~[[!template id=pr number=54913]]: fexecve(2) panics in chroot(8)~~
-* [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
-* [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
-* ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
-* ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
-* ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
-
 ## PRs worth fixing
 
 * **Any issues found by [syzbot](https://syzkaller.appspot.com/netbsd) may potentially crash
@@ -30,9 +11,9 @@
 * [[!template id=pr number=53291]]: GPT prevents installation
 * [[!template id=pr number=53128]]: Boot says "default boot twice, skipping..."
 * [[!template id=pr number=54345]]: kernel diagnostic assertion "xfer != NULL" in wdc.c
-* [[!template id=pr number=54727]]: writing a large file causes unreasonable system behaviour (should be fixed, needs to be checked)
+* ~~[[!template id=pr number=54727]]: writing a large file causes unreasonable system behaviour (should be fixed, needs to be checked)~~ (fixed in -current, no backport to netbsd-9 planned)
 * [[!template id=pr number=54761]]: nvme corruption on GENERIC without DIAGNOSTIC
-* [[!template id=pr number=54771]]: nvme(4) fails to attach
+* ~~[[!template id=pr number=54771]]: nvme(4) fails to attach~~ (not a showstopper)
 * [[!template id=pr number=54914]]: fcntl(F_GETPATH) is broken in chroot
 * [[!template id=pr number=55042]]: kernel panics when ZFS filesystem is exported with NFS
 * [[!template id=pr number=55458]]: entropy: WrAnRdNcING no nstropy in  eed
@@ -40,9 +21,28 @@
 * [[!template id=pr number=55533]]: mmap(2) fails when called with a non-zero hint
 * [[!template id=pr number=55892]]: npf cannot handle large tables
 
+## Regressions since netbsd-9
+
+* ~~[[!template id=pr number=54913]]: fexecve(2) panics in chroot(8)~~
+* [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
+* [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
+* ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
+* ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
+* ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
+
+## Test Regressions since netbsd-9
+While the PR may be older (so "regression" slightly wrong) it was necessary to disable tests to not break whole testbed setups. This are likely effects caused by bugs in the tests or RUMP.
+
+* [[!template id=pr number=49141]]: lib/librumpclient/t_exec/threxec test randomly fails
+* [[!template id=pr number=50350]]: rump/rumpkern/t_sp/stress_{long,short} fail
+* [[!template id=pr number=55304]]: lib/librumpclient/t_exec/threxec, rump/rumpkern/t_sp/reconnect now fail
+* [[!template id=pr number=55356]]: stress_killer test case now fails on real hardware
+* [[!template id=pr number=55338]]: rump threxec test broken
+* [[!template id=pr number=55632]]: tests/net/ipsec/t_ipsec_misc: timeout tests fail randomly
+
 ## Current status and timeline
 
-* no concrete timeline yet, to be re-evaluated end of November
+* no concrete timeline yet, to be re-evaluated end of February
 * current is getting a lot better
 * plain numbers have improved due to tests being disabled (for the first section of bugs above), this will be undone
 * hoping to see the best architectures with single digit unexpected failures before the branch

Add Youtube archive: Open Source Conference 2021 Online/Osaka NetBSD BoF,Fix Online/Spring BoF session start time.
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- wikisrc/users/jun.mdwn	30 Jan 2021 02:13:25 -0000	1.41
+++ wikisrc/users/jun.mdwn	3 Feb 2021 03:49:00 -0000	1.42
@@ -4,9 +4,10 @@
 
 # 2021
 ## Open Source Conference 2021 Online/Spring NetBSD BoF
-- 2021 Mar.5-6 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- 2021 Mar.6 Sat 10:00-10:45 JST (UTC+9) ROOM C TBD
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/196661/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- 16:00-16:45 Room E Cross BUGLUG Community Camp 
 
 ## Open Source Conference 2021 Online/Nagoya NetBSD BoF
 - 2021 Jun.5 Sat XX:XX-XX:XX JST (UTC+9) TBD
@@ -25,10 +26,9 @@
 
 # Past Events
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
-- 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD
-- Meeting with ZOOM/YoutubeLive 
+- 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD 
 - [[https://event.ospn.jp/osc2021-online-osaka/session/261876]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- YoutubeLive [[https://www.youtube.com/watch?v=kL_Shc8JY4I]] 
 - [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2021osaka.pdf]]
 - [[https://togetter.com/li/1658323]]
 

move past:Open Source Conference 2021 Online/Osaka NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -r1.40 -r1.41
--- wikisrc/users/jun.mdwn	10 Jan 2021 11:26:29 -0000	1.40
+++ wikisrc/users/jun.mdwn	30 Jan 2021 02:13:25 -0000	1.41
@@ -2,12 +2,7 @@
 
 [[jun/2020]]
 
-## Open Source Conference 2021 Online/Osaka NetBSD BoF
-- 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
-- [[https://event.ospn.jp/osc2021-online-osaka/session/261876]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
-
+# 2021
 ## Open Source Conference 2021 Online/Spring NetBSD BoF
 - 2021 Mar.5-6 Sat XX:XX-XX:XX JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/196661/]]
@@ -28,7 +23,16 @@
 - Join meeting with ZOOM/YoutubeLive 
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
-## Current my job mission
+# Past Events
+## Open Source Conference 2021 Online/Osaka NetBSD BoF
+- 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD
+- Meeting with ZOOM/YoutubeLive 
+- [[https://event.ospn.jp/osc2021-online-osaka/session/261876]]
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2021osaka.pdf]]
+- [[https://togetter.com/li/1658323]]
+
+# Current my job mission
 - SOUM Corporation [[http://www.soum.co.jp]],TOKYO
 - Support Open Science Framework in Japan
 - Job offer: via SOUM Corporation.

Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- wikisrc/releng/netbsd-10.mdwn	4 Jan 2021 02:51:15 -0000	1.29
+++ wikisrc/releng/netbsd-10.mdwn	20 Jan 2021 10:44:25 -0000	1.30
@@ -16,7 +16,7 @@
 * [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
 * [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
 * ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
-* [[!template id=pr number=55509]]: npm install -g electron crashes the kernel (should be fixed, needs to be checked)
+* ~~[[!template id=pr number=55509]]: npm install -g electron crashes the kernel~~
 * ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
 
 ## PRs worth fixing

Describe get_radiocaps even more detailed
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	17 Jan 2021 16:08:00 -0000	1.11
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	18 Jan 2021 09:10:31 -0000	1.12
@@ -84,10 +84,10 @@
    You may want a replacement for IFF_OACATIVE logic for the main device,
    as there is no interface so no flags to (ab)use for that.
 
-   Note that the way channels are set up has changed.
+ * The way channels are set up has changed.
    If your driver had a driver_init_channels() function, you can
-   use it mostly verbatim. Rename it to `driver_get_radiocaps` and
-   make it look like:
+   use it mostly verbatim (but see caveats below for `maxchans` and `nchans`).
+   Rename it to `driver_get_radiocaps` and make it look like:
 
     ```
     static void
@@ -128,18 +128,28 @@
    An example of a multi-frequency driver doing this is iwm(4).
 
    It uses a helper function to add single channels individually
-   via ``ieee80211_add_channel``.
+   via `ieee80211_add_channel`.
    To add the channels for a band, it calls
-   ``iwm_add_channel_band(ic, chans, maxchans, nchans, start, num, bands)``
-   where ``chans``, ``maxchans`` and ``nchans`` are the arguments passed to
+   `iwm_add_channel_band(ic, chans, maxchans, nchans, start, num, bands)`
+   where `chans`, `maxchans` and `nchans` are the arguments passed to
    this callback, chans collecting the resulting channels, nchans pointing
-   to the number of channels already collected, ``bands`` is the bitset of
-   bands to add (multiple IEEE80211_MODE_* bits). The offset ``start``
+   to the number of channels already collected, `bands` is the bitset of
+   bands to add (multiple IEEE80211_MODE_* bits). The offset `start`
    is the index of the first channel to add to the output (first call will
-   always be with 0 as ``start``), and ``num`` the number of channels
-   you expect ``iwm_add_channel_band`` to add. The ``iwm_add_channel_band``
+   always be with 0 as ``start``), and `num` the number of channels
+   you expect `iwm_add_channel_band` to add. The `iwm_add_channel_band`
    helper function iterates over the channels, gets flags for the channels
-   from firmware and calls ``ieee80211_add_channel``.
+   from firmware and calls `ieee80211_add_channel`.
+
+   Overall the most important part in conversion of old drivers is to make sure that
+   the out parameter `*nchans` is properly set to the number of channel data
+   actually filled, and to respect the `maxchans` limit. This callback
+   is called from two places, once from the drivers attach function,
+   where `maxchan` is big enough (always `IEEE80211_CHAN_MAX`), and from
+   ioctl `IEEE80211_IOC_DEVCAPS` where `maxchan` depends on the userland arguments
+   and e.g. wpa_supplicant only asks for minmal data, as it is not interested
+   in the actual channels available (`maxchan` is 1). The ioctl handling code
+   will KASSERT proper behaviour of the callback.
 
  * If your driver used to override state machine functions (typical
    `newstate` to controll LEDs when associating or similar),

Tweak description of getradiocaps callback
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	17 Jan 2021 15:57:41 -0000	1.10
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	17 Jan 2021 16:08:00 -0000	1.11
@@ -127,7 +127,9 @@
 
    An example of a multi-frequency driver doing this is iwm(4).
 
-   To add the channels for a band, call
+   It uses a helper function to add single channels individually
+   via ``ieee80211_add_channel``.
+   To add the channels for a band, it calls
    ``iwm_add_channel_band(ic, chans, maxchans, nchans, start, num, bands)``
    where ``chans``, ``maxchans`` and ``nchans`` are the arguments passed to
    this callback, chans collecting the resulting channels, nchans pointing
@@ -135,7 +137,9 @@
    bands to add (multiple IEEE80211_MODE_* bits). The offset ``start``
    is the index of the first channel to add to the output (first call will
    always be with 0 as ``start``), and ``num`` the number of channels
-   you expect ``iwm_add_channel_band`` to add.
+   you expect ``iwm_add_channel_band`` to add. The ``iwm_add_channel_band``
+   helper function iterates over the channels, gets flags for the channels
+   from firmware and calls ``ieee80211_add_channel``.
 
  * If your driver used to override state machine functions (typical
    `newstate` to controll LEDs when associating or similar),

Update description of getradiocaps callback
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	20 Dec 2020 12:57:36 -0000	1.9
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	17 Jan 2021 15:57:41 -0000	1.10
@@ -100,6 +100,7 @@
         setbit(bands, IEEE80211_MODE_11B);
         setbit(bands, IEEE80211_MODE_11G);
         setbit(bands, IEEE80211_MODE_11NG);
+        // XXX see description below if your chip can use other ranges (like 5ghz)
         ieee80211_add_channels_default_2ghz(chans, maxchans, nchans, bands, 0);
     }
     ```
@@ -119,6 +120,23 @@
     ic->ic_getradiocaps = urtwn_get_radiocaps;
     ```
 
+   If the hardware can use different frequency bands you may have to add them
+   band by band instead of using `ieee80211_add_channels_default_2ghz`, also if
+   the firmware knows about regulatory domains it may be required to select
+   subsets of channels.
+
+   An example of a multi-frequency driver doing this is iwm(4).
+
+   To add the channels for a band, call
+   ``iwm_add_channel_band(ic, chans, maxchans, nchans, start, num, bands)``
+   where ``chans``, ``maxchans`` and ``nchans`` are the arguments passed to
+   this callback, chans collecting the resulting channels, nchans pointing
+   to the number of channels already collected, ``bands`` is the bitset of
+   bands to add (multiple IEEE80211_MODE_* bits). The offset ``start``
+   is the index of the first channel to add to the output (first call will
+   always be with 0 as ``start``), and ``num`` the number of channels
+   you expect ``iwm_add_channel_band`` to add.
+
  * If your driver used to override state machine functions (typical
    `newstate` to controll LEDs when associating or similar),
    remove all traces for this from your softc and override a

[Fixed] Open Source Conference 2021 Online/Osaka NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- wikisrc/users/jun.mdwn	2 Jan 2021 10:22:52 -0000	1.39
+++ wikisrc/users/jun.mdwn	10 Jan 2021 11:26:29 -0000	1.40
@@ -5,6 +5,7 @@
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
 - 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
+- [[https://event.ospn.jp/osc2021-online-osaka/session/261876]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
 ## Open Source Conference 2021 Online/Spring NetBSD BoF

Minor tweaks for clarity. Cite rumphijack as LD_PRELOAD example.
Index: wikisrc/symbol_versions.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/symbol_versions.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/symbol_versions.mdwn	5 Jan 2021 02:20:44 -0000	1.4
+++ wikisrc/symbol_versions.mdwn	5 Jan 2021 02:23:32 -0000	1.5
@@ -71,6 +71,8 @@
 **Similarly, programs that use `LD_PRELOAD` (see
 [[!template id=man name="ld.elf_so" section="3"]])
 to interpose their own definitions of symbols, such as
+[[!template id=man name="rumphijack" section="3"]]
+and
 [torsocks](https://gitlab.torproject.org/legacy/trac/-/wikis/doc/torsocks),
 must know to define `__time50` if they want to replace the new
 semantics in new programs, or `time` if they want to replace the old
@@ -89,14 +91,14 @@
 like `malloc` and `free` (and `calloc` and everything else in that
 family), and some system call stubs; except for the `__...50`
 pseudo-versioned renames of public functions, you should not try to
-interpose your own definition of any symbol beginning with `_`, which
-is reserved to the implementation in C.
+interpose your own definition of any symbol beginning with ‘`_`’ (a
+single underscore), which is reserved to the implementation in C.
 
 # Appendix: ELF symbol versions
 
 The renaming scheme of `__time50` is informal -- any symbol can be
-renamed the same way, and NetBSD uses it for some other purposes, such
-as exposing a slightly different
+renamed the same way, and NetBSD uses it for some other purposes too,
+such as exposing a slightly different
 [[!template id=man name="rename" section="2"]]
 function via the symbol `__posix_rename` in programs that define
 `_POSIX_C_SOURCE` but not `_NETBSD_SOURCE`.
@@ -105,8 +107,8 @@
 ‘symbol versions’ with sections called `.gnu.version` (associating
 versions with symbols), `.gnu.version_d` (versions defined in an
 object), and `.gnu.version_n` (versions needed in an object).
-As of 2020, NetBSD does not use ELF symbol versions (although the
-linker and loader support them).
+As of 2020, NetBSD does not use ELF symbol versions, although the
+linker and loader support them for libraries developed outside NetBSD.
 
 The semantics is:
 

More formatting tweaks.
Index: wikisrc/symbol_versions.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/symbol_versions.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/symbol_versions.mdwn	5 Jan 2021 02:17:38 -0000	1.3
+++ wikisrc/symbol_versions.mdwn	5 Jan 2021 02:20:44 -0000	1.4
@@ -49,9 +49,11 @@
 
     time_t time(time_t *) __RENAME(__time50);
 
-where `__RENAME(__time50)` is a macro expanding to `__asm("__time50")`,
-which has the effect that the compiler will use the symbol `__time50`
-for calls to the C function this declares.
+where `__RENAME(__time50)` is a
+[macro](https://nxr.netbsd.org/search?q=&project=src&defs=__RENAME&refs=&path=&hist=)
+expanding to `__asm("__time50")`, which has the effect that the
+compiler will use the symbol `__time50` for calls to the C function
+this declares.
 Thus, old programs with calls to the symbol `time` using the 32-bit
 prototype will continue to work, and new programs will be compiled to
 call the symbol `__time50` using the 64-bit prototype.
@@ -236,12 +238,13 @@
 
 # References
 
-- Jörg Sonnenberger, ‘How to break long-term compatibility in NetBSD’,
+- Jörg Sonnenberger,
+  [How to break long-term compatibility in NetBSD](https://www.NetBSD.org/gallery/presentations/joerg/asiabsdcon2016/asiabsdcon2016.pdf),
   AsiaBSDcon 2016.
-  https://www.NetBSD.org/gallery/presentations/joerg/asiabsdcon2016/asiabsdcon2016.pdf
 
-- Ulrich Drepper, ‘How To Write Shared Libraries’, 2011-12-10.
-  https://akkadia.org/drepper/dsohowto.pdf
+- Ulrich Drepper,
+  [How To Write Shared Libraries](https://akkadia.org/drepper/dsohowto.pdf),
+  2011-12-10.
 
-- Ulrich Drepper, ‘ELF Symbol Versioning’.
-  https://akkadia.org/drepper/symbol-versioning
+- Ulrich Drepper,
+  [ELF Symbol Versioning](https://akkadia.org/drepper/symbol-versioning)

Attempt to improve the formatting somewhat.
Index: wikisrc/symbol_versions.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/symbol_versions.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/symbol_versions.mdwn	5 Jan 2021 02:14:52 -0000	1.2
+++ wikisrc/symbol_versions.mdwn	5 Jan 2021 02:17:38 -0000	1.3
@@ -64,14 +64,16 @@
 such as C foreign function interfaces in dynamic languages like Python,
 need to know that if they want the legacy 32-bit time() function, they
 must use the symbol `time`, and if they want the modern 64-bit time()
-function, they must use the symbol `__time50`.
-Similarly, programs that use `LD_PRELOAD` (see
+function, they must use the symbol `__time50`.**
+
+**Similarly, programs that use `LD_PRELOAD` (see
 [[!template id=man name="ld.elf_so" section="3"]])
 to interpose their own definitions of symbols, such as
 [torsocks](https://gitlab.torproject.org/legacy/trac/-/wikis/doc/torsocks),
 must know to define `__time50` if they want to replace the new
 semantics in new programs, or `time` if they want to replace the old
 semantics in old programs.**
+
 The same applies to many other standard C functions, such as
 [[!template id=man name="clock_gettime" section="3"]]
 (`__clock_gettime50`) and
@@ -108,32 +110,32 @@
 
 - When creating a library, a version map may be specified like so:
 
-    NetBSD_BASE {
-            global:
-                    __time50;
-                    free;
-                    malloc;
-                    time;
-            local:
-                    *;
-    };
-
-    NetBSD_6 {
-            global:
-                    time;
-    };
+      NetBSD_BASE {
+              global:
+                      __time50;
+                      free;
+                      malloc;
+                      time;
+              local:
+                      *;
+      };
+
+      NetBSD_6 {
+              global:
+                      time;
+      };
 
   The library can specify what versioned symbol each definition in the
   library is exposed with:
 
-    __asm(".symver time_legacy,time@NetBSD_BASE");
-    int time_legacy(int *t) { ... }
+      __asm(".symver time_legacy,time@NetBSD_BASE");
+      int time_legacy(int *t) { ... }
 
-    __asm(".symver time64,time@@NetBSD_6");         /* default version */
-    int64_t time64(int64_t *t) { ... }
+      __asm(".symver time64,time@@NetBSD_6");         /* default version */
+      int64_t time64(int64_t *t) { ... }
 
-    __asm(".symver __time50,__time50@NetBSD_BASE");
-    __typeof(time) __time50 __attribute__((__alias__("time64")));
+      __asm(".symver __time50,__time50@NetBSD_BASE");
+      __typeof(time) __time50 __attribute__((__alias__("time64")));
 
   Versions marked with `@@` are _default_ versions; versions marked
   with `@` are non-default.
@@ -160,8 +162,8 @@
   For example, if [[!template id=man name="time" section="3"]] is
   declared in a header file as simply
 
-    typedef int64_t time_t;
-    time_t time(time_t *);
+      typedef int64_t time_t;
+      time_t time(time_t *);
 
   then new programs will be linked against `time@NetBSD_6`, which is
   the default version for the symbol name `time`.

Fix section header markdown syntax.
Index: wikisrc/symbol_versions.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/symbol_versions.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/symbol_versions.mdwn	5 Jan 2021 01:17:47 -0000	1.1
+++ wikisrc/symbol_versions.mdwn	5 Jan 2021 02:14:52 -0000	1.2
@@ -57,7 +57,7 @@
 call the symbol `__time50` using the 64-bit prototype.
 ([Details on how the symbols are implemented in `libc`.](https://nxr.netbsd.org/xref/src/lib/libc/README))
 
-* [[!template id=man name="dlsym" section="3"]] and symbol interposition
+# [[!template id=man name="dlsym" section="3"]] and symbol interposition
 
 **Programs that use
 [[!template id=man name="dlsym" section="3"]],
@@ -88,7 +88,7 @@
 interpose your own definition of any symbol beginning with `_`, which
 is reserved to the implementation in C.
 
-* Appendix: ELF symbol versions
+# Appendix: ELF symbol versions
 
 The renaming scheme of `__time50` is informal -- any symbol can be
 renamed the same way, and NetBSD uses it for some other purposes, such
@@ -177,7 +177,7 @@
   Programs can request specific versions with
   [[!template id=man name="dlvsym" section="3"]].
 
-** ELF symbol versions versus `__...50` pseudo-versions
+## ELF symbol versions versus `__...50` pseudo-versions
 
 ELF symbol versions and NetBSD's `__time50` pseudo-version renaming
 scheme both try to address the same problem: making sure old programs
@@ -232,7 +232,7 @@
 [[!template id=man name="time" section="3"]]
 function in newer releases of NetBSD.
 
-* References
+# References
 
 - Jörg Sonnenberger, ‘How to break long-term compatibility in NetBSD’,
   AsiaBSDcon 2016.

Draft note about how library symbol versions work.
Memorialize the reason why we don't use ELF symbol versions, and why it
would hurt more than help to switch from __pseudoversions50 to
elfsymbol@Version6.
Members: 
	symbol_versions.mdwn:INITIAL->1.1 

--- /dev/null	2021-01-05 01:16:00.916319376 +0000
+++ wikisrc/symbol_versions.mdwn	2021-01-05 01:18:25.250434194 +0000
@@ -0,0 +1,245 @@
+[[!meta title="Symbol Versions in NetBSD Libraries"]]
+
+NetBSD implements various standard C language interfaces such as the
+[[!template id=man name="time" section="3"]] function in POSIX in
+`libc`, which has a prototype like this:
+
+    time_t time(time_t *);
+
+However, between NetBSD 5 and NetBSD 6, the definition of the type
+`time_t` in NetBSD changed on many architectures from 32-bit to 64-bit
+to avoid the
+[year 2038 problem](https://en.wikipedia.org/wiki/Year_2038_problem).
+So programs compiled in NetBSD<=5 saw a declaration like
+
+    int time(int *);
+
+which on most architectures is 32-bit, while programs compiled in
+NetBSD>=6 see a declaration like
+
+    int64_t time(int64_t *);
+
+These declarations are not compatible -- consider a program with a
+fragment like:
+
+    int before, after;
+
+    time(&before);
+    ...
+    time(&after);
+
+This would work in NetBSD<=5, but in NetBSD>=6, the calls to
+[[!template id=man name="time" section="3"]] might overwrite adjacent
+positions on the stack, or crash altogether because the argument is
+misaligned.
+
+Programs written and compiled on older versions of NetBSD are supposed
+to continue to work -- with suitable emulators/compatNN packages and
+compatNN.kmod modules or COMPAT_NN kernel options -- on newer versions
+of NetBSD.
+
+To make this work, NetBSD's `libc` provides _two_ symbols:
+
+- `time`, which still implements the legacy prototype as before; and
+- `__time50` (yes, this is not a typo for `__time60`), which implements
+  the new 64-bit prototype.
+
+The declaration in newer NetBSD
+[time.h](https://nxr.netbsd.org/xref/src/include/time.h) is actually:
+
+    time_t time(time_t *) __RENAME(__time50);
+
+where `__RENAME(__time50)` is a macro expanding to `__asm("__time50")`,
+which has the effect that the compiler will use the symbol `__time50`
+for calls to the C function this declares.
+Thus, old programs with calls to the symbol `time` using the 32-bit
+prototype will continue to work, and new programs will be compiled to
+call the symbol `__time50` using the 64-bit prototype.
+([Details on how the symbols are implemented in `libc`.](https://nxr.netbsd.org/xref/src/lib/libc/README))
+
+* [[!template id=man name="dlsym" section="3"]] and symbol interposition
+
+**Programs that use
+[[!template id=man name="dlsym" section="3"]],
+such as C foreign function interfaces in dynamic languages like Python,
+need to know that if they want the legacy 32-bit time() function, they
+must use the symbol `time`, and if they want the modern 64-bit time()
+function, they must use the symbol `__time50`.
+Similarly, programs that use `LD_PRELOAD` (see
+[[!template id=man name="ld.elf_so" section="3"]])
+to interpose their own definitions of symbols, such as
+[torsocks](https://gitlab.torproject.org/legacy/trac/-/wikis/doc/torsocks),
+must know to define `__time50` if they want to replace the new
+semantics in new programs, or `time` if they want to replace the old
+semantics in old programs.**
+The same applies to many other standard C functions, such as
+[[!template id=man name="clock_gettime" section="3"]]
+(`__clock_gettime50`) and
+[[!template id=man name="socket" section="3"]]
+(`__socket30`), which have all had their prototypes or semantics
+revised at some point.
+
+Symbol interposition is very difficult to get right, and it is hard to
+make programs that do it reliably.
+On NetBSD, it should be reserved for certain standard library functions
+like `malloc` and `free` (and `calloc` and everything else in that
+family), and some system call stubs; except for the `__...50`
+pseudo-versioned renames of public functions, you should not try to
+interpose your own definition of any symbol beginning with `_`, which
+is reserved to the implementation in C.
+
+* Appendix: ELF symbol versions
+
+The renaming scheme of `__time50` is informal -- any symbol can be
+renamed the same way, and NetBSD uses it for some other purposes, such
+as exposing a slightly different
+[[!template id=man name="rename" section="2"]]
+function via the symbol `__posix_rename` in programs that define
+`_POSIX_C_SOURCE` but not `_NETBSD_SOURCE`.
+
+The GNU ELF toolchain (gcc, ld, &c.) supports a formal concept of
+‘symbol versions’ with sections called `.gnu.version` (associating
+versions with symbols), `.gnu.version_d` (versions defined in an
+object), and `.gnu.version_n` (versions needed in an object).
+As of 2020, NetBSD does not use ELF symbol versions (although the
+linker and loader support them).
+
+The semantics is:
+
+- When creating a library, a version map may be specified like so:
+
+    NetBSD_BASE {
+            global:
+                    __time50;
+                    free;
+                    malloc;
+                    time;
+            local:
+                    *;
+    };
+
+    NetBSD_6 {
+            global:
+                    time;
+    };
+
+  The library can specify what versioned symbol each definition in the
+  library is exposed with:
+
+    __asm(".symver time_legacy,time@NetBSD_BASE");
+    int time_legacy(int *t) { ... }
+
+    __asm(".symver time64,time@@NetBSD_6");         /* default version */
+    int64_t time64(int64_t *t) { ... }
+
+    __asm(".symver __time50,__time50@NetBSD_BASE");
+    __typeof(time) __time50 __attribute__((__alias__("time64")));
+
+  Versions marked with `@@` are _default_ versions; versions marked
+  with `@` are non-default.
+
+- When running a program that was linked _without_ ELF symbol versions,
+  from before the library had ELF symbol versions (like `libc` today),
+  the first version in the map is used to resolve symbols:
+
+  - Old programs calling the legacy `time` symbol will get
+    `time@NetBSD_BASE`, which is defined via `time_legacy` above.
+
+  - Programs calling `__time50` will get `__time50@NetBSD_BASE`, which
+    is defined via `time64` above.
+
+- When linking a program against a library with symbol versions, the
+  linker will record what the default version was; when later running
+  the program, the stored symbol version will be used.
+  If there is no default version, and the program did not request a
+  specific version with `.symver`, then the linker refuses to link, so
+  obsolete symbols can be ‘removed’ by giving them only non-default
+  versions -- thus old programs continue to work but new programs can't
+  be made that use the obsolete symbols.
+
+  For example, if [[!template id=man name="time" section="3"]] is
+  declared in a header file as simply
+
+    typedef int64_t time_t;
+    time_t time(time_t *);
+
+  then new programs will be linked against `time@NetBSD_6`, which is
+  the default version for the symbol name `time`.
+  If NetBSD ever changed the prototype of
+  [[!template id=man name="time" section="3"]]
+  again, and defined a `time@NetBSD_11` as the new default version,
+  existing programs compiled with `time@NetBSD_6` would continue to get
+  the semantics they were built against.
+
+- When a program uses
+  [[!template id=man name="dlsym" section="3"]],
+  it always gets the default version, if any.
+  Programs can request specific versions with
+  [[!template id=man name="dlvsym" section="3"]].
+
+** ELF symbol versions versus `__...50` pseudo-versions
+
+ELF symbol versions and NetBSD's `__time50` pseudo-version renaming
+scheme both try to address the same problem: making sure old programs
+that were built under the assumption of the old semantics continue to
+run unmodified with new libraries.
+
+Both of them run into problems with
+[[!template id=man name="dlsym" section="3"]]
+and symbol interposition:
+
+- A program written _today_ that expects to find the function time() in
+  `libc`, such as a C foreign function interface for a dynamic language
+  like Python, needs to know to call `dlsym("__time50")`; otherwise it
+  will get an obsolete definition that does not match the semantics of

(Diff truncated)
PRs
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- wikisrc/releng/netbsd-10.mdwn	29 Dec 2020 20:42:34 -0000	1.28
+++ wikisrc/releng/netbsd-10.mdwn	4 Jan 2021 02:51:15 -0000	1.29
@@ -16,7 +16,7 @@
 * [[!template id=pr number=55272]]: userland watchdog processes may be outstalled
 * [[!template id=pr number=55370]]: Invalid modification/connection time with mount_null(8)
 * ~~[[!template id=pr number=55489]]: Infinite loop in "rump ifconfig bridge0 create"~~
-* [[!template id=pr number=55509]]: npm install -g electron crashes the kernel
+* [[!template id=pr number=55509]]: npm install -g electron crashes the kernel (should be fixed, needs to be checked)
 * ~~[[!template id=pr number=55567]]: tcp-send slows down to slow single byte transfers~~
 
 ## PRs worth fixing
@@ -38,6 +38,7 @@
 * [[!template id=pr number=55458]]: entropy: WrAnRdNcING no nstropy in  eed
 * [[!template id=pr number=55510]]: pg_jobc going negative and crashing the kernel
 * [[!template id=pr number=55533]]: mmap(2) fails when called with a non-zero hint
+* [[!template id=pr number=55892]]: npf cannot handle large tables
 
 ## Current status and timeline
 

move past events
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- wikisrc/users/jun.mdwn	2 Jan 2021 09:27:28 -0000	1.38
+++ wikisrc/users/jun.mdwn	2 Jan 2021 10:22:52 -0000	1.39
@@ -27,44 +27,6 @@
 - Join meeting with ZOOM/YoutubeLive 
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
-##Past Events
-
-## Open Developers Conference 2020 Online NetBSD BoF
-- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
-- YoutubeLive [[https://www.youtube.com/watch?v=dmP_FfboxaA]] 
-- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
-- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]
-- [[https://togetter.com/li/1637624]]
-
-
-## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
-- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
-- YoutubeLive [[https://www.youtube.com/watch?v=7QLbLWbJzw4]] 
-- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
-- [[https://togetter.com/li/1627360]]
-
-### Kansai Open Forum 2020 BSD BoF
-- 2020 Nov.7 Sat 15:00-15:50 JST (UTC+9)
-- Join meeting with Jitsi Meet,notify me to get confrence URL.
-- YoutubeLive: [[https://youtu.be/5if2LGKIRvQ]]
-- [[https://www.k-of.jp/2020/]]
-- [[https://k-of.jp/backend/time_schedule_2]]
-- [[https://k-of.jp/backend/session/1374]]
-
-### Open Source Conference 2020 Online/Fall
-- [[https://www.youtube.com/watch?v=6Zjq1qO5lg4]] 
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020tokyofall.pdf]]
-- [[https://togetter.com/li/1611536]]
-
-### OpenSourceConfrence2020 Online/Hiroshima
-- [[https://www.youtube.com/watch?v=de8hHvfPI5k]]
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020hiroshima.pdf]]
-- [[https://togetter.com/li/1593951]]
-
 ## Current my job mission
 - SOUM Corporation [[http://www.soum.co.jp]],TOKYO
 - Support Open Science Framework in Japan

create 2020 page via [[jun/2020], not [[2020]].
--- /dev/null	2021-01-02 09:30:10.133232892 +0000
+++ wikisrc/users/jun/2020.mdwn	2021-01-02 09:30:26.992780067 +0000
@@ -0,0 +1,36 @@
+## Open Developers Conference 2020 Online NetBSD BoF
+- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
+- YoutubeLive [[https://www.youtube.com/watch?v=dmP_FfboxaA]] 
+- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
+- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]
+- [[https://togetter.com/li/1637624]]
+
+
+## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
+- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
+- YoutubeLive [[https://www.youtube.com/watch?v=7QLbLWbJzw4]] 
+- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
+- [[https://togetter.com/li/1627360]]
+
+### Kansai Open Forum 2020 BSD BoF
+- 2020 Nov.7 Sat 15:00-15:50 JST (UTC+9)
+- Join meeting with Jitsi Meet,notify me to get confrence URL.
+- YoutubeLive: [[https://youtu.be/5if2LGKIRvQ]]
+- [[https://www.k-of.jp/2020/]]
+- [[https://k-of.jp/backend/time_schedule_2]]
+- [[https://k-of.jp/backend/session/1374]]
+
+### Open Source Conference 2020 Online/Fall
+- [[https://www.youtube.com/watch?v=6Zjq1qO5lg4]] 
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020tokyofall.pdf]]
+- [[https://togetter.com/li/1611536]]
+
+### OpenSourceConfrence2020 Online/Hiroshima
+- [[https://www.youtube.com/watch?v=de8hHvfPI5k]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020hiroshima.pdf]]
+- [[https://togetter.com/li/1593951]]
+

create 2020 page
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- wikisrc/users/jun.mdwn	23 Dec 2020 23:01:55 -0000	1.37
+++ wikisrc/users/jun.mdwn	2 Jan 2021 09:27:28 -0000	1.38
@@ -1,6 +1,6 @@
 [[!meta  title="Jun Ebihara"]]
 
-[[2020]]
+[[jun/2020]]
 
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
 - 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD

removed
--- wikisrc/users/2020.mdwn	2021-01-02 09:23:58.966652332 +0000
+++ /dev/null	2021-01-02 09:23:57.520458943 +0000
@@ -1,38 +0,0 @@
-# 2020
-
-## Open Developers Conference 2020 Online NetBSD BoF
-- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
-- YoutubeLive [[https://www.youtube.com/watch?v=dmP_FfboxaA]] 
-- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
-- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]
-- [[https://togetter.com/li/1637624]]
-
-
-## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
-- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
-- YoutubeLive [[https://www.youtube.com/watch?v=7QLbLWbJzw4]] 
-- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
-- [[https://togetter.com/li/1627360]]
-
-### Kansai Open Forum 2020 BSD BoF
-- 2020 Nov.7 Sat 15:00-15:50 JST (UTC+9)
-- Join meeting with Jitsi Meet,notify me to get confrence URL.
-- YoutubeLive: [[https://youtu.be/5if2LGKIRvQ]]
-- [[https://www.k-of.jp/2020/]]
-- [[https://k-of.jp/backend/time_schedule_2]]
-- [[https://k-of.jp/backend/session/1374]]
-
-### Open Source Conference 2020 Online/Fall
-- [[https://www.youtube.com/watch?v=6Zjq1qO5lg4]] 
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020tokyofall.pdf]]
-- [[https://togetter.com/li/1611536]]
-
-### OpenSourceConfrence2020 Online/Hiroshima
-- [[https://www.youtube.com/watch?v=de8hHvfPI5k]]
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020hiroshima.pdf]]
-- [[https://togetter.com/li/1593951]]
-

Presentation in 2020
--- /dev/null	2021-01-02 09:22:26.855541679 +0000
+++ wikisrc/users/2020.mdwn	2021-01-02 09:22:32.545457648 +0000
@@ -0,0 +1,38 @@
+# 2020
+
+## Open Developers Conference 2020 Online NetBSD BoF
+- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
+- YoutubeLive [[https://www.youtube.com/watch?v=dmP_FfboxaA]] 
+- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
+- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]
+- [[https://togetter.com/li/1637624]]
+
+
+## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
+- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
+- YoutubeLive [[https://www.youtube.com/watch?v=7QLbLWbJzw4]] 
+- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
+- [[https://togetter.com/li/1627360]]
+
+### Kansai Open Forum 2020 BSD BoF
+- 2020 Nov.7 Sat 15:00-15:50 JST (UTC+9)
+- Join meeting with Jitsi Meet,notify me to get confrence URL.
+- YoutubeLive: [[https://youtu.be/5if2LGKIRvQ]]
+- [[https://www.k-of.jp/2020/]]
+- [[https://k-of.jp/backend/time_schedule_2]]
+- [[https://k-of.jp/backend/session/1374]]
+
+### Open Source Conference 2020 Online/Fall
+- [[https://www.youtube.com/watch?v=6Zjq1qO5lg4]] 
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020tokyofall.pdf]]
+- [[https://togetter.com/li/1611536]]
+
+### OpenSourceConfrence2020 Online/Hiroshima
+- [[https://www.youtube.com/watch?v=de8hHvfPI5k]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020hiroshima.pdf]]
+- [[https://togetter.com/li/1593951]]
+

Welcome to 2021!
Index: wikisrc/templates/page.tmpl
===================================================================
RCS file: /cvsroot/wikisrc/templates/page.tmpl,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -r1.67 -r1.68
--- wikisrc/templates/page.tmpl	9 Sep 2020 14:34:02 -0000	1.67
+++ wikisrc/templates/page.tmpl	2 Jan 2021 09:02:49 -0000	1.68
@@ -262,7 +262,7 @@
     <span class="footcopy"><a href="//www.NetBSD.org/about/disclaimer.html">
       Disclaimer</a> |
       <span class="copyright">
-        Copyright &copy; 1994-2020 The NetBSD Foundation, Inc.
+        Copyright &copy; 1994-2021 The NetBSD Foundation, Inc.
       </span>
       ALL
       RIGHTS RESERVED. <br /> NetBSD<sup>&reg;</sup> is a registered

Make sure to pass -U consistently to build.sh.
Index: wikisrc/guide/updating.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/guide/updating.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/guide/updating.mdwn	19 Jun 2015 19:18:31 -0000	1.5
+++ wikisrc/guide/updating.mdwn	1 Jan 2021 18:22:22 -0000	1.6
@@ -50,7 +50,7 @@
 The next step will build the kernel:
 
     $ cd /usr/src
-    $ ./build.sh -O ../obj -T ../tools kernel=<KERNEL>
+    $ ./build.sh -O ../obj -T ../tools -U kernel=<KERNEL>
 
 ### Installing the kernel and userland
 

calendar update
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021.mdwn	2021-01-01 00:00:42.966496687 +0000
@@ -0,0 +1 @@
+[[!calendar type=year year=2021 pages="internal(blog/*)"]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/01.mdwn	2021-01-01 00:00:42.993128929 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=01 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(01) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/02.mdwn	2021-01-01 00:00:43.027561921 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=02 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(02) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/03.mdwn	2021-01-01 00:00:43.058187127 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=03 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(03) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/04.mdwn	2021-01-01 00:00:43.088372853 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=04 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(04) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/05.mdwn	2021-01-01 00:00:43.120088201 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=05 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(05) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/06.mdwn	2021-01-01 00:00:43.147858167 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=06 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(06) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/07.mdwn	2021-01-01 00:00:43.179547182 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=07 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(07) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/08.mdwn	2021-01-01 00:00:43.209044692 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=08 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(08) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/09.mdwn	2021-01-01 00:00:43.239851196 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=09 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(09) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/10.mdwn	2021-01-01 00:00:43.268936766 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=10 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(10) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/11.mdwn	2021-01-01 00:00:43.301884732 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=11 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(11) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]
--- /dev/null	2021-01-01 00:00:06.454796119 +0000
+++ wikisrc/archives/2021/12.mdwn	2021-01-01 00:00:43.331239243 +0000
@@ -0,0 +1,5 @@
+[[!sidebar content="""
+[[!calendar type=month month=12 year=2021 pages="internal(blog/*)"]]
+"""]]
+
+[[!inline pages="creation_month(12) and creation_year(2021) and internal(blog/*)" show=0 feeds=no reverse=yes]]

hdaudio bug is fixed
Index: wikisrc/releng/netbsd-10.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/releng/netbsd-10.mdwn,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- wikisrc/releng/netbsd-10.mdwn	8 Nov 2020 09:25:34 -0000	1.27
+++ wikisrc/releng/netbsd-10.mdwn	29 Dec 2020 20:42:34 -0000	1.28
@@ -23,7 +23,7 @@
 
 * **Any issues found by [syzbot](https://syzkaller.appspot.com/netbsd) may potentially crash
   the kernel and should be investigated and fixed.**
-* [[!template id=pr number=51734]]: hdaudio(4) "RIRB timeout" interrupt storm on boot
+* ~~[[!template id=pr number=51734]]: hdaudio(4) "RIRB timeout" interrupt storm on boot~~
 * [[!template id=pr number=52583]]: iwm(4) "unhandled firmware response" followed by panic after extended use
 * [[!template id=pr number=53173]]: "go test net/http" locks up the machine
 * [[!template id=pr number=53155]]: Wedge after <12h uptime when >2 bnx network interfaces in use

removed
--- wikisrc/users/spz/sandbox/comment_1_db857980aae5f122eed93f26cfd635cf._comment	2020-12-27 09:11:44.195346316 +0000
+++ /dev/null	2020-12-27 09:10:39.607361711 +0000
@@ -1,7 +0,0 @@
-[[!comment format=mdwn
- username="http://spz.dreamwidth.org/"
- subject="test comments"
- date="2017-09-10T14:11:39Z"
- content="""
-test test test
-"""]]

post ikiwiki update test
Index: wikisrc/users/spz/sandbox.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/spz/sandbox.mdwn,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- wikisrc/users/spz/sandbox.mdwn	25 Jan 2019 07:42:49 -0000	1.16
+++ wikisrc/users/spz/sandbox.mdwn	27 Dec 2020 09:09:46 -0000	1.17
@@ -1 +1,2 @@
-Fri Jan 25 07:42:27 UTC 2019
+Sun Dec 27 10:09:14 CET 2020
+

news68k is 68k based (not arm :)
Index: wikisrc/ports.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports.mdwn,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- wikisrc/ports.mdwn	20 Oct 2020 13:42:03 -0000	1.25
+++ wikisrc/ports.mdwn	25 Dec 2020 22:00:31 -0000	1.26
@@ -77,7 +77,7 @@
 [[mvme68k]]	|m68k		|Motorola MVME 68k SBCs							|[9.1](http://www.netbsd.org/releases/formal-9/)
 [[mvmeppc]]	|powerpc	|Motorola MVME PowerPC SBCs						|[9.1](http://www.netbsd.org/releases/formal-9/)
 [[netwinder]]	|arm		|StrongARM based NetWinder machines					|[9.1](http://www.netbsd.org/releases/formal-9/)
-[[news68k]]	|arm		|Sony's m68k based "NET WORK STATION" series				|[9.1](http://www.netbsd.org/releases/formal-9/)
+[[news68k]]	|m68k		|Sony's m68k based "NET WORK STATION" series				|[9.1](http://www.netbsd.org/releases/formal-9/)
 [[newsmips]]	|mips		|Sony's MIPS based "NET WORK STATION" series				|[9.1](http://www.netbsd.org/releases/formal-9/)
 [[next68k]]	|m68k		|NeXT 68k 'black' hardware						|[9.1](http://www.netbsd.org/releases/formal-9/)
 [[ofppc]]	|powerpc	|Generic OpenFirmware compliant PowerPC machines			|[9.1](http://www.netbsd.org/releases/formal-9/)

Open Developers Conference 2020 Online NetBSD BoF:Youtube video archive
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- wikisrc/users/jun.mdwn	23 Dec 2020 20:43:29 -0000	1.36
+++ wikisrc/users/jun.mdwn	23 Dec 2020 23:01:55 -0000	1.37
@@ -32,7 +32,7 @@
 ## Open Developers Conference 2020 Online NetBSD BoF
 - 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- YoutubeLive [[https://www.youtube.com/watch?v=dmP_FfboxaA]] 
 - [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
 - broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
 - [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]

Open Source Conference 2021 Online/Osaka NetBSD BoF 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9)
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- wikisrc/users/jun.mdwn	22 Dec 2020 01:38:50 -0000	1.35
+++ wikisrc/users/jun.mdwn	23 Dec 2020 20:43:29 -0000	1.36
@@ -3,7 +3,7 @@
 [[2020]]
 
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
-- 2021 Jan.30 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- 2021 Jan.30 Sat 10:00-10:45 JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 

move past:Open Developers Conference 2020 Online NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- wikisrc/users/jun.mdwn	17 Dec 2020 06:50:29 -0000	1.34
+++ wikisrc/users/jun.mdwn	22 Dec 2020 01:38:50 -0000	1.35
@@ -2,13 +2,6 @@
 
 [[2020]]
 
-## Open Developers Conference 2020 Online NetBSD BoF
-- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
-- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
-- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
-
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
 - 2021 Jan.30 Sat XX:XX-XX:XX JST (UTC+9) TBD
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
@@ -36,6 +29,16 @@
 
 ##Past Events
 
+## Open Developers Conference 2020 Online NetBSD BoF
+- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
+- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/ODC2020.pdf]]
+- [[https://togetter.com/li/1637624]]
+
+
 ## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
 - 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]

The ic_mgtq mbuf queue is gone, no need for special handling in drivers
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	15 Nov 2020 19:18:24 -0000	1.8
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	20 Dec 2020 12:57:36 -0000	1.9
@@ -297,9 +297,7 @@
    `ic->ic_curchan`.
 
  * The start function does not need a `struct ifnet *ifp` any more,
-   but can use a softc or `struct ieee80211com *ic` instead. It is
-   supposed to send management frames (from ic->ic_mgtq) first, then
-   everything in the device sc_sendq (see above).
+   but can use a softc or `struct ieee80211com *ic` instead.
 
  * Typicall generic "media change" and "status" functions will
    be used: `ieee80211_media_change` and `ieee80211_media_status`.

connpass: Open Source Conference 2021 Online/Spring NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- wikisrc/users/jun.mdwn	16 Dec 2020 05:58:07 -0000	1.33
+++ wikisrc/users/jun.mdwn	17 Dec 2020 06:50:29 -0000	1.34
@@ -16,7 +16,7 @@
 
 ## Open Source Conference 2021 Online/Spring NetBSD BoF
 - 2021 Mar.5-6 Sat XX:XX-XX:XX JST (UTC+9) TBD
-- Join meeting with ZOOM/YoutubeLive 
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/196661/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
 ## Open Source Conference 2021 Online/Nagoya NetBSD BoF

Open Source Conference 2021 Online/Nagoya Hokkaido Kyoto
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- wikisrc/users/jun.mdwn	3 Dec 2020 01:45:53 -0000	1.32
+++ wikisrc/users/jun.mdwn	16 Dec 2020 05:58:07 -0000	1.33
@@ -19,6 +19,21 @@
 - Join meeting with ZOOM/YoutubeLive 
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
+## Open Source Conference 2021 Online/Nagoya NetBSD BoF
+- 2021 Jun.5 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- Join meeting with ZOOM/YoutubeLive 
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+
+## Open Source Conference 2021 Online/Hokkaido NetBSD BoF
+- 2021 Jun.26 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- Join meeting with ZOOM/YoutubeLive 
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+
+## Open Source Conference 2021 Online/Kyoto NetBSD BoF
+- 2021 Jul-Aug XX Sat XX:XX-XX:XX JST (UTC+9) TBD
+- Join meeting with ZOOM/YoutubeLive 
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+
 ##Past Events
 
 ## Open Source Conference 2020 Online/Fukuoka NetBSD BoF

Youtube archive link: Open Source Conference 2020 Online/Fukuoka NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- wikisrc/users/jun.mdwn	2 Dec 2020 05:34:10 -0000	1.31
+++ wikisrc/users/jun.mdwn	3 Dec 2020 01:45:53 -0000	1.32
@@ -24,7 +24,7 @@
 ## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
 - 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- YoutubeLive [[https://www.youtube.com/watch?v=7QLbLWbJzw4]] 
 - [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
 - [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
 - [[https://togetter.com/li/1627360]]

Next: 2020 Dec.19 Open Developers Conference 2020 Online NetBSD BoF
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- wikisrc/users/jun.mdwn	27 Nov 2020 08:50:20 -0000	1.30
+++ wikisrc/users/jun.mdwn	2 Dec 2020 05:34:10 -0000	1.31
@@ -2,14 +2,6 @@
 
 [[2020]]
 
-## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
-- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
-- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
-- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
-- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
-- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
-- [[https://togetter.com/li/1627360]]
-
 ## Open Developers Conference 2020 Online NetBSD BoF
 - 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
@@ -29,6 +21,14 @@
 
 ##Past Events
 
+## Open Source Conference 2020 Online/Fukuoka NetBSD BoF
+- 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9)
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
+- [[https://togetter.com/li/1627360]]
+
 ### Kansai Open Forum 2020 BSD BoF
 - 2020 Nov.7 Sat 15:00-15:50 JST (UTC+9)
 - Join meeting with Jitsi Meet,notify me to get confrence URL.

Change section order at nia's request.
Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -r1.100 -r1.101
--- wikisrc/ports/evbarm.mdwn	30 Nov 2020 20:30:52 -0000	1.100
+++ wikisrc/ports/evbarm.mdwn	30 Nov 2020 22:05:21 -0000	1.101
@@ -67,6 +67,10 @@
 See the [[NetBSD/evbarm under QEMU|qemu_arm]] page for instructions on how to get started with QEMU.
 """
 additional="""
+### armbsd.org builds
+
+NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](https://www.armbsd.org/)   In addition to the standard build, these images have board-specific U-Boot contents.  See also /usr/pkgsrc/sysutils/u-boot*.
+
 ### SSH configuration
 
 The default configuration will connect to the local network via DHCP and
@@ -81,10 +85,6 @@
 See [creds_msdos(8)](https://man.NetBSD.org/creds_msdos.8) for
 additional configuration options.
 
-### armbsd.org builds
-
-NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](https://www.armbsd.org/)   In addition to the standard build, these images have board-specific U-Boot contents.  See also /usr/pkgsrc/sysutils/u-boot*.
-
 ### anita
 
 anita can be used to test builds.  (In addition to anita, install qemu and dtb-arm-vexpress from pkgsrc.)   The release subdirectory should follow the naming convention on the autobuild cluster, used below.

Remove stat-cache instructions too, unneeded
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 20:23:33 -0000	1.6
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 21:06:29 -0000	1.7
@@ -14,19 +14,7 @@
 
     # cp /usr/pkg/share/examples/rc.d/lighttpd /etc/rc.d
 
-And set `lighttpd=YES` in `/etc/rc.conf`.
-
-
-## Configuration
-
-If using `mod_webdav`, consider setting
-
-    server.stat-cache-engine = "kqueue"
-
-
-## Testing the setup
-
-You can start the webserver with:
+And set `lighttpd=YES` in `/etc/rc.conf`. Then start the webserver with:
 
     /etc/rc.d/lighttpd start
 

Restore ssh configuration section.
nia says this was unintentionally removed in an earlier change.
Members: 
	ports/evbarm.mdwn:1.99->1.100 

Index: wikisrc/ports/evbarm.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/evbarm.mdwn,v
retrieving revision 1.99
retrieving revision 1.100
diff -u -r1.99 -r1.100
--- wikisrc/ports/evbarm.mdwn	20 Oct 2020 21:26:01 -0000	1.99
+++ wikisrc/ports/evbarm.mdwn	30 Nov 2020 20:30:52 -0000	1.100
@@ -67,6 +67,20 @@
 See the [[NetBSD/evbarm under QEMU|qemu_arm]] page for instructions on how to get started with QEMU.
 """
 additional="""
+### SSH configuration
+
+The default configuration will connect to the local network via DHCP and
+run an SSH server.
+In order to use the SSH server, we must configure users.
+This can be done by writing to the SD card's MS-DOS partition.
+
+Create a creds.txt file and use:
+
+           useradd user password
+
+See [creds_msdos(8)](https://man.NetBSD.org/creds_msdos.8) for
+additional configuration options.
+
 ### armbsd.org builds
 
 NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](https://www.armbsd.org/)   In addition to the standard build, these images have board-specific U-Boot contents.  See also /usr/pkgsrc/sysutils/u-boot*.

lighttpd event-handler is kqueue already by default. Document when to
set kqueue for stat-cache-engine. Agreed by gps on #lighttpd.
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:59:31 -0000	1.5
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 20:23:33 -0000	1.6
@@ -19,10 +19,9 @@
 
 ## Configuration
 
-Enable kqueue:
+If using `mod_webdav`, consider setting
 
-    server.event-handler        = "kqueue"
-    server.stat-cache-engine    = "kqueue"
+    server.stat-cache-engine = "kqueue"
 
 
 ## Testing the setup

Just regular high performance going on here.
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:54:47 -0000	1.4
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:59:31 -0000	1.5
@@ -2,10 +2,6 @@
 
 [[!toc]]
 
-## Prelude
-
-How to deploy a high performance webserver using NetBSD and Lighttpd.
-
 ## Installation
 
 Via `pkgin` or `pkg_add` for platforms with binary packages available, or via pkgsrc thus:
@@ -37,15 +33,14 @@
 
 Check your logs if you encounter any problem.
 
-## Setting up authentication
 
-### Directory server
+## Adding LDAP authentication
 
 We will use OpenLdap.
 
 First of all deploy a working ldap server, and populate it with the the users. For more information on this, read [[OpenLDAP Authentication on NetBSD|tutorials/openldap_authentication_on_netbsd]].
 
-Be sure to load mod_auth and include the following in your lighttpd.conf file:
+Be sure to load `mod_auth` and include the following in your `lighttpd.conf`:
 
     # ldap authentication
     auth.backend               = "ldap"

Remove funky whitespace (NFCI)
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:46:30 -0000	1.3
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:54:47 -0000	1.4
@@ -2,60 +2,58 @@
 
 [[!toc]]
 
-##  Prelude 
+## Prelude
 
-How to deploy a high performance webserver using NetBSD and Lighttpd. 
+How to deploy a high performance webserver using NetBSD and Lighttpd.
 
-##  Installation 
+## Installation
+
+Via `pkgin` or `pkg_add` for platforms with binary packages available, or via pkgsrc thus:
 
-Via `pkgin` or `pkg_add` for platforms with binary packages available, or via pkgsrc thus: 
-    
     $ cd /usr/pkgsrc/www/lighttpd
     $ make install clean clean-depends
 
 
 If you don’t have `PKG_RCD_SCRIPTS=yes` set, manually install the provided rc.d script:
-    
+
     # cp /usr/pkg/share/examples/rc.d/lighttpd /etc/rc.d
 
 And set `lighttpd=YES` in `/etc/rc.conf`.
-    
 
-##  Configuration     
 
-Enable kqueue: 
-    
-    server.event-handler        = "kqueue"    
+## Configuration
+
+Enable kqueue:
+
+    server.event-handler        = "kqueue"
     server.stat-cache-engine    = "kqueue"
-    
 
-##  Testing the setup 
 
-You can start the webserver with: 
-    
+## Testing the setup
+
+You can start the webserver with:
+
     /etc/rc.d/lighttpd start
-    
 
-Check your logs if you encounter any problem. 
+Check your logs if you encounter any problem.
 
-##  Setting up authentication 
+## Setting up authentication
 
-###  Directory server 
+### Directory server
 
-We will use OpenLdap. 
+We will use OpenLdap.
 
-First of all deploy a working ldap server, and populate it with the the users. For more information on this, read [[OpenLDAP Authentication on NetBSD|tutorials/openldap_authentication_on_netbsd]]. 
+First of all deploy a working ldap server, and populate it with the the users. For more information on this, read [[OpenLDAP Authentication on NetBSD|tutorials/openldap_authentication_on_netbsd]].
+
+Be sure to load mod_auth and include the following in your lighttpd.conf file:
 
-Be sure to load mod_auth and include the following in your lighttpd.conf file: 
-    
-    
     # ldap authentication
     auth.backend               = "ldap"
-     
+    
     auth.backend.ldap.hostname = "grimnismal.local"
     auth.backend.ldap.base-dn  = "dc=grimnismal,dc=local"
     auth.backend.ldap.filter   = "(uid=$)"
-     
+    
     auth.backend.ldap.bind-dn  = "cn=Manager,dc=grimnismal,dc=local"
     
     # passwd for bind-dn, separated for security reasons
@@ -63,7 +61,7 @@
     # It must NOT be world readable!
     #
     include "ldapsecret"
-     
+    
     auth.require               = ( "/server-status" =>
                                    (
                                      "method"  => "basic",
@@ -72,10 +70,8 @@
                                    ),
                                    "/server-config" =>
                                    (
-                                     "method"  => "basic",      
+                                     "method"  => "basic",    
                                      "realm"   => "Staff only page",
-                                     "require" => "valid-user"  
+                                     "require" => "valid-user"
                                    )
                                  )
-    
-

Remove more unneeded manual steps
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 17:26:23 -0000	1.2
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 18:46:30 -0000	1.3
@@ -21,29 +21,7 @@
 And set `lighttpd=YES` in `/etc/rc.conf`.
     
 
-##  Configuration 
-
-Set the docroot whereever you want: 
-    
-    server.document-root        = "/srv/lighttpd/htdocs"
-    
-
-Set the default location for logs: 
-    
-    server.errorlog             = "/var/log/lighttpd/error.log"
-    accesslog.filename          = "/var/log/lighttpd/access.log"
-    
-
-You need to create the directory /var/log/lighttpd with proper permissions: 
-    
-    # install -d -o lighttpd -g lighttpd /var/log/lighttpd
-    
-
-Let's use the user we have created for lighttpd: 
-    
-    server.username            = "lighttpd"
-    server.groupname           = "lighttpd"
-    
+##  Configuration     
 
 Enable kqueue: 
     

Remove FAM, gamin, other outdated advice as suggested by gps on #lighttpd
Index: wikisrc/tutorials/lighttpd_on_netbsd.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/tutorials/lighttpd_on_netbsd.mdwn,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- wikisrc/tutorials/lighttpd_on_netbsd.mdwn	27 Apr 2019 20:19:32 -0000	1.1
+++ wikisrc/tutorials/lighttpd_on_netbsd.mdwn	30 Nov 2020 17:26:23 -0000	1.2
@@ -8,37 +8,17 @@
 
 ##  Installation 
 
-We will install it from pkgsrc because we need some fetures which are not enabled in the binary. 
-
-First of all, let's use gamin as the default file alteration monitor instead of fam: 
-    
-    # FAM_DEFAULT=gamin
+Via `pkgin` or `pkg_add` for platforms with binary packages available, or via pkgsrc thus: 
     
+    $ cd /usr/pkgsrc/www/lighttpd
+    $ make install clean clean-depends
 
-Of course you can stick with fam if you'd like. 
-
-After that we will enable fam support in lighty: 
-    
-    # echo PKG_OPTIONS.lighttpd=fam >> /etc/mk.conf
-    
-
-Now the good old magic words: 
-    
-    # cd /usr/pkgsrc/www/lighttpd/
-    # make install clean clean-depends
-    
 
-Install the rc.d files if you dont do that automaticaly: 
-    
-    # cp /usr/pkg/share/examples/rc.d/lighttpd /etc/rc.d/
+If you don’t have `PKG_RCD_SCRIPTS=yes` set, manually install the provided rc.d script:
     
+    # cp /usr/pkg/share/examples/rc.d/lighttpd /etc/rc.d
 
-##  The lighttpd user 
-
-By default there is no user created for lighttpd, thus you will have to create one: 
-    
-    # groupadd lighttpd
-    # useradd -s /sbin/nologin -g lighttpd lighttpd
+And set `lighttpd=YES` in `/etc/rc.conf`.
     
 
 ##  Configuration 
@@ -67,12 +47,8 @@
 
 Enable kqueue: 
     
-    server.event-handler        = "kqueue"
-    
-
-Enable fam: 
-    
-    server.stat-cache-engine    = "fam"
+    server.event-handler        = "kqueue"    
+    server.stat-cache-engine    = "kqueue"
     
 
 ##  Testing the setup 
@@ -106,7 +82,7 @@
     
     # passwd for bind-dn, separated for security reasons
     # contains: auth.backend.ldap.bind-pw  = "your-password"
-    # It must NOT be word readable!
+    # It must NOT be world readable!
     #
     include "ldapsecret"
      

sync global.css with htdocs.
Note that I removed a part that only affects wikisrc there, but it's a
no-op: apply same font-size and font to the searchform.
Members: 
	global.css:1.26->1.27 

Index: wikisrc/global.css
===================================================================
RCS file: /cvsroot/wikisrc/global.css,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- wikisrc/global.css	29 Jul 2020 18:23:35 -0000	1.26
+++ wikisrc/global.css	30 Nov 2020 08:03:37 -0000	1.27
@@ -1,44 +1,12 @@
-/* $NetBSD: global.css,v 1.26 2020/07/29 18:23:35 nia Exp $ */
+/* $NetBSD: global.css,v 1.27 2020/11/30 08:03:37 maya Exp $ */
 
 /* Remember to keep htdocs/globals.css and wikisrc/globals.css in sync. */
 /* See https://wiki.NetBSD.org/wiki/cvs/. */
 
 /* ##### Common Styles ##### */
 
-@font-face {
-  font-family: 'Source Sans Pro';
-  font-style: normal;
-  font-weight: 400;
-  font-display: auto;
-  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(https://www.NetBSD.org/fonts/SourceSansPro-Regular.ttf.woff2) format('woff2');
-}
-
-@font-face {
-  font-family: 'Source Sans Pro';
-  font-style: normal;
-  font-weight: 700;
-  font-display: auto;
-  src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(https://www.NetBSD.org/fonts/SourceSansPro-Bold.ttf.woff2) format('woff2');
-}
-
-@font-face {
-  font-family: 'Source Sans Pro';
-  font-style: normal;
-  font-weight: 600;
-  font-display: auto;
-  src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(https://www.NetBSD.org/fonts/SourceSansPro-Semibold.ttf.woff2) format('woff2');
-}
-
-@font-face {
-  font-family: 'Source Sans Pro';
-  font-style: italic;
-  font-weight: 700;
-  font-display: auto;
-  src: local('Source Sans Pro Bold Italic'), local('SourceSansPro-BoldItalic'), url(https://www.NetBSD.org/fonts/SourceSansPro-BoldIt.ttf.woff2) format('woff2');
-}
-
 body {
-  font-family: 'Source Sans Pro', 'Roboto', Tahoma, sans-serif;
+  font-family: sans-serif;
   font-size: 16px;
   letter-spacing: 0;
   color: #34495e;
@@ -49,11 +17,6 @@
   background-color: #d43900;
 }
 
-input#searchform {
-  font-family: 'Source Sans Pro', 'Roboto', Tahoma, sans-serif;
-  font-size: 16px;
-}
-
 acronym, .titleTip {
   border-bottom: 1px dotted rgb(61,92,122);
   cursor: help;

Appear more like an input box through BOX SHADOW MAGIC
Also more round corners, maybe?
Members: 
	local.css:1.19->1.20 

Index: wikisrc/local.css
===================================================================
RCS file: /cvsroot/wikisrc/local.css,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- wikisrc/local.css	28 Nov 2020 21:44:16 -0000	1.19
+++ wikisrc/local.css	28 Nov 2020 22:13:47 -0000	1.20
@@ -18,7 +18,7 @@
   float: none;
   display: flex;
   background-color: rgba(0,0,0,20%);
-  border-radius: 4px;
+  border-radius: 5px;
 }
 #searchform > form {
   display: flex;
@@ -34,10 +34,12 @@
   font-size: inherit;
   display: inline-block;
   flex-grow: 1;
+  border-radius: 5px 0 0 5px;
+  box-shadow: inset 0 2px 5px rgba(0,0,0,20%);
 }
 
 li#searchform:focus {
-  box-shadow: 0 0 5px #d43900;
+  box-shadow: inset 0 0 5px #d43900;
   border: border: 1px solid #d43900;
 }
 
@@ -46,7 +48,7 @@
   padding: 0.3em;
   border: 0px;
   background-color: rgba(0,0,0,5%);
-  border-radius: 0 2px 2px 0;
+  border-radius: 0 5px 5px 0;
   line-height: 5px;
 }
 

Focus border on more of the searhc element
Index: wikisrc/local.css
===================================================================
RCS file: /cvsroot/wikisrc/local.css,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- wikisrc/local.css	28 Nov 2020 19:17:42 -0000	1.18
+++ wikisrc/local.css	28 Nov 2020 21:44:16 -0000	1.19
@@ -36,7 +36,7 @@
   flex-grow: 1;
 }
 
-input:focus#searchbox {
+li#searchform:focus {
   box-shadow: 0 0 5px #d43900;
   border: border: 1px solid #d43900;
 }

Round borders on submit to look more "button-y"
use background color rather than borders so this stands out.
Use more margin from rest of menu to stand out.
Index: wikisrc/local.css
===================================================================
RCS file: /cvsroot/wikisrc/local.css,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- wikisrc/local.css	28 Jul 2020 09:11:19 -0000	1.17
+++ wikisrc/local.css	28 Nov 2020 19:17:42 -0000	1.18
@@ -14,8 +14,11 @@
   margin: 0; /* need for IE Mac */
   text-align: right; /* need for IE Mac */
   margin-left: auto;
+  margin-bottom: 1.5em;
   float: none;
   display: flex;
+  background-color: rgba(0,0,0,20%);
+  border-radius: 4px;
 }
 #searchform > form {
   display: flex;
@@ -41,7 +44,10 @@
 #searchform input[type=submit] {
   display: inline-block;
   padding: 0.3em;
-  border: 1px solid #d4d4d4;
+  border: 0px;
+  background-color: rgba(0,0,0,5%);
+  border-radius: 0 2px 2px 0;
+  line-height: 5px;
 }
 
 #navBar > ul > li:nth-last-child(2) {
@@ -54,7 +60,7 @@
   background-image: none !important;
   background-color: #eeeeee;
   color: #555555;
-  border: 1px solid #d4d4d4;
+  border: 0px;
 }
 
 .actions {

Open Developers Conference 2020 Online NetBSD BoF 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9)
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- wikisrc/users/jun.mdwn	27 Nov 2020 08:34:58 -0000	1.29
+++ wikisrc/users/jun.mdwn	27 Nov 2020 08:50:20 -0000	1.30
@@ -11,9 +11,11 @@
 - [[https://togetter.com/li/1627360]]
 
 ## Open Developers Conference 2020 Online NetBSD BoF
-- 2020 Dec.19 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- 2020 Dec.19 Sat 14:00-14:45 JST (UTC+9) 
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/190996/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+- [[https://register.ospn.jp/odc2020-online/modules/eventrsv/1.html]]
+- broadcasting from [[http://www.nagoya.bug.gr.jp/]] Nagoya *BSD Users' Group 2020 Dec. meeting room.
 
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
 - 2021 Jan.30 Sat XX:XX-XX:XX JST (UTC+9) TBD

Open Source Conference 2020 Online/Fukuoka NetBSD BoF - 2020 Nov.28 Sat 10:00-10:45 JST (UTC+9) add Guide and togetter links
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- wikisrc/users/jun.mdwn	25 Nov 2020 08:52:47 -0000	1.28
+++ wikisrc/users/jun.mdwn	27 Nov 2020 08:34:58 -0000	1.29
@@ -7,6 +7,8 @@
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/183864/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 - [[https://register.ospn.jp/osc2020-online-fukuoka/modules/eventrsv/1.html]]
+- [[http://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2020fukuoka.pdf]]
+- [[https://togetter.com/li/1627360]]
 
 ## Open Developers Conference 2020 Online NetBSD BoF
 - 2020 Dec.19 Sat XX:XX-XX:XX JST (UTC+9) TBD

Open Source Conference 2021 Online/Spring NetBSD BoF 2021 Mar.5-6
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- wikisrc/users/jun.mdwn	18 Nov 2020 09:00:55 -0000	1.27
+++ wikisrc/users/jun.mdwn	25 Nov 2020 08:52:47 -0000	1.28
@@ -18,6 +18,11 @@
 - Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
+## Open Source Conference 2021 Online/Spring NetBSD BoF
+- 2021 Mar.5-6 Sat XX:XX-XX:XX JST (UTC+9) TBD
+- Join meeting with ZOOM/YoutubeLive 
+- YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
+
 ##Past Events
 
 ### Kansai Open Forum 2020 BSD BoF

pkgsrc.mdwn: try to clarify which resource is where
Index: wikisrc/pkgsrc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc.mdwn,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- wikisrc/pkgsrc.mdwn	23 Nov 2020 01:16:41 -0000	1.11
+++ wikisrc/pkgsrc.mdwn	23 Nov 2020 01:29:58 -0000	1.12
@@ -2,12 +2,14 @@
 
 This wiki page attempts to organize information in the NetBSD wiki about pkgsrc.
 
-## Other documentation
+The official website for the pkgsrc project can be found at
+[pkgsrc.org](//pkgsrc.org).
 
-The canonical location for pkgsrc documentation is the pkgsrc guide,
-located in [pkgsrc/doc/guide/](//cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/doc/guide/).
+## Other documentation
 
-[pkgsrc.org](//pkgsrc.org) ([the guide](//www.netbsd.org/docs/pkgsrc/))
+The canonical location for pkgsrc documentation is the [pkgsrc
+guide](//www.netbsd.org/docs/pkgsrc/) (located in
+[pkgsrc/doc/guide/](//cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/doc/guide/)).
 
 ## Compilers and compilation options
 

pkgsrc.mdwn: fix the links to the guide
Index: wikisrc/pkgsrc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc.mdwn,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- wikisrc/pkgsrc.mdwn	23 Nov 2020 01:09:18 -0000	1.10
+++ wikisrc/pkgsrc.mdwn	23 Nov 2020 01:16:41 -0000	1.11
@@ -5,9 +5,9 @@
 ## Other documentation
 
 The canonical location for pkgsrc documentation is the pkgsrc guide,
-located in pkgsrc/doc/pkgsrc.*.
+located in [pkgsrc/doc/guide/](//cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/doc/guide/).
 
-[pkgsrc.org](//pkgsrc.org)
+[pkgsrc.org](//pkgsrc.org) ([the guide](//www.netbsd.org/docs/pkgsrc/))
 
 ## Compilers and compilation options
 

pkgsrc.mdwn: punctuation
Index: wikisrc/pkgsrc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc.mdwn,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- wikisrc/pkgsrc.mdwn	23 Nov 2020 01:08:05 -0000	1.9
+++ wikisrc/pkgsrc.mdwn	23 Nov 2020 01:09:18 -0000	1.10
@@ -15,7 +15,7 @@
 
  - [GCC](gcc/)
 
-pkgsrc supports a [number of exploit mitigation techniques](hardening/)
+pkgsrc supports a [number of exploit mitigation techniques](hardening/).
 
 ## Unordered list of pkgsrc tutorials
 

pkgsrc.mdwn: fix the link to pkgsrc.org
My bad, I thought I saw it used this way somewhere else.
Members: 
	pkgsrc.mdwn:1.8->1.9 

Index: wikisrc/pkgsrc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc.mdwn,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- wikisrc/pkgsrc.mdwn	23 Nov 2020 01:05:41 -0000	1.8
+++ wikisrc/pkgsrc.mdwn	23 Nov 2020 01:08:05 -0000	1.9
@@ -7,7 +7,7 @@
 The canonical location for pkgsrc documentation is the pkgsrc guide,
 located in pkgsrc/doc/pkgsrc.*.
 
-<//pkgsrc.org>
+[pkgsrc.org](//pkgsrc.org)
 
 ## Compilers and compilation options
 

pkgsrc.mdwn: do not downgrade links to plain HTTP
Index: wikisrc/pkgsrc.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/pkgsrc.mdwn	30 Dec 2017 17:38:29 -0000	1.7
+++ wikisrc/pkgsrc.mdwn	23 Nov 2020 01:05:41 -0000	1.8
@@ -7,7 +7,7 @@
 The canonical location for pkgsrc documentation is the pkgsrc guide,
 located in pkgsrc/doc/pkgsrc.*.
 
-<http://pkgsrc.org>
+<//pkgsrc.org>
 
 ## Compilers and compilation options
 

xen: add note about kvm
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.188
retrieving revision 1.189
diff -u -r1.188 -r1.189
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:36:35 -0000	1.188
+++ wikisrc/ports/xen/howto.mdwn	19 Nov 2020 13:55:58 -0000	1.189
@@ -674,9 +674,20 @@
         cd*     at scsibus? target ? lun ?      # SCSI CD-ROM drives
 
 
-# Specific Issues
+# Miscellaneous Information
 
-## domU
+## Nesting under Linux KVM
+
+It is possible to run a Xen and a NetBSD dom0 under Linux KVM.  One
+can enable virtio in the dom0 for greater speed.
+
+## Other nesting
+
+In theory, any full emulation should be able to run Xen and a NetBSD
+dom0.  The HOWTO does not currently have information about Xen XVM
+mode, nvmm, qemu, Virtualbox, etc.
+
+## NetBSD 5 as domU
 
 [NetBSD 5 is known to panic.](http://mail-index.netbsd.org/port-xen/2018/04/17/msg009181.html)
 (However, NetBSD 5 systems should be updated to a supported version.)

Open Source Conference 2021 Online/Osaka NetBSD BoF https://ospn.connpass.com/event/185429/
Index: wikisrc/users/jun.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/users/jun.mdwn,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- wikisrc/users/jun.mdwn	13 Nov 2020 04:38:10 -0000	1.26
+++ wikisrc/users/jun.mdwn	18 Nov 2020 09:00:55 -0000	1.27
@@ -15,7 +15,7 @@
 
 ## Open Source Conference 2021 Online/Osaka NetBSD BoF
 - 2021 Jan.30 Sat XX:XX-XX:XX JST (UTC+9) TBD
-- Join meeting with ZOOM/YoutubeLive
+- Join meeting with ZOOM/YoutubeLive [[https://ospn.connpass.com/event/185429/]]
 - YoutubeLive [[https://www.youtube.com/c/OSPNjp]] 
 
 ##Past Events

mention USE_PKGLOCALEDIR
Index: wikisrc/pkgsrc/how_to_convert_autotools_to_meson.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/pkgsrc/how_to_convert_autotools_to_meson.mdwn,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- wikisrc/pkgsrc/how_to_convert_autotools_to_meson.mdwn	10 Nov 2020 19:41:22 -0000	1.4
+++ wikisrc/pkgsrc/how_to_convert_autotools_to_meson.mdwn	17 Nov 2020 11:31:40 -0000	1.5
@@ -14,12 +14,15 @@
 
 You won't need the following, so delete them:
 
-	GNU_CONFIGURE=	yes
-	USE_LIBTOOL=	yes
+	GNU_CONFIGURE=		yes
+	USE_LIBTOOL=		yes
+	USE_PKGLOCALEDIR=	yes
 
 Neither meson or cmake (another increasingly popular alternative) uses
 libtool to make shared libraries.
 
+`USE_PKGLOCALEDIR` is also actively harmful here.
+
 You will need the following:
 
 	.include "../../devel/meson/build.mk"

Undo previous - simply not true
Index: wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	15 Nov 2020 13:39:31 -0000	1.7
+++ wikisrc/Converting_drivers_to_the_new_wifi_stack.mdwn	15 Nov 2020 19:18:24 -0000	1.8
@@ -204,13 +204,6 @@
     ic->ic_raw_xmit = urtwn_raw_xmit;
     ```
 
- * There is no mbuf context (pointing at a struct ieee80211_node) associated
-   with the mbuf headers any more - remove all M_GETCTX() and all M_CLEARCTX()
-   from the driver code (probably found in the driver's start() function, which
-   is now replaced by the ic_transmit and ic_raw_xmit callbacks). Typical trap:
-   some code checks for changing conditions and calls the driver's start function
-   directly to get transmit going.
-
  * detach does not deal with any interfaces any more, remove all traces
    of `struct ifnet *ifp`.
 

xen: netbsd domU tweaks
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.187
retrieving revision 1.188
diff -u -r1.187 -r1.188
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:31:47 -0000	1.187
+++ wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:36:35 -0000	1.188
@@ -459,14 +459,14 @@
 xendomains="domU-netbsd domU-linux"
 """]]
 
-# Creating a domU
+# domU setup for specific systems
 
 Creating domUs is almost entirely independent of operating system.  We
-have already presented the basics of config files.  Note that you must
-have already completed the dom0 setup so that "xl list" works.
+have already presented the basics of config files in the previous system.
 
-## Creating a NetBSD PV domU
+Of course, this section presumes that you have a working dom0.
 
+## Creating a NetBSD PV domU
 
 See the earlier config file, and adjust memory.  Decide on how much
 storage you will provide, and prepare it (file or LVM).
@@ -475,14 +475,14 @@
 file should be present in the domU as /netbsd so that tools like
 savecore(8) can work.   (This is helpful but not necessary.)
 
-The kernel must be specifically for Xen and for use as a domU.  The
-i386 and amd64 provide the following kernels:
+The kernel must be specifically built for Xen, to use PV interfacesas
+a domU.  NetBSD release builds provide the following kernels:
 
         i386 XEN3PAE_DOMU
         amd64 XEN3_DOMU
 
 This will boot NetBSD, but this is not that useful if the disk is
-empty.  One approach is to unpack sets onto the disk outside of xen
+empty.  One approach is to unpack sets onto the disk outside of Xen
 (by mounting it, just as you would prepare a physical disk for a
 system you can't run the installer on).
 
@@ -502,11 +502,11 @@
 After booting the domain, the option to install via CDROM may be
 selected.  The CDROM device should be changed to `xbd1d`.
 
-Once done installing, "halt -p" the new domain (don't reboot or halt,
+Once done installing, "halt -p" the new domain (don't reboot or halt:
 it would reload the INSTALL_XEN3_DOMU kernel even if you changed the
 config file), switch the config file back to the XEN3_DOMU kernel,
 and start the new domain again. Now it should be able to use "root on
-xbd0a" and you should have a, functional NetBSD domU.
+xbd0a" and you should have a functional NetBSD domU.
 
 TODO: check if this is still accurate.
 When the new domain is booting you'll see some warnings about *wscons*

xen: minor rototilling
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.186
retrieving revision 1.187
diff -u -r1.186 -r1.187
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:09:31 -0000	1.186
+++ wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:31:47 -0000	1.187
@@ -115,7 +115,7 @@
 Note: NetBSD support is called XEN3.  However, it does support Xen 4,
 because the hypercall interface has remained identical.
 
-# Creating a dom0
+# Creating a NetBSD dom0
 
 In order to install a NetBSD as a dom0, one must first install a normal
 NetBSD system, and then pivot the install to a dom0 install by changing
@@ -133,7 +133,7 @@
 
 ## Installation of Xen
 
-Use the most recent version of Xen in pkgsrc, unless the DESCR says that it ss not suitable.
+Use the most recent version of Xen in pkgsrc, unless the DESCR says that it is not suitable.
 Therefore, choose 4.13.
 In the dom0, install xenkernel413 and xentools413 from pkgsrc.
 
@@ -159,7 +159,13 @@
 """]]
 
 This specifies that the dom0 should have 512MB of ram, leaving the rest
-to be allocated for domUs.  To use a serial console, use:
+to be allocated for domUs.
+
+NB: This says add, not replace, so that you will be able to boot a
+NetBSD kernel without Xen.  Once Xen boots ok, you may want to set it
+as default.
+
+To use a serial console, add settings as follows:
 
 [[!template id=filecontent name="/boot.cfg" text="""
 menu=Xen:load /netbsd-XEN3_DOM0.gz;multiboot /xen.gz dom0_mem=512M console=com1 com1=9600,8n1
@@ -190,11 +196,11 @@
 xencommons=YES
 """]]
 
+\todo Recommend for/against xen-watchdog.
+
 Now, reboot so that you are running a DOM0 kernel under Xen, rather
 than GENERIC without Xen.
 
-TODO: Recommend for/against xen-watchdog.
-
 Once the reboot is done, use `xl` to inspect Xen's boot messages,
 available resources, and running domains.  For example:
 
@@ -221,16 +227,7 @@
 make this work, one should not expect to be able to restart xenstored
 (and thus xencommons).  There is currently no reason to expect that
 this will get fixed any time soon.
-
-## anita (for testing NetBSD)
-
-With the setup so far, one should be able to run
-anita (see pkgsrc/misc/py-anita) to test NetBSD releases, by doing (as
-root, because anita must create a domU):
-
-[[!template id=programlisting text="""
-anita --vmm=xl test file:///usr/obj/i386/
-"""]]
+\todo Confirm if this is still true in 2020.
 
 ## Xen-specific NetBSD issues
 
@@ -246,6 +243,16 @@
 bug, users should be aware of this and can simply add missing config
 items if desired.
 
+Finally, there have been occasional reports of trouble with X11
+servers in NetBSD as a dom0.
+
+## Updating Xen in a dom0
+
+Basically, update the xenkernel and xentools packages and copy the new
+Xen kernel into place, and reboot.  This procedure should be usable to
+update to a new Xen release, but the reader is reminded that having a
+non-Xen boot methods was recommended earlier.
+
 ## Updating NetBSD in a dom0
 
 This is just like updating NetBSD on bare hardware, assuming the new
@@ -256,7 +263,20 @@
 Note that one must update both the non-Xen kernel typically used for
 rescue purposes and the DOM0 kernel used with Xen.
 
-## Converting from grub to /boot
+## anita (for testing NetBSD)
+
+With a NetBSD dom0, even without any domUs, one should be able to run
+anita (see pkgsrc/misc/py-anita) to test NetBSD releases, by doing (as
+root, because anita must create a domU):
+
+[[!template id=programlisting text="""
+anita --vmm=xl test file:///usr/obj/i386/
+"""]]
+
+## Converting from grub to /boot (historical note)
+
+These instructions are provided only to help people using grub, which
+used to be the normal approach.
 
 These instructions were used to convert a system from
 grub to /boot.  The system was originally installed in February of
@@ -286,13 +306,7 @@
 timeout=30
 """]]
 
-## Upgrading Xen versions
-
-Minor version upgrades are trivial.  Just rebuild/replace the
-xenkernel version and copy the new xen.gz to `/` (where `/boot.cfg`
-references it), and reboot.
-
-#Unprivileged domains (domU)
+# Unprivileged domains (domU)
 
 This section describes general concepts about domUs.  It does not
 address specific domU operating systems or how to install them.  The
@@ -334,6 +348,8 @@
 dom0 on domain creation.  The system treats xbd0 as the boot device
 without needing explicit configuration.
 
+There is not type line; that implicitly defines a pv domU.
+
 By convention, domain config files are kept in `/usr/pkg/etc/xen`.  Note
 that "xl create" takes the name of a config file, while other commands
 take the name of a domain.
@@ -402,11 +418,7 @@
 than 4 total virtual disks at a time, run e.g. "./MAKEDEV vnd4" in the
 dom0.
 
-Note that NetBSD by default creates only xbd[0123].  If you need more
-virtual disks in a domU, run e.g. "./MAKEDEV xbd4" in the domU.
-
-Virtual Networking
-------------------
+## Virtual Networking
 
 Xen provides virtual Ethernets, each of which connects the dom0 and a
 domU.  For each virtual network, there is an interface "xvifN.M" in
@@ -438,8 +450,7 @@
 domain.  The interface in dom0 will use this address XOR'd with
 00:00:00:01:00:00.  Random MAC addresses are assigned if not given.
 
-Starting domains automatically
-------------------------------
+## Starting domains automatically
 
 To start domains `domU-netbsd` and `domU-linux` at boot and shut them
 down cleanly on dom0 shutdown, add the following in rc.conf:
@@ -454,8 +465,8 @@
 have already presented the basics of config files.  Note that you must
 have already completed the dom0 setup so that "xl list" works.
 
-Creating a NetBSD PV domU
---------------------------
+## Creating a NetBSD PV domU
+
 
 See the earlier config file, and adjust memory.  Decide on how much
 storage you will provide, and prepare it (file or LVM).
@@ -527,8 +538,10 @@
 obtained from the dom0, it is far more likely to be out of sync or
 missing with Xen.)
 
-Creating a Linux domU
----------------------
+Note that NetBSD by default creates only xbd[0123].  If you need more
+virtual disks in a domU, run e.g. "./MAKEDEV xbd4" in the domU.
+
+## Creating a Linux domU
 
 Creating unprivileged Linux domains isn't much different from
 unprivileged NetBSD domains, but there are some details to know.
@@ -582,15 +595,13 @@
 \todo Explain where the kernel comes from.
 
 
-Creating a Solaris domU
------------------------
+## Creating a Solaris domU
 
 See possibly outdated
 [Solaris domU instructions](/ports/xen/howto-solaris/).
 
 
-PCI passthrough: Using PCI devices in guest domains
----------------------------------------------------
+## PCI passthrough: Using PCI devices in guest domains
 
 NB: PCI passthrough only works on some Xen versions and as of 2020 it

(Diff truncated)
rototill to 4.13 from earlier as recommended
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.185
retrieving revision 1.186
diff -u -r1.185 -r1.186
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 14:59:54 -0000	1.185
+++ wikisrc/ports/xen/howto.mdwn	15 Nov 2020 15:09:31 -0000	1.186
@@ -27,6 +27,9 @@
 and how to deal with having a domU in a Xen environment run by someone
 else and/or not running NetBSD.
 
+There are many choices one can make; the HOWTO recommends the standard
+approach and limits discussion of alternatives in many cases.
+
 ## Guest Styles
 
 Xen supports different styles of guests.
@@ -126,16 +129,19 @@
 
 [Install NetBSD/amd64](/guide/inst/)
 just as you would if you were not using Xen.
+Therefore, use the most recent release, or a build from the most recent stable branch.
 
 ## Installation of Xen
 
-We will consider that you chose to use Xen 4.13, with NetBSD/amd64 as
-dom0. In the dom0, install xenkernel48 and xentools48 from pkgsrc.
+Use the most recent version of Xen in pkgsrc, unless the DESCR says that it ss not suitable.
+Therefore, choose 4.13.
+In the dom0, install xenkernel413 and xentools413 from pkgsrc.
 
-Once this is done, install the Xen kernel itself:
+Once this is done, copy the Xen kernel from where pkgsrc puts it to
+where the boot process will be able to find it:
 
 [[!template id=programlisting text="""
-# cp /usr/pkg/xen48-kernel/xen.gz /
+# cp -p /usr/pkg/xen413-kernel/xen.gz /
 """]]
 
 Then, place a NetBSD XEN3_DOM0 kernel in the `/` directory. Such kernel
@@ -143,7 +149,7 @@
 example at:
 
 [[!template id=programlisting text="""
-ftp.netbsd.org/pub/NetBSD/NetBSD-8.0/amd64/binary/kernel/netbsd-XEN3_DOM0.gz
+ftp.netbsd.org/pub/NetBSD/NetBSD-9.1/amd64/binary/kernel/netbsd-XEN3_DOM0.gz
 """]]
 
 Add a line to /boot.cfg to boot Xen:
@@ -173,13 +179,12 @@
 and other than dom0 memory and max_vcpus, they are generally not
 necessary.
 
-Copy the boot scripts into `/etc/rc.d`:
-
-[[!template id=programlisting text="""
-# cp /usr/pkg/share/examples/rc.d/xen* /etc/rc.d/
-"""]]
+Ensure that the boot scripts installed in
+`/usr/pkg/share/examples/rc.d` are in `/etc/rc.d`, either because you
+have `PKG_RCD_SCRIPTS=yes`, or manually.  (This is not special to Xen,
+but a normal part of pkgsrc usage.)
 
-Enable `xencommons`:
+Set `xencommons=YES` in rc.conf:
 
 [[!template id=filecontent name="/etc/rc.conf" text="""
 xencommons=YES

xen: move netbsd info to netbsd section
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.184
retrieving revision 1.185
diff -u -r1.184 -r1.185
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 14:56:44 -0000	1.184
+++ wikisrc/ports/xen/howto.mdwn	15 Nov 2020 14:59:54 -0000	1.185
@@ -92,17 +92,6 @@
 
 See also the [Xen Security Advisory page](http://xenbits.xen.org/xsa/).
 
-Multiprocessor (SMP) support in NetBSD differs depending on the domain:
-
-[[!table data="""
-Domain		|Supports SMP
-dom0		|No
-domU		|Yes
-"""]]
-
-Note: NetBSD support is called XEN3.  However, it does support Xen 4,
-because the hypercall interface has remained identical.
-
 Older Xen had a python-based management tool called xm, now replaced
 by xl.
 
@@ -115,6 +104,14 @@
 
 Support for PVHVM and PVH is available only in NetBSD-current.
 
+NetBSD as a dom0 does not run SMP, because some drivers are not yet
+safe for this.  \todo Link to more information about what needs work.
+
+NetBSD, when run as a domU, can and does typically run SMP.
+
+Note: NetBSD support is called XEN3.  However, it does support Xen 4,
+because the hypercall interface has remained identical.
+
 # Creating a dom0
 
 In order to install a NetBSD as a dom0, one must first install a normal

xen: purge xm
Index: wikisrc/ports/xen/howto.mdwn
===================================================================
RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v
retrieving revision 1.183
retrieving revision 1.184
diff -u -r1.183 -r1.184
--- wikisrc/ports/xen/howto.mdwn	15 Nov 2020 14:52:16 -0000	1.183
+++ wikisrc/ports/xen/howto.mdwn	15 Nov 2020 14:56:44 -0000	1.184
@@ -85,9 +85,9 @@
 Versions available in pkgsrc:
 
 [[!table data="""
-Xen Version	|Package Name	|Xen CPU Support	|xm?	|EOL'ed By Upstream
-4.11		|xenkernel411	|x86_64			|	|No
-4.13		|xenkernel413	|x86_64			|	|No
+Xen Version	|Package Name	|Xen CPU Support	|EOL'ed By Upstream
+4.11		|xenkernel411	|x86_64			|No
+4.13		|xenkernel413	|x86_64			|No
 """]]
 
 See also the [Xen Security Advisory page](http://xenbits.xen.org/xsa/).
@@ -514,7 +514,8 @@
         powerd=YES
 
 in rc.conf. This way, the domain will be properly shut down if
-`xm shutdown -R` or `xm shutdown -H` is used on the dom0.
+`xl shutdown -R` or `xl shutdown -H` is used on the dom0.
+\todo Check the translation to xl.
 
 It is not strictly necessary to have a kernel (as /netbsd) in the domU
 file system.  However, various programs (e.g. netstat) will use that