OpenBSD src changes summary for 2017-03-19 to 2017-03-26 inclusive
==================================================================

Makefile.cross                          distrib/notes
distrib/sets                            etc/acme-client.conf
etc/examples/vm.conf                    etc/rc.d/spamd
gnu                                     lib/libc
lib/libcrypto                           lib/libskey
lib/libssl                              lib/libutil
regress/lib                             regress/sbin
regress/sys                             regress/usr.bin
regress/usr.sbin                        sbin/dhclient
sbin/fdisk                              sbin/ifconfig
sbin/iked                               sbin/route
share/man                               share/mk
share/zoneinfo                          sys/arch/amd64/amd64
sys/arch/amd64/include                  sys/arch/arm/arm
sys/arch/arm/cortex                     sys/arch/arm64/arm64
sys/arch/arm64/conf                     sys/arch/arm64/dev
sys/arch/arm64/include                  sys/arch/armv7/armv7
sys/arch/armv7/conf                     sys/arch/armv7/marvell
sys/arch/i386/i386                      sys/arch/luna88k/dev
sys/arch/luna88k/include                sys/arch/luna88k/luna88k
sys/arch/m88k/include                   sys/arch/m88k/m88k
sys/dev                                 sys/dev/fdt
sys/dev/pci                             sys/dev/pv
sys/dev/usb                             sys/kern
sys/net                                 sys/net80211
sys/netinet                             sys/netinet6
sys/ntfs                                usr.bin/aucat
usr.bin/cdio                            usr.bin/doas
usr.bin/mandoc                          usr.bin/patch
usr.bin/rup                             usr.bin/ssh
usr.bin/tail                            usr.bin/tmux
usr.sbin/acme-client                    usr.sbin/bgpd
usr.sbin/dhcpd                          usr.sbin/dhcrelay
usr.sbin/dhcrelay6                      usr.sbin/dvmrpd
usr.sbin/eigrpd                         usr.sbin/httpd
usr.sbin/ifstated                       usr.sbin/iscsid
usr.sbin/ldapd                          usr.sbin/ldpd
usr.sbin/makefs                         usr.sbin/npppd
usr.sbin/ntpd                           usr.sbin/ocspcheck
usr.sbin/ospf6d                         usr.sbin/ospfd
usr.sbin/pcidump                        usr.sbin/pkg_add
usr.sbin/relayd                         usr.sbin/ripd
usr.sbin/route6d                        usr.sbin/rtadvd
usr.sbin/sensorsd                       usr.sbin/slaacd
usr.sbin/slaacdctl                      usr.sbin/smtpd
usr.sbin/snmpd                          usr.sbin/switchd
usr.sbin/syslogd                        usr.sbin/vmctl
usr.sbin/vmd                            usr.sbin/ypldap

== Makefile.cross ==================================================== 01/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/Makefile.cross

Makefile.cross


  > Export CROSSDIR so that the two users (ld.so and binutils) of that
  > variable actually work correctly.  While there, adjust a bit for
  > consistency.
  > "nobody will complain if you break it ;)" kettenis@ (patrick@)

== distrib =========================================================== 02/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib

notes

  ~ arm64/contents                        

  > sync set sizes (jsg@)

  ~ arm64/hardware                        

  > mention Opteron A1100 systems (jsg@)

sets

  ~ lists/comp/mi                         

  > sync (tb@)

== etc =============================================================== 03/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc

acme-client.conf

  ~ acme-client.conf                      

  > Improve manpage and config file to show the more common use case.
  > from Nick Holland (nick AT holland-consulting DOT net)
  > ok jmc@ florian@ (benno@)

examples/vm.conf

  ~ examples/vm.conf                      

  > Boot using BIOS from /etc/firmware/vmm-bios by default.
  > Instead of using the internal "vmboot", VMs will now be booted using
  > the external BIOS firmware in /etc/firmware/vmm-bios (which is subject
  > to a LGPLv3 license).  Direct booting of OpenBSD kernels or
  > non-default BIOS images is still supported for now using the -b/boot
  > option that is replacing the -k/kernel option.
  > As requested by Theo, vmd(8) fails if neither the default BIOS is
  > found nor a kernel has been specified in the VM configuration.  The
  > "vmm" BIOS has to be installed using fw_update(1), which will be done
  > automatically in most cases where the OpenBSD can fetch it after
  > install/upgrade.
  > OK mlarkin@ (reyk@)

rc.d/spamd

  ~ rc.d/spamd                            

  > Don't check for spamd_black twice in rc_pre and rc_start; just do
  > everything
  > in rc_pre.
  > prodded by and ok jmc@, ok halex@ (ajacoutot@)

== gnu =============================================================== 04/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu

gnu

  ~ llvm/tools/lld/ELF/SymbolTable.cpp    

  > Work around a problem where linker-generated symbols are not properly
  > versioned and end up as local symbols despite being explicitly listed as
  > global in the version script.  This breaks out brk()/sbrk() implementation.
  > The diff is only a partial solution and unlikely to be accepted as-is
  > upstream.  We'll keep it as a local diff until a better solution is found.
  > ok guenther@ (kettenis@)

  ~ llvm/tools/lld/ELF/Driver.cpp         

  > Add "(compatible with GNU linkers)" to the lld version output to avoid
  > problems with configure scripts generated with libtool.m4 that would
  > otherwise have to be regenerated with a patched libtool.
  > Among other things this fixes the build of Mesa on arm64 with lld.
  > From lld svn revision 298532.  ok kettenis@ (jsg@)

  ~ llvm/tools/lld/ELF/DriverUtils.cpp    

  > Add "supported targets" in lld --help output to be compatible with what
  > libtool generated configure scripts expect.  Otherwise they might assume
  > shared libraries aren't supported.
  > From lld svn revisions 298568 and 298571.
  > Discussed with kettenis@ (jsg@)

== lib =============================================================== 05/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib

libc

  ~ arch/aarch64/sys/cerror.S             

  > Stop setting the second register; it's unnecessary on 64bit archs
  > ok patrick@ kettenis@ (guenther@)

  ~ arch/aarch64/gen/sigsetjmp.S          

  > Use the hidden aliases to avoid PLT entries for {,_}{set,long}jmp
  > Set the size of the sig{set,long}jmp symbols
  > testing help jsg@
  > ok kettenis@ (guenther@)

  ~ arch/aarch64/gen/fpgetround.c         ~ arch/aarch64/gen/fpsetround.c

  > Provide the necessary weak alias for fpgetround().  Delete the obsolete
  > __weak_alias() uses
  > problem noted by drahn@
  > ok kettenis@ (guenther@)

  ~ sys/mkdir.2                           

  > mkdir(2) and mkdirat(2) can also fail with EACCESS if write permission
  > is denied on the parent directory of the directory to be created.
  > From FreeBSD.  OK deraadt@ natano@ (millert@)

  ~ stdlib/Makefile.inc                   ~ stdlib/malloc.c

  > move recallocarray to malloc.c and
  > - use internal meta-data to do more consistency checking (especially with
  > option C)
  > - use cheap free if possible
  > ok deraadt@ (otto@)

  ~ stdlib/malloc.3                       

  > document new recallocarray diagnostic; zap a few diagnostics that should
  > never occur (otto@)

  ~ stdlib/malloc.c                       

  > add a helper function to print all pools #ifdef MALLOC_STATS
  > from David CARLIER (otto@)

  ~ stdlib/malloc.3                       

  > Stop enumeration all allocation functions, just say "allocation functions"
  > ok jmc@ deraadt@ (otto@)

  ~ sys/Makefile.inc                      

  > Use .file to convince 'as' to generate proper FILE symbols in the syscall
  > stubs that aren't actually in files, so that syspatch can figure out what
  > order the syscall stub objects are in the .so.  Use -P to suppress to #line
  > directives that would override that.  Tested with both gcc/gas and clang.
  > ok deraadt@ (guenther@)

libcrypto

  ~ man/ASN1_STRING_print_ex.3            

  > document ASN1_tag2str(3); from OpenSSL commit 9e183d22 (schwarze@)

  ~ man/BIO_new.3                         ~ man/Makefile
  + man/BIO_printf.3                      

  > OpenSSL documented the public function BIO_printf(3) (and friends)
  > in commit 2ca2e917.  Document it here, too, but do not use their
  > text.  Be more concise and more precise at the same time. (schwarze@)

  ~ man/EVP_DigestInit.3                  

  > minimal stub-quality documentation of EVP_MD_CTX_ctrl(3);
  > from Todd Short <tsh...@akamai.com> via OpenSSL commit 52ad5b60 (schwarze@)

  ~ man/RSA_generate_key.3                

  > complete description of RETURN VALUES;
  > from Alexander Koeppe via OpenSSL commit bb6c5e7f (schwarze@)

  ~ man/RSA_private_encrypt.3             

  > correct prototypes;
  > from Matt Caswell <m...@openssl.org>, OpenSSL commit b41f6b64 (schwarze@)

  ~ man/RSA_public_encrypt.3              

  > fix two more prototypes;
  > from Matt Caswell <m...@openssl.org>, OpenSSL commit b41f6b64 (schwarze@)

  ~ man/X509_CRL_get0_by_serial.3         

  > correct RETURN VALUES;
  > from Richard Levitte <levi...@openssl.org>, OpenSSL commit cdd6c8c5
  > (schwarze@)

  ~ man/Makefile                          + man/X509_cmp_time.3

  > document the public function X509_cmp_time(3);
  > from Emilia Kasper <emi...@openssl.org>, OpenSSL commit 80770da3,
  > tweaked by me (schwarze@)

  ~ man/Makefile                          + man/X509_digest.3

  > document X509_Digest(3) and friends;
  > from Rich Salz <rs...@openssl.org>, OpenSSL commit 3e5d9da5 etc.
  > (schwarze@)

  ~ man/Makefile                          ~ man/UI_new.3
  + man/UI_UTIL_read_pw.3                 + man/UI_create_method.3
  + man/UI_get_string_type.3              

  > merge new UI documentation from OpenSSL (schwarze@)

  ~ man/UI_create_method.3                ~ man/UI_get_string_type.3
  ~ man/X509_cmp_time.3                   

  > tweak previous; (jmc@)

libskey

  ~ skeylogin.c                           

  > use explicit_bzero. one from Ricardo Mestre plus two more. (tedu@)

  ~ skey.h                                ~ skeylogin.c

  > Generate the bogus challenge using arc4random_buf(3) instead of reading
  > directly from /var/db/host.random and falling back to ctime. Remove the
  > _SKEY_RAND_FILE_PATH_ since it's no longer needed.
  > ok millert, mestre (tb@)

libssl

  ~ t1_enc.c                              

  > More cleanup for tls1_PRF()/tls1_P_hash() - change the argument order of
  > tls1_PRF() so that it matches tls1_P_hash(), use more explicit argument
  > names and change lengths to size_t.
  > ok inoguchi@ (jsing@)

  ~ t1_enc.c                              

  > Check tls1_PRF() return value in tls1_generate_master_secret(). (jsing@)

  ~ tls1.h                                

  > Update RFC reference for TLSEXT_TYPE_padding. (jsing@)

libutil

  ~ imsg.c                                ~ imsg.h
  ~ imsg_init.3                           

  > Use C99 types (uint32_t) instead of BSD (u_int32_t) - the former are
  > more portable. Add stdint.h to the headers in imsg_init(3).
  > No objections from millert@. (nicm@)

== regress =========================================================== 06/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress

lib

  ~ libssl/unit/tls_prf.c                 

  > Update regress to match changes to tls1_PRF(). (jsing@)

sbin

  ~ ipsecctl/Makefile                     

  > Allow to override location of ipsecctl tool with IPSECCTL environment.
  > Useful for development testing without make install. (bluhm@)

  ~ ipsecctl/Makefile                     + ipsecctl/sa25.in
  + ipsecctl/sa25.ok                      + ipsecctl/sa26.in
  + ipsecctl/sa26.ok                      

  > Add tests for SA grouped in bundles. (bluhm@)

sys

  ~ kern/pledge/ioctl/pfioctl1.c          ~ kern/pledge/ioctl/pfioctl2.c

  > correct my email address. thanks fcambus@ (benno@)

usr.bin

  ~ ssh/keytype.sh                        

  > remove /usr/bin/time calls around tests, makes diffing test runs harder.
  > Based on patch from Mike Frysinger (djm@)

usr.sbin

  + syslogd/args-error.pl                 

  > Check that syslogd(8) is still running if non critical errors happen
  > during startup. (bluhm@)

== sbin ============================================================== 07/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin

dhclient

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

  ~ options.c                             

  > Fix dhclient vis/unvis of strings stored in the leases file.
  > Replaces incorrect manual emulation of vis() for single, double and
  > back quotes, dollar signs and back slashes. Just use vis() with
  > VIS_ALL for these characters.
  > Should fix problem reported by robert@ with ssid's containing back
  > slash. (krw@)

fdisk

  ~ fdisk.8                               ~ part.c

  > cleanup fdisk(8) partition names used by FAT file systems so they are more
  > consistent and easier to identify, as outlined here:
  > - FAT12: FAT12 (01h)
  > - FAT16: FAT16S (04h), FAT16B (06h), FAT16L (0Eh)
  > - FAT32: FAT32 (0Bh), FAT32L (0Ch)
  > nothing in our tree is looking to the strings being replaced for anything
  > but printing them out, only to the numerical ids taken from disklabel.h
  > ok krw@, jmc@ (sobrado@)

ifconfig

  ~ ifconfig.8                            

  > "autoconf" belongs in the inet6 section, not the global options part;
  > while here prefer "interface" over "ip6-interface" and show that "inet6" is
  > mandatory;
  > ok florian mpi (jmc@)

  ~ ifconfig.8                            

  > as suggested by mpi, be less particular documenting
  > where router adverts are coming from when describing autoconf;
  > rework the description a little;
  > ok mpi (jmc@)

  ~ ifconfig.8                            

  > stop signposting; while here, knock out the comments; (jmc@)

  ~ ifconfig.c                            

  > Replace a magic number with the corresponding macro from ieee80211_ioctl.h.
  > No functional change.
  > ok deraadt@ tb@ (stsp@)

iked

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

  ~ iked.c                                

  > set ps_noaction to not fork uneeded children when checking config with -n
  > ok mikeb@ reyk@ (jsg@)

route

  ~ route.c                               

  > show inet6 proposals in route monitor
  > fine with krw@ (florian@)

  ~ route.c                               

  > getnameinfo errors should go to stderr & should print what's going on.
  > Pointed out by & ok bluhm
  > While here print prefixlen with %u, pointed out by bluhm, too. (florian@)

  ~ route.c                               

  > Fix printf() incantation for non-NULL terminated string.
  > Pointed out by florian@.
  > ok bluhm@ (krw@)

== share ============================================================= 08/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share

man

  ~ man4/options.4                        

  > document PPPOE_TERM_UNKNOWN_SESSIONS; ok sthen (jmc@)

  ~ man4/inet6.4                          

  > some notes from bluhm about setting a reject route; (jmc@)

  ~ man4/usb.4                            

  > update ure(4) entry; from tinker (jmc@)

  ~ man4/inet6.4                          

  > zap some historical notes and an out of date url;
  > help/ok bluhm (jmc@)

  ~ man4/inet6.4                          

  > Fix syntax of example route command. (bluhm@)

  ~ man4/inet6.4                          

  > kill Tn; (jmc@)

  ~ man4/pppoe.4                          

  > less verbose KERNEL OPTIONS section; help/ok sthen (jmc@)

  ~ man4/virtio.4                         

  > Mention vmmci(4) in virtio man page (mlarkin@)

  ~ man4/virtio.4                         

  > Remove some obvious statement in previous commit (mlarkin@)

  ~ man4/virtio.4                         

  > add viocon and a missing full stop in previous;
  > ok mlarkin (jmc@)

  ~ man4/ahci.4                           ~ man4/xhci.4

  > mention fdt attachments (jsg@)

mk

  ~ bsd.lib.mk                            

  > The support in 'ar' for 'D'eterministic builds has been in for weeks,
  > so start using it to make archives (mostly) detereministic for syspatch
  > ok millert@ deraadt@ kettenis@ (guenther@)

zoneinfo

  ~ datfiles/iso3166.tab                  ~ datfiles/northamerica

  > Update to tzdata2017b from ftp.iana.org (millert@)

== sys =============================================================== 09/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys

arch/amd64/amd64

  ~ vmm.c                                 

  > Handle master/slave PIC vector base properly. OpenBSD uses 0x20/0x28
  > (respectively). Seabios uses 0x8/0x78 and linux uses 0x30/0x38. Respond
  > properly to PIC vector base assignment and calculate VMX injection
  > vectors based on current values, instead of always assuming OpenBSD
  > defaults.
  > Needed for both seabios serial console support as well as linux guest
  > support. Tested on -current as is, does not break existing OpenBSD
  > guest support. (mlarkin@)

  ~ vmm.c                                 

  > CPUID feature 0x80000000 emulation fell through to 0x80000001, which
  > resulted in wrong cpu information being passed to the guest. Specifically
  > this breaks Linux guests as with the fallthrough, CPUID_LONG was cleared,
  > and Linux thought it was runinng on a machine incapable of 64-bit mode.
  > OpenBSD/NetBSD guests don't check this flag and thus weren't affected.
  > (mlarkin@)

  ~ vmm.c                                 

  > Don't allow the guest to clear CR0_NE or CR4_VMXE. While we should be
  > using the "must be clear / must be set" masks for these registers, I'd
  > like to know (for now) when guest VMs manipulate bits in these registers
  > in an unexpected way. This is needed for Linux guests, as they
  > unconditionally set CR0 without NE, and CR4 without VMXE. (mlarkin@)

  ~ vmm.c                                 

  > Allow returns from vmd after handling cpuid exits (handles the case where
  > a cpuid instruction was emulated at the same time there was an interrupt
  > pending) (mlarkin@)

  ~ vmm.c                                 

  > Exit to vmd on byte size PCI accesses. (mlarkin@)

  ~ vmm.c                                 

  > Handle guest interruptibility state - Reset the interruptibility state
  > VMCS field on vmentry when we advanced %rip on the last exit (simulating
  > a real processor's behaviour). Handles guest "sti ; hlt" instruction
  > sequences, which is used in seabios as a primitive idle loop construct.
  > (mlarkin@)

  ~ vmm_support.S                         

  > Use explicit operand with SVM instructions as clang doesn't recognize the
  > implicit form.
  > ok mlarkin@ (kettenis@)

  ~ mainbus.c                             ~ vmm.c

  > Split vmm_probe() into a vmm_enabled() function, to better follow the
  > probe/attach approach used by mainbus.
  > ok mlarkin kettenis (deraadt@)

  ~ vmm.c                                 

  > Suppress AVX from the extended CPUID flags. Our AVX treatment is currently
  > incomplete and enabling it leads ubuntu guests to try and use the feature,
  > with incorrect results. We can re-enable this at a later date when AVX
  > is properly handled. (mlarkin@)

  ~ vmm.c                                 

  > Add "AVX" to the comment above the previous commit. Spotted by reyk
  > (mlarkin@)

  ~ vmm.c                                 

  > discard MSR reads from unknown MSRs instead of passing them through. That
  > behaviour was needed during early development but not anymore. Suppress
  > the printf that accompanied these exits since linux guests go probing
  > wildly into msr-land on each boot.
  > ok deraadt (mlarkin@)

  ~ codepatch.c                           

  > KNF (jca@)

arch/amd64/include

  ~ vmmvar.h                              

  > Bump the emulated PCI MMIO range end to 0xFFFFFFFF. This slightly
  > penalizes i386 guests who previously had memory allocated by vmd after
  > 0xF0FFFFFF (the previous range end) but makes memory range calculation
  > in vmd/mc146818 much much easier. This diff needs to be combined with
  > the previous vmd diffs or you won't be able to create a vm with memory
  > size larger than ~3855MB. (mlarkin@)

arch/arm/arm

  ~ sys_machdep.c                         

  > Avoid panic in arm_sync_icache() by only flushing the parts of the address
  > space for which we have a userland mapping.
  > ok jca@ (kettenis@)

arch/arm/cortex

  ~ ampintc.c                             

  > As a first step towards SMP, use an array for the destination masks with
  > an element for each CPU.  Use this mask directly instead of converting
  > it into a cpu number and back into a mask again when routing interrupts.
  > This avoids the need to handle uniprocessor systems in a special way
  > as they will return 0 as the mask (the relevant register is defined as RAZ)
  > and ignore what's written into the destination registers (the relevant
  > registers are defined as WI).
  > Future code that hatches the secondary CPUs will have to call into the
  > driver to establish the masks for those CPUs.
  > ok patrick@ (kettenis@)

arch/arm64/arm64

  ~ process_machdep.c                     

  > Revise the definition of "struct reg" to have a layout compatible with
  > other
  > operating systems.  Implement process_read_regs() and make
  > process_read_fpregs() clear the struct fpreg to avoid leaking kernel stack
  > contents.  This makes core dumps actually usable.
  > ok drahn@ (kettenis@)

  ~ pmap.c                                

  > Implement kernel W^X for arm64.  For this purpose align the different
  > segments
  > containing .text, .rodata and .data/.bss at 2MB boundaries and set the
  > appropriate access permissions on the block translations.
  > ok patrick@ (kettenis@)

  ~ cpufunc_asm.S                         ~ cpuswitch.S
  ~ genassym.cf                           ~ pmap.c

  > Simplify ASID allocation code considerably by allocating an ASID up front
  > when a pmap is created and freeing it when the pmap is destroyed.  This
  > diff relies on the fill 16-bit ASID space being implemented in the
  > processor.
  > While this is documented as an optional feature in the ARMv8 architecture
  > reference manual, all ARMv8 processors seen in the wild so far implement
  > the full 16-bit space.  This change incorporates changes by drahn@ to
  > allocate an empty page table for the lower half of the address space for
  > the
  > kernel.
  > ok drahn@, patrick@ (kettenis@)

arch/arm64/conf

  ~ kern.ldscript                         

  > Implement kernel W^X for arm64.  For this purpose align the different
  > segments
  > containing .text, .rodata and .data/.bss at 2MB boundaries and set the
  > appropriate access permissions on the block translations.
  > ok patrick@ (kettenis@)

arch/arm64/dev

  ~ agtimer.c                             

  > Switch arm64 generic timer to use virtual timer instead of physical
  > timer. virtual timer will always be present where physical timer may
  > be disabled by hypervisor. Other OSes use virtual timer. ok patrick@
  > (drahn@)

arch/arm64/include

  ~ reg.h                                 

  > Revise the definition of "struct reg" to have a layout compatible with
  > other
  > operating systems.  Implement process_read_regs() and make
  > process_read_fpregs() clear the struct fpreg to avoid leaking kernel stack
  > contents.  This makes core dumps actually usable.
  > ok drahn@ (kettenis@)

  ~ cpufunc.h                             ~ pcb.h
  ~ pmap.h                                

  > Simplify ASID allocation code considerably by allocating an ASID up front
  > when a pmap is created and freeing it when the pmap is destroyed.  This
  > diff relies on the fill 16-bit ASID space being implemented in the
  > processor.
  > While this is documented as an optional feature in the ARMv8 architecture
  > reference manual, all ARMv8 processors seen in the wild so far implement
  > the full 16-bit space.  This change incorporates changes by drahn@ to
  > allocate an empty page table for the lower half of the address space for
  > the
  > kernel.
  > ok drahn@, patrick@ (kettenis@)

arch/armv7/armv7

  ~ armv7_machdep.c                       

  > Mainline u-boot on the ClearFog seems to insert an empty memory region
  > into the /memory node which we happily physload into UVM.  This leads
  > to a quickly panic(9)ing system when there is actual physical memory
  > starting at zero due to how the physeg array is sorted when using the
  > binary search strategy.  To fix this, do not physload an empty memory
  > region.
  > ok jsg@ kettenis@ (patrick@)

arch/armv7/conf

  ~ GENERIC                               ~ RAMDISK

  > Implement a driver for Marvell's XHCI controller.  This is in essence
  > a generic XHCI controller with the twist that the MBUS window needs
  > to be configured in the controller registers.  This enables use of
  > USB on devices like the SolidRun ClearFog or Omnia Turris.
  > ok kettenis@ (patrick@)

  ~ GENERIC                               ~ RAMDISK

  > Implement a driver for Marvell's AHCI controller.  This is in essence
  > a generic AHCI controller with the twist that the MBUS window needs
  > to be configured in the controller registers.  This enables use of
  > SATA on devices like the SolidRun ClearFog or Omnia Turris.
  > ok kettenis@ (patrick@)

arch/armv7/marvell

  ~ mvacc.c                               

  > Bump resolution of frequencies from kHz to Hz, since that is what the
  > clock frequency API expects.  Fixes login prompt over serial console.
  > (patrick@)

  ~ files.marvell                         + mvxhci.c

  > Implement a driver for Marvell's XHCI controller.  This is in essence
  > a generic XHCI controller with the twist that the MBUS window needs
  > to be configured in the controller registers.  This enables use of
  > USB on devices like the SolidRun ClearFog or Omnia Turris.
  > ok kettenis@ (patrick@)

  ~ files.marvell                         + mvahci.c

  > Implement a driver for Marvell's AHCI controller.  This is in essence
  > a generic AHCI controller with the twist that the MBUS window needs
  > to be configured in the controller registers.  This enables use of
  > SATA on devices like the SolidRun ClearFog or Omnia Turris.
  > ok kettenis@ (patrick@)

arch/i386/i386

  ~ vmm.c                                 

  > Handle master/slave PIC vector base properly. OpenBSD uses 0x20/0x28
  > (respectively). Seabios uses 0x8/0x78 and linux uses 0x30/0x38. Respond
  > properly to PIC vector base assignment and calculate VMX injection
  > vectors based on current values, instead of always assuming OpenBSD
  > defaults.
  > Needed for both seabios serial console support as well as linux guest
  > support. Tested on -current as is, does not break existing OpenBSD
  > guest support. (mlarkin@)

  ~ mainbus.c                             ~ vmm.c

  > Split vmm_probe() into a vmm_enabled() function, to better follow the
  > probe/attach approach used by mainbus.
  > ok mlarkin kettenis (deraadt@)

  ~ codepatch.c                           

  > KNF (jca@)

arch/luna88k/dev

  ~ if_le.c                               ~ lcd.c
  ~ lunafb.c                              ~ omrasops.c
  ~ omrasops.h                            ~ omrasops1.c
  ~ siotty.c                              

  > Replace hardcoded addresses with symbolic constants from <machine/board.h>
  > for enhanced grepability and fewer bad surprises.
  > ok aoyama@ (miod@)

arch/luna88k/include

  ~ cpu.h                                 

  > Put the address of the per-cpu clock and interrupt registers into the
  > cpu_info
  > struct, rather than fetching them from arrays every time they are needed.
  > ok aoyama@ (miod@)

  ~ board.h                               

  > Remove unused defines. Some of them can be traced to MVME188 and make no
  > sense on Omron hardware.
  > ok aoyama@ (miod@)

  ~ board.h                               

  > Fix previous. Commited from the wrong tree. (miod@)

arch/luna88k/luna88k

  ~ clock.c                               ~ machdep.c

  > Put the address of the per-cpu clock and interrupt registers into the
  > cpu_info
  > struct, rather than fetching them from arrays every time they are needed.
  > ok aoyama@ (miod@)

  ~ locore.S                              

  > Replace hardcoded addresses with symbolic constants from <machine/board.h>
  > for enhanced grepability and fewer bad surprises.
  > ok aoyama@ (miod@)

  ~ pmap_table.c                          

  > Do not map resources which are actually not used within the kernel. Saves
  > 24KB of page tables memory.
  > help and luna88k-2 tests aoyama@; ok aoyama@ (miod@)

arch/m88k/include

  ~ cpu.h                                 

  > Put the address of the per-cpu clock and interrupt registers into the
  > cpu_info
  > struct, rather than fetching them from arrays every time they are needed.
  > ok aoyama@ (miod@)

arch/m88k/m88k

  ~ m88k_machdep.c                        

  > Put the address of the per-cpu clock and interrupt registers into the
  > cpu_info
  > struct, rather than fetching them from arrays every time they are needed.
  > ok aoyama@ (miod@)

dev

  ~ softraid.c                            

  > Restore behavior from before r1.376: only set bv_percent if a rebuild is
  > in progress. This eliminates the spurious and harmless "0% done" message
  > in the output of 'bioctl softraid0' reported by various on misc.
  > ok jsing (tb@)

dev/fdt

  ~ sxiccmu.c                             ~ sxiccmu_clocks.h

  > Add support for a few more Allwinner H3 clocks. (kettenis@)

dev/pci

  ~ pcidevs                               

  > Add AMD A1100 devices and some more qemu and virtio devices. (jsg@)

  ~ pcidevs.h                             ~ pcidevs_data.h

  > regen (jsg@)

  ~ pcidevs                               

  > Add Intel devices for Kaby Lake and 3168/8265 wlan.
  > ok kettenis@ (jsg@)

  ~ pcidevs.h                             ~ pcidevs_data.h

  > regen (jsg@)

  ~ if_em.c                               ~ if_em_hw.c
  ~ if_em_hw.h                            

  > Match the Kaby Lake and Lewisburg (Skylake-EP PCH) MACs with I219 PHYs.
  > Expanded version of a diff from claudio@ who tested on x270 ok kettenis@
  > (jsg@)

  ~ azalia.c                              

  > Enable snooping on Kaby Lake U/Y PCH HDA to avoid audio glitches as we
  > do on all the other recent Intel platforms.
  > ok kettenis@ (jsg@)

  ~ pcireg.h                              ~ pci_subr.c

  > Add some more PCI classes and subclasses.  Checked against EDK2 as
  > "PCI Code and ID Assignment Specification" is only available for those
  > willing to pay thousands of dollars for PDFs.
  > Prompted by a dmesg from an AMD Zen system which uses class 0x13
  > (Non-Essential Instrumentation) and System subclass 0x06 (IOMMU).  There
  > is currently no public documentation for AMD family 17h to reference to
  > see if this is sane.
  > ok kettenis@ on an earlier version (jsg@)

  ~ pcireg.h                              

  > More PCI extended capabilities handling in pcidump.
  > From  Simon Mages
  > ok deraadt@ (mlarkin@)

dev/pv

  ~ xbf.c                                 

  > Fixup return values to properly handle transfer submission errors
  > From Nathanael Rensen, thanks! (mikeb@)

  ~ xbf.c                                 

  > Fixup starting block number calculation for bounced transfers
  > From Nathanael Rensen, thanks! (mikeb@)

  ~ xen.c                                 

  > Improve comments slightly (mikeb@)

  ~ vioblkreg.h                           

  > Add a #define needed for an upcoming vmd commit (to reflect a failure
  > when an operation was requested from vioblk host devices that is
  > not supported except on qemu). (mlarkin@)

dev/usb

  ~ if_athn_usb.c                         ~ if_atu.c
  ~ if_kue.c                              ~ if_otus.c
  ~ if_rsu.c                              ~ if_rum.c
  ~ if_run.c                              ~ if_uath.c
  ~ if_upgt.c                             ~ if_urndis.c
  ~ if_zyd.c                              ~ udl.c
  ~ udl.h                                 ~ ulpt.c
  ~ usb_subr.c                            ~ uticom.c
  ~ uvideo.c                              

  > Add sizes to various free(9) calls.  Fixing the simpler ones first.
  > ok natano visa (deraadt@)

kern

  ~ exec_elf.c                            

  > Initialize the stack buffer used to build the auxiliary vector to zero to
  > avoid leaking the contents of the kernel stack into userspace.
  > ok guenther@, deraadt@ (kettenis@)

  ~ exec_elf.c                            

  TAGGED OPENBSD_5_9
  > OpenBSD 5.9 Errata 037: SECURITY FIX: March 20, 2017
  > MFC sys/kern/exec_elf.c exec_elf.c rev v 1.140 kettenis
  > Initialize the stack buffer used to build the auxiliary vector to zero to
  > avoid leaking the contents of the kernel stack into userspace.
  > ok guenther@, deraadt@ (benno@)

  ~ exec_elf.c                            

  TAGGED OPENBSD_6_0
  > OpenBSD 6.0 Errata 020: SECURITY FIX: March 20, 2017
  > MFC sys/kern/exec_elf.c exec_elf.c rev v 1.140 kettenis
  > Initialize the stack buffer used to build the auxiliary vector to zero to
  > avoid leaking the contents of the kernel stack into userspace.
  > ok guenther@, deraadt@ (benno@)

  ~ subr_log.c                            

  TAGGED OPENBSD_6_0
  > There was a race in dosendsyslog() which resulted in a crash.
  > sosend(syslogf->f_data, ...) could be called with a NULL pointer.
  > syslogf was not NULL, f_data was NULL and f_count was 1.  The file
  > structure is ref counted, but the global variable syslogf is not
  > protected.  So it may change during sleep and dosendsyslog() possibly
  > used a different socket at each access.  Solution is to access
  > syslogf only once, use a local copy, and do the ref counting there.
  > OK millert@ deraadt@ (bluhm@)

  ~ kern_pledge.c                         

  TAGGED OPENBSD_6_0
  > For the tape ioctls, recognize that block devices don't exist anymore.
  > Also fail if the descriptor is actually a tty.
  > ok guenther (deraadt@)

  ~ kern_pledge.c                         

  TAGGED OPENBSD_6_0
  > Inside pledge_ioctl, wrap #if's around the complete sub-blocks. (deraadt@)

net

  ~ if.c                                  

  > Replace an expensive microtime call with a getmicrotime for if_lastchange
  > reducing its resolution to 10ms.
  > ok florian, mpi (mikeb@)

net80211

  ~ ieee80211_ioctl.c                     

  > When a new WPA key is set while WEP is enabled, disable WEP,
  > and when a new WEP key is set while WPA is enabled, disable WPA.
  > Prevents unusable configurations where both WEP and WPA are active
  > and makes switching between WEP/WPA networks easier.
  > ok deraadt@ tb@ sthen@ (stsp@)

  ~ ieee80211_crypto.c                    ~ ieee80211_crypto_bip.c
  ~ ieee80211_crypto_ccmp.c               ~ ieee80211_crypto_tkip.c
  ~ ieee80211_crypto_wep.c                ~ ieee80211_ioctl.c

  > Use explicit_bzero() to wipe out key material and add some sizes to free().
  > ok stsp (tb@)

netinet

  ~ ip_carp.c                             

  > Replace manual loop with SRPL_FOREACH_SAFE_LOCKED macro.
  > OK mpi@ (bluhm@)

netinet6

  ~ nd6.c                                 

  > Do not invalidate a ND cache at the begining of nd6_free().
  > We should not change the state of a cache entry at this point since
  > the default router selection logic looks at it.  Instead, invalidate
  > the cache just before deleting the corresponding route entry, if it
  > applies.
  > Fixes a regression reported by semarie@
  > ok bluhm@ (mpi@)

ntfs

  ~ ntfs_vfsops.c                         

  > Read the free clusters bitmap in 1MB chunks
  > instead of trying to read it in one go and panic in malloc(9) with large
  > NTFS filesystems.  panic reported and fix tested by landry@ (jca@)

== usr.bin =========================================================== 10/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin

aucat

  ~ afile.c                               

  > Use the right header sizes for reading .aiff and .au files, ok ratchov
  > (nicm@)

cdio

  ~ cdio.1                                

  > expand TAO in the correct place; from michael reed
  > this commit differs a little from the diff michael posted:
  > - i've uppercased the expansion, which seems a better fit
  > - reworked a later description to fit (jmc@)

doas

  ~ doas.conf.5                           

  > simplify example. list of ports variables was non-exahustive, which means
  > what exactly? there should be a better place for such lists. (tedu@)

mandoc

  ~ main.c                                ~ mandoc.1

  > Silently ignore invalid -m input formats rather than erroring out.
  > As observed by Jan Stary <hans at stare dot cz>, this is useful such
  > that after 'alias man="man -m $HOME/man"', 'man -l foo.1' still works.
  > Simplify and shorten the description of -m, and use .Ic for macros.
  > (schwarze@)

  ~ man.1                                 

  > delete documentation of a hack that was removed years ago (schwarze@)

  ~ mandoc.1                              

  > simplify .Nd; to display manuals, use man(1) instead;
  > OK jmc@ (schwarze@)

  ~ man.1                                 

  > simplify description of -S and -w, point from EXIT STATUS
  > to mandoc(1) for details, and remove duplicate .Xr to whatis(1);
  > OK jmc@ (schwarze@)

  ~ apropos.1                             ~ man.1

  > For some options that are rarely needed in apropos(1) and man(1),
  > delete the verbose descriptions and point to man(1) and mandoc(1),
  > respectively, instead.  That shortens the pages and makes them
  > easier to read.
  > Tweaks and OK jmc@, based in part on ideas from tedu@. (schwarze@)

patch

  ~ inp.c                                 

  > parameter "lines_allocated" is a local pointer and should not be confused
  > with the global by the same name, so rename it "lines_allocatedp".
  > (deraadt@)

  ~ pch.c                                 

  > One string buffer can use recallocarray() to ensure that the address space
  > doesn't get dribbled with known contents.
  > ok otto millert tobias (deraadt@)

rup

  ~ rup.c                                 

  > recallocarray array that has remote data (deraadt@)

ssh

  ~ version.h                             

  > openssh-7.5 (djm@)

  ~ authfile.c                            

  > incorrect renditions of this quote bother me (deraadt@)

tail

  ~ read.c                                

  > Change a reallocarray+bzero into recallocarray.
  > OK tb@ and deraadt@ (martijn@)

tmux

  ~ window.c                              

  > Fix pane movement by direction (up, down, left, right) when
  > pane-border-status is set, from KOIE Hidetaka. (nicm@)

  ~ window-copy.c                         

  > Fix movement after select-line, from Omar Sandoval. (nicm@)

  ~ tmux.c                                

  > Use uid_t for UID not u_int. (nicm@)

  ~ attributes.c                          ~ grid.c
  ~ input.c                               ~ style.c
  ~ tmux.1                                ~ tmux.h
  ~ tty-term.c                            ~ tty.c

  > Add support for the strikethrough attribute (SGR 9), using the new smxx
  > terminfo capability. This means there are now nine attribute bits, so
  > anything above 0xff uses an extended cell. (nicm@)

  ~ colour.c                              ~ window-copy.c

  > Show count of search results in copy mode. (nicm@)

  ~ tty.c                                 

  > Write raw strings in one go rather than character at a time. (nicm@)

== usr.sbin ========================================================== 11/11 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin

acme-client

  ~ acme-client.1                         

  > Simplify cron(8) job example.
  > input from jmc@
  > ok tb@ deraadt@ (ajacoutot@)

  ~ acme-client.1                         ~ acme-client.conf.5

  > Improve manpage and config file to show the more common use case.
  > from Nick Holland (nick AT holland-consulting DOT net)
  > ok jmc@ florian@ (benno@)

  ~ main.c                                

  > pull root check up, the parser will bomb out anyway
  > OK benno (florian@)

  ~ parse.y                               

  > It is perfectly valid to have a cert / key not owned by root; remove
  > useless check.
  > OK benno (florian@)

  ~ http.c                                ~ keyproc.c

  > recallocarray() for data buffer from the net.
  > ok beck (deraadt@)

bgpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

dhcpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

dhcrelay

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

dhcrelay6

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > I have missed dhcrelay6 and slaacd in my previous conversion as they
  > were added recently. (bluhm@)

dvmrpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

eigrpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

httpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

  ~ config.c                              ~ httpd.c
  ~ httpd.conf.5                          ~ httpd.h
  ~ parse.y                               ~ server.c

  > Implement TLS ticket support in httpd. Off by default. Use
  > tls ticket lifetime default
  > to turn it on with a 2h ticket lifetime.
  > Rekeying happens after a quarter of that time.
  > OK reky@ and bob@ (claudio@)

ifstated

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

iscsid

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

ldapd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

ldpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

makefs

  ~ msdos.c                               

  > Set the maximum value of the msdos options to the value of LLONG_MAX
  > instead of ULLONG_MAX since the type of the comparison is using long
  > long, which has a positive maximum of LLONG_MAX.  The affected opts
  > are of type off_t, which should have a maximum of LLONG_MAX anyway.
  > Fixes makefs(8) on msdos with options "create_size" or "offset".
  > ok natano@ (patrick@)

npppd

  ~ npppd/log.c                           

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

ntpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

ocspcheck

  ~ http.c                                

  > recallocarray() for data buffer from the net.
  > ok beck (deraadt@)

ospf6d

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

ospfd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

pcidump

  ~ pcidump.c                             

  > More PCI extended capabilities handling in pcidump.
  > From  Simon Mages
  > ok deraadt@ (mlarkin@)

pkg_add

  ~ OpenBSD/AddDelete.pm                  ~ OpenBSD/Delete.pm
  ~ OpenBSD/PkgAdd.pm                     

  > tweak checksums on delete to not happen by default, with an interface
  > as discussed with sthen@
  > manpage bits to follow soonish (espie@)

  ~ pkg_add.1                             ~ pkg_delete.1

  > document tweaked checksum behavior, reorder environment, remove old cruft.
  > (espie@)

  ~ OpenBSD/FwUpdate.pm                   

  > Recognise vmm in dmesg to install "vmm-firmware" (the SeaBIOS package).
  > OK espie@ (sthen@)

  ~ pkg_add.1                             

  > spelling fix; ok espie (jmc@)

relayd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

  ~ relayd.conf.5                         

  > X-Forwarded-By should be the server $SERVER_ADDR instead of the client
  > $REMOTE_ADDR.
  > Noticed and diff provided by Hiltjo Posthuma (hiltjo at codemadness dot
  > org) (claudio@)

ripd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

route6d

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

rtadvd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

sensorsd

  ~ sensorsd.8                            ~ sensorsd.c

  > Add command line option -f to specify alternative config file.
  > from Matthias Pitzl (bluhm@)

slaacd

  ~ slaacd.8                              

  > tweaks; ok florian (jmc@)

  ~ engine.c                              ~ frontend.c
  ~ slaacd.h                              

  > Get and display link local address, needed to generate addresses from
  > a router advertisement. (florian@)

  ~ frontend.c                            

  > introduce & use update_iface() function, we need the full song & dance
  > in more places (florian@)

  ~ engine.c                              ~ slaacd.h

  > generate and show addresses from announced prefix (florian@)

  ~ frontend.c                            ~ slaacd.c
  ~ slaacd.h                              

  > simplify control socket path handling; sync from netcfgd by krw@ (florian@)

  ~ engine.c                              ~ engine.h
  ~ slaacd.c                              ~ slaacd.h

  > send proposals (florian@)

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > I have missed dhcrelay6 and slaacd in my previous conversion as they
  > were added recently. (bluhm@)

slaacdctl

  ~ slaacdctl.c                           

  > Get and display link local address, needed to generate addresses from
  > a router advertisement. (florian@)

  ~ slaacdctl.c                           

  > generate and show addresses from announced prefix (florian@)

smtpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

snmpd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

switchd

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

syslogd

  ~ ttymsg.c                              

  > Replace bcopy(3) with memmove(3) in function ttymsg().  Values of
  > iov and localiov may overlap.  No more bcopy(3) in syslogd(8).
  > from Michael W. Bombardieri (bluhm@)

  ~ syslogd.c                             

  > Keep syslogd(8) running as long as possible.  Regular programs
  > should terminate early in case of an error.  But if syslogd dies,
  > no messages can be seen at all.  Except from command line parsing
  > and memory shortage during statup, report errors and run all working
  > subsystems, but do not die.
  > OK millert@ dreaadt@ (bluhm@)

  ~ syslogd.c                             

  > After my previous commit, file descriptor fd_sendsys may be -1 if
  > socketpair(2) has failed.  Do not call ioctl(LIOCSFD) in this case.
  > OK millert@ (bluhm@)

vmctl

  ~ main.c                                ~ vmctl.8

  > Boot using BIOS from /etc/firmware/vmm-bios by default.
  > Instead of using the internal "vmboot", VMs will now be booted using
  > the external BIOS firmware in /etc/firmware/vmm-bios (which is subject
  > to a LGPLv3 license).  Direct booting of OpenBSD kernels or
  > non-default BIOS images is still supported for now using the -b/boot
  > option that is replacing the -k/kernel option.
  > As requested by Theo, vmd(8) fails if neither the default BIOS is
  > found nor a kernel has been specified in the VM configuration.  The
  > "vmm" BIOS has to be installed using fw_update(1), which will be done
  > automatically in most cases where the OpenBSD can fetch it after
  > install/upgrade.
  > OK mlarkin@ (reyk@)

vmd

  ~ i8259.c                               

  > Convert some log_warn into log_warnx, and provide pic names (master,slave)
  > in debugging output. (mlarkin@)

  ~ i8259.c                               

  > Handle master/slave PIC vector base properly. OpenBSD uses 0x20/0x28
  > (respectively). Seabios uses 0x8/0x78 and linux uses 0x30/0x38. Respond
  > properly to PIC vector base assignment and calculate VMX injection
  > vectors based on current values, instead of always assuming OpenBSD
  > defaults.
  > Needed for both seabios serial console support as well as linux guest
  > support. Tested on -current as is, does not break existing OpenBSD
  > guest support. (mlarkin@)

  ~ i8253.c                               

  > Emulated i8253 should not start out in TIMER_RATEGEN mode on boot
  > automatically. This worked for OpenBSD guests but breaks seabios as soon
  > as the first interrupt fires since it has not programmed the PIT to do
  > anything yet. And OpenBSD reprograms the clock to rategen mode as soon
  > as it boots anyway, so this still works with vmctl(8)'s -k option, as
  > well as the faux-bootloader implemented in vmd(8) (mlarkin@)

  ~ mc146818.c                            

  > Don't identify the MC146818 RTC as operating in binary mode when we are
  > really
  > operating in BCD mode. Linux assumes the RTC will be in BCD mode by default
  > and if not, it does a WARN_ON warning about this, and misinterprets the RTC
  > TOD registers.
  > Tested with existing vmd/vmm guests with what's in tree. (mlarkin@)

  ~ ns8250.c                              ~ vm.c
  ~ vmm.h                                 

  > Fix two errors in NS8250 (UART) emulation. The first error zeroed out the
  > high bits of %eax on reading register data from the emulated UART ports.
  > The second error didn't properly assert the TXRDY bit during init -
  > this bit was only set after the first character was sent. Both these
  > bugs caused seabios to not be able to output any data. Found during the
  > recent effort to get Linux guests booting. (mlarkin@)

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

  ~ i8259.c                               

  > use proper return data size when doing PIC reads - don't clobber %eax
  > high bits. (mlarkin@)

  ~ mc146818.c                            

  > Various mc146818 emulation fixes - don't block interrupts needlessly, and
  > set proper return data size (don't clobber high %eax bits). Also apply
  > a mask on incoming data (from OUT instruction in guest) to avoid
  > misinterpreting register index values. Found when implementing Linux and
  > seabios support. (mlarkin@)

  ~ i8253.h                               ~ i8253.c

  > Various i8253/i8254 implementation improvements - Fix an error that used
  > the wrong i/o latch index on reads (resulting in erratic counter values
  > possibly being read). Also do proper return size setting (don't clobber
  > %eax high bits).
  > This diff also implements counter readback mode, which is used in seabios.
  > (mlarkin@)

  ~ mc146818.c                            ~ mc146818.h
  ~ vm.c                                  

  > Implement memory size and SMP CPU count NVRAM registers in the emulated
  > mc146818. This is needed for seabios to boot properly (and construct
  > a sensible e820 map to send to the guest OS). (mlarkin@)

  ~ vm.c                                  

  > Allow vmd to proceed after an interrupt occurred after retiring a cpuid
  > instruction. Matches previous commit to kernel vmm.c (mlarkin@)

  ~ i8253.c                               ~ i8259.c

  > Last bits of cleanup for linux/seabios support in i8253/i8259 emulation
  > code. (mlarkin@)

  ~ i8253.c                               ~ i8259.c

  > Backout mlarkin's previous commit while he is away:
  > The newly-used function get_input_data() is missing and broke the tree.
  > (reyk@)

  ~ i8253.c                               ~ i8259.c
  ~ mc146818.c                            ~ vm.c
  ~ vmm.h                                 

  > Introduce a new function to obtain properly sized input data, and convert
  > i8253/i8259/mc146818 emulation to use this. (mlarkin@)

  ~ pci.c                                 ~ pci.h
  ~ virtio.c                              ~ virtio.h
  ~ vm.c                                  

  > Implement some missing functionality and clean up some code in vmd
  > pci emulation.
  > ok kettenis (mlarkin@)

  ~ virtio.c                              

  > implement missing vioblk reset function and improve the partially
  > implemented vionet one (mlarkin@)

  ~ virtio.c                              

  > The virtio spec says isr_status should be cleared to 0 on read, which
  > we were not doing. That confused the virtio subsystem in linux. (mlarkin@)

  ~ config.c                              ~ loadfile.h
  ~ loadfile_elf.c                        ~ vm.c
  ~ vm.conf.5                             ~ vmd.8
  ~ vmd.h                                 

  > Boot using BIOS from /etc/firmware/vmm-bios by default.
  > Instead of using the internal "vmboot", VMs will now be booted using
  > the external BIOS firmware in /etc/firmware/vmm-bios (which is subject
  > to a LGPLv3 license).  Direct booting of OpenBSD kernels or
  > non-default BIOS images is still supported for now using the -b/boot
  > option that is replacing the -k/kernel option.
  > As requested by Theo, vmd(8) fails if neither the default BIOS is
  > found nor a kernel has been specified in the VM configuration.  The
  > "vmm" BIOS has to be installed using fw_update(1), which will be done
  > automatically in most cases where the OpenBSD can fetch it after
  > install/upgrade.
  > OK mlarkin@ (reyk@)

  ~ virtio.c                              

  > Process more than one avail slot in vioblk ring, if requested by the
  > guest VM. We probably need to do this same fix for vionet later. (mlarkin@)

  ~ i8253.c                               ~ i8259.c
  ~ mc146818.c                            ~ pci.c
  ~ virtio.c                              ~ vm.c
  ~ vmm.h                                 

  > Last bits needed to get seabios + alpine linux working. This is enough
  > to get started and let more people help finding and fixing bugs.
  > ok kettenis, deraadt (mlarkin@)

  ~ config.c                              

  > Use the pseudo-bootloader if the boot image path matches the root disk
  > path.
  > This allows to use the non-BIOS on-disk bootloader for testing.  It
  > might go away after release when we feel more confident about BIOS.
  > OK mlarkin@ (reyk@)

  ~ mc146818.c                            

  > With the updated get_input_data() interface, we need to zero-initialize
  > the stack variable that we use to store the data otherwise the bytes that
  > aren't touched by get_input_data() may contain garbage.
  > ok mlarkin@ (kettenis@)

  ~ config.c                              

  > Don't compare kernel and root disk name if both strings are empty.
  > This avoids jumping into vmboot in some edge conditions.
  > OK mlarkin@ (reyk@)

  ~ virtio.c                              ~ virtio.h

  > Implement a missing command in vioblk and allow > MAXPHYS transfers.
  > This diff (with the others previously committed) allows ubuntu 14.04
  > amd64 guests to work. (mlarkin@)

ypldap

  ~ log.c                                 

  > From a syslog perspective it does not make sense to log fatal and
  > warn with the same severity.  Switch log_warn() to LOG_ERR and keep
  > fatal() at LOG_CRIT.
  > OK reyk@ florian@ (bluhm@)

===============================================================================
_______________________________________________
owc mailing list
owc@squish.net
http://www.squish.net/mailman/listinfo/owc

Reply via email to