OpenBSD src changes summary for 2016-01-26 ==========================================
bin/ksh distrib/miniroot lib/libc sbin/dhclient sbin/newfs_ext2fs sbin/pdisk sys/dev/pci sys/dev/pv sys/net usr.bin/less usr.bin/mg usr.bin/telnet usr.sbin/arp usr.sbin/bgpd usr.sbin/ndp usr.sbin/rarpd usr.sbin/vmctl == bin =============================================================== 01/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin ksh ~ edit.h ~ emacs.c > remove a useless macro > ok nicm@ (mmcc@) == distrib =========================================================== 02/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib miniroot ~ dot.profile > spacing > OK krw@ (rpe@) == lib =============================================================== 03/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib libc ~ stdio/fputwc.c > When encoding fails in fputwc(3), set the error indicator as required > by POSIX and as FreeBSD, SunOS 10/11, and glibc also do it. Note > that an enquiry to the Austin Group led to the conclusion that this > change probably violates the C standard: C and POSIX unintentionally > conflict. But the POSIX behaviour makes more sense (easier to write > correct error handling code for it, and a lower risk that programs > miss errors) and is much more widespread, and the Austin Group > intends to approach the C committee in order to adjust the C standard. > See: http://austingroupbugs.net/view.php?id=1022 > While here, do not set errno a second time, wcrtomb(3) already did that, > and it is required to do it by the standard. > OK millert@ and tedu@, and jca@ no longer objects (schwarze@) ~ stdlib/malloc.c > Don't crash dumping malloc stats if malloc_init hasn't been called, noted > by > David CARLIER (otto@) == sbin ============================================================== 04/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin dhclient ~ dhclient.c > Use an unsigned int rather than an int when iterating through all 32 > bits in the form: > for (i = 1; i; i <<= 1) > This avoids undefined operations when shifting into and out of the > highest-order bit. > ok millert@ (mmcc@) newfs_ext2fs ~ mke2fs.c > Remove needless zeroing. Anonymously mapped memory is always zeroed. > ok tb@ (mmcc@) pdisk ~ partition_map.c > Simplify logic of read_partition_map(), junking retries with various sizes > of logical block. Rely on read_dpme() to do the correct thing. (krw@) ~ dump.c ~ file_media.c ~ partition_map.c ~ validate.c > Whitespace, line wrapping fixes. (krw@) ~ dump.c ~ io.c ~ partition_map.c ~ pdisk.c ~ validate.c > Whitespace, line wrapping fixes. Nuke many superfluous '{}' around single > statements. 0 -> NULL for pointer checks. (krw@) ~ dump.c ~ file_media.c ~ partition_map.c ~ pdisk.c > dpme_name and dpme_type are NUL-terminated in Apple code, so use > strlcpy() to fill them. > They are also supposed to be NUL-padded so zap previous contents > before copying in possibly shorter new values. (krw@) ~ io.c ~ io.h ~ pdisk.c > Rework and simplify string argument parsing. All string arguments are at > most DPISTRLEN (32) characters so there is no need for fancy dynamic > growing strings. Use a DPISTRLEN long buffer and bail if it fills up. > Rename get_string() to get_dpistr() and get_string_argument() to > get_dpstr_argument() to emphasize they will return strings that fit > in DPISTRLEN. > Rework & simplify a pair of their consumers - do_rename_partition() and > do_change_type() - to be more obviously identitical to each other bar > the displayed verbiage. (krw@) == sys =============================================================== 05/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys dev/pci ~ if_vr.c > dont leak mbufs on encap failure. > diff from richard proctor on bugs@ (dlg@) ~ if_vr.c > prettify a NULL test in vr_start. > from richard proctor on bugs@ (dlg@) ~ if_vmx.c > Improve the previous fix: call vmxnet3_load_mbuf, bpf_mtap, and flip > the generation bit to pass the tx descriptor and mbuf to the "hardware". > This way bpf is not called if vmxnet3_load_mbuf dropped the mbuf. > Tested by me > OK mikeb@ (reyk@) dev/pv ~ xen.c > Make sure to use locked atomic operations even on the SP kernel > When executed under the hypervisor we need to make sure that CAS > and other atomic operations are executed while locking the bus. > Problem reported by Imre Oolberg <imre at auul ! pri ! ee>, thanks! > (mikeb@) ~ xen.c > Implement a rather conservative bus_dmamap_sync API (mikeb@) ~ xen.c > Add a grant table reference invalidation spin out check > This debugging check has been helpful in identifying and fixing > a few issues already. Subject to removal in the future however. (mikeb@) ~ xen.c > No need to take a grant table entry mutex in xen_grant_table_{enter,remove} > Grant table API is constructed in a way that once allocated grant table > entries are marked as used and cannot be given away again to some other > user. At the same time xen_grant_table_enter and _remove do not operate > on the same grant reference at the same time, so there's no need for a > lock here. Guard flag operations with memory fences to ensure correct > store/load order. This provides some decent performance improvement as > well. (mikeb@) ~ if_xnf.c > Rename _{req,rsp}_evt descriptor structure members to _{prod,cons}_event > Setting rxr_ and/or txr_cons_event value allows domU to delay completion > notification for receive and/or transmit ring to specified values of > consumer index. rxr_ and txr_prod_event values are updated by dom0 and > don't seem to hold any significance for us. (mikeb@) ~ if_xnf.c > Rewrite tx path to use flat transmit ring without fragment chains > Xen doesn't provide transmit fragment chains so initially they were > emulated but amount of grant table entries wasted in the process was > astronomical (9 times more than after this change). So while code > readability was sacrificed a bit, the change comes with a very nice > transmit performance improvement and taxes grant table references > much less than before. (mikeb@) ~ if_xnf.c > Convert membar_* operations to bus_dmamap_sync calls (mikeb@) net ~ if_pfsync.c > - state keys imported by if_pfsync trip refcnt != ~0 Assert > OK mpi@ (sashan@) == usr.bin =========================================================== 06/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin less ~ less.h ~ line.c ~ output.c ~ prompt.c > Remove a fancy macro that calculates the necessary buffer size for > int-to-str conversions and just use constants instead. The only binary > change is caused by using an unnecessarily large buffer for an int. This > is a consequence of simplifying some code that will be gone soon. > ok nicm@ (mmcc@) mg ~ fileio.c > ensure the backup file has the same mtime as the original file, this is in > line > with emacs' behaviour. > from Harald Dunkel via Han Boetes > ok lum@ (jasper@) telnet ~ telnet.c > typos (mmcc@) == usr.sbin ========================================================== 07/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin arp ~ arp.c > Use an unsigned int rather than an int when iterating through all 32 > bits in the form: > for (i = 1; i; i <<= 1) > This avoids undefined operations when shifting into and out of the > highest-order bit. > ok millert@ (mmcc@) bgpd ~ config.c > typos (mmcc@) ndp ~ ndp.c > Use an unsigned int rather than an int when iterating through all 32 > bits in the form: > for (i = 1; i; i <<= 1) > This avoids undefined operations when shifting into and out of the > highest-order bit. > ok millert@ (mmcc@) rarpd ~ arptab.c > Use an unsigned int rather than an int when iterating through all 32 > bits in the form: > for (i = 1; i; i <<= 1) > This avoids undefined operations when shifting into and out of the > highest-order bit. > ok millert@ (mmcc@) vmctl ~ main.c > The division "res->size /= 1024 / 1024" is a no-op: 1024 / 1024 is > evaluated first, resulting in res->size /= 1. Remove the division and > the following check, as it can never fail; it is a left-over from > previous code that didn't check the size in the caller. > From Martin Natano > OK mlarkin@ (reyk@) ~ vmctl.c > lseek() + write() can be replaced by a slightly shorter ftruncate() > call. Note that using ftruncate() to extend a file is not portable > (POSIX allows either zero-filling until the given size is reached, or > alternatively erroring out), but that shouldn't be a proble as vmm(4) > isn't cross-platform either. unlink() the image file when extending > it fails for consistency with the other error case (the file can't be > created). > From Martin Natano > OK mlarkin@ (reyk@) =============================================================================== _______________________________________________ odc mailing list [email protected] http://www.squish.net/mailman/listinfo/odc
