OpenBSD src changes summary for 2016-06-13 ==========================================
lib/libc libexec/ld.so regress/sys sbin/disklabel share/man sys/arch/alpha/alpha sys/arch/alpha/include sys/arch/armv7/conf sys/arch/armv7/imx sys/arch/luna88k/cbus sys/arch/luna88k/luna88k sys/arch/m88k/include sys/arch/m88k/m88k sys/arch/sparc64/include sys/arch/sparc64/sparc64 sys/dev/usb sys/kern sys/netinet sys/netinet6 sys/nfs sys/sys sys/uvm usr.sbin/ldpd == lib =============================================================== 01/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib libc ~ sys/getsockopt.2 > On localhost a user program may create a socket splicing loop. > After writing data into this loop, it was spinning forever causing > a kernel hang. Detect the loop by counting how often the same mbuf > is spliced. If that happens 128 times, assume that there is a loop > and abort the splicing with ELOOP. > Bug found by tedu@; OK tedu@ millert@ benno@ (bluhm@) == libexec =========================================================== 02/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec ld.so ~ powerpc/rtld_machine.c > Only need to sync the icache on the GOT for the old BSS PLT format > ok kettenis@ (guenther@) == regress =========================================================== 03/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress sys ~ kern/sosplice/error/args-udp-ENOTCONN.pl + kern/sosplice/error/args-ELOOP.pl + kern/sosplice/error/args-udp-ELOOP.pl > Test that splicing loops are aborted with ELOOP. (bluhm@) == sbin ============================================================== 04/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin disklabel ~ disklabel.c > correct pledge for disklabel -R -[fF] > ok tb@ (jsg@) == share ============================================================= 05/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man ~ man4/man4.armv7/fec.4 > fec attaches to fdt now (jsg@) ~ man9/sosplice.9 > On localhost a user program may create a socket splicing loop. > After writing data into this loop, it was spinning forever causing > a kernel hang. Detect the loop by counting how often the same mbuf > is spliced. If that happens 128 times, assume that there is a loop > and abort the splicing with ELOOP. > Bug found by tedu@; OK tedu@ millert@ benno@ (bluhm@) == sys =============================================================== 06/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/alpha/alpha ~ interrupt.c ~ mutex.c > rename _splraise to splraise > gets us a bit closer to an MI splraise api. (dlg@) arch/alpha/include ~ intr.h > rename _splraise to splraise > gets us a bit closer to an MI splraise api. (dlg@) arch/armv7/conf ~ GENERIC > Dynamically attach imxdog(4) using the FDT. (kettenis@) arch/armv7/imx ~ imxesdhc.c > Use "bus-width" property to determine whether 4-bit and 8-bit mode are > supported. (kettenis@) ~ files.imx ~ imx.c ~ imxdog.c > Dynamically attach imxdog(4) using the FDT. (kettenis@) arch/luna88k/cbus ~ cbus.c > rename raiseipl to splraise() > another step toward making splraise an MI api. > ok aoyama@ (dlg@) arch/luna88k/luna88k ~ machdep.c > rename raiseipl to splraise() > another step toward making splraise an MI api. > ok aoyama@ (dlg@) arch/m88k/include ~ intr.h > rename raiseipl to splraise() > another step toward making splraise an MI api. > ok aoyama@ (dlg@) arch/m88k/m88k ~ mutex.S ~ trap.c > rename raiseipl to splraise() > another step toward making splraise an MI api. > ok aoyama@ (dlg@) arch/sparc64/include ~ intr.h ~ psl.h > rework sparc64 splfoo functions to be more consistent with other archs > this also moves us toward having an MI splraise(). > sparc64 (and sparc) are different to the other archs because they > have macros that build templates. each spl uses that macro to create > an instance of an inline function specific to that spl call. > this moves it to having a single splraise inline that the spl api is > defined with. eg, #define splfoo() _splraise(IPL_FOO). > ok kettenis@ (dlg@) arch/sparc64/sparc64 ~ intr.c > rework sparc64 splfoo functions to be more consistent with other archs > this also moves us toward having an MI splraise(). > sparc64 (and sparc) are different to the other archs because they > have macros that build templates. each spl uses that macro to create > an instance of an inline function specific to that spl call. > this moves it to having a single splraise inline that the spl api is > defined with. eg, #define splfoo() _splraise(IPL_FOO). > ok kettenis@ (dlg@) dev/usb ~ uhidev.c > Do not execute the callback if the device is beeing detached. > Should prevent a race triggering a use-after-free reported by > martijn@ on bugs@ (mpi@) ~ usbdi.c > Remove the restriction for the usbd_ref_* functions to work just in case > of dev->dying. With this we also can use them on device closing, not just > detaching. > ok mpi (mglocker@) ~ utvfu.c ~ utvfu.h > * Start/stop audio bulk thread as consumer opens/closes device. > And as a result get rid of a few defines/flags. > * Fix _as_close() to and audio bulk thread exit. > * Change sc->sc_as_running into a flag; save an int. > From Patrick Keshishian > ok mpi (mglocker@) ~ utvfu.c > Ensure expected video endpoint has wMaxPacketSize > 0 during > utvfu_match(). > From Patrick Keshishian > ok mpi (mglocker@) ~ utvfu.c ~ utvfu.h > Remove tracking of endpoints in utvfu_{as,vs}_iface structs as these > are constants; save two more ints. > From Patrick Keshishian > ok mpi (mglocker@) kern ~ uipc_mbuf.c ~ uipc_socket.c > On localhost a user program may create a socket splicing loop. > After writing data into this loop, it was spinning forever causing > a kernel hang. Detect the loop by counting how often the same mbuf > is spliced. If that happens 128 times, assume that there is a loop > and abort the splicing with ELOOP. > Bug found by tedu@; OK tedu@ millert@ benno@ (bluhm@) netinet ~ in.c > Move the ioctl(2) logic of in{,6}_control() into two new functions > in{,6}_ioctl() that do not deal with sockets. > This will allow to automagically configure interface addresses in > the kernel without too many layer violations. > Required by upcoming umb(4). (mpi@) ~ tcp_output.c > On localhost a user program may create a socket splicing loop. > After writing data into this loop, it was spinning forever causing > a kernel hang. Detect the loop by counting how often the same mbuf > is spliced. If that happens 128 times, assume that there is a loop > and abort the splicing with ELOOP. > Bug found by tedu@; OK tedu@ millert@ benno@ (bluhm@) netinet6 ~ in6.c ~ in6_var.h > Move the ioctl(2) logic of in{,6}_control() into two new functions > in{,6}_ioctl() that do not deal with sockets. > This will allow to automagically configure interface addresses in > the kernel without too many layer violations. > Required by upcoming umb(4). (mpi@) nfs ~ nfs_vnops.c > make sure attrflag is initialized. from clang via david hill (tedu@) sys ~ mbuf.h > On localhost a user program may create a socket splicing loop. > After writing data into this loop, it was spinning forever causing > a kernel hang. Detect the loop by counting how often the same mbuf > is spliced. If that happens 128 times, assume that there is a loop > and abort the splicing with ELOOP. > Bug found by tedu@; OK tedu@ millert@ benno@ (bluhm@) uvm ~ uvm_map.c > In uvm_map(), call uvm_unmap_detach_intrsafe() if we have an interrupt-safe > map, to avoid grabbing the kernel lock when pool_get() needs to allocate > a new pool page. Hopefully this really is the last case where we might > grab > the kernel lock for interrupt-safe pools. > ok mpi@ (kettenis@) == usr.sbin ========================================================== 07/07 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin ldpd ~ adjacency.c ~ hello.c ~ packet.c > Rework the handling of Hello packets. > With the introduction of IPv6 support by RFC 7552, the handling of Hello > packets in ldpd became something incredibly complex. Neighbors can change > from single-stack LDP to dual-stack and vice-versa. They can change > their transport preference, their transport addresses (IPv4 and IPv6) > and even start or stop sending the Dual-Stack TLV. We also have to take > care to reject things like multiple adjacencies advertising different > transport-addresses for the same neighbor. ldpd was failing for some of > the cases mentioned above, this patch fixes these issues and attempts > to make the code easier to read. (renato@) ~ ldpd.c ~ ldpe.c > Do not create sockets for disabled address-families. (renato@) ~ ldpe.h ~ neighbor.c ~ packet.c > Implement a timeout for the session initialization FSM. > This prevents neighbors stuck in the initialization FSM to linger forever > as long as the associated transport connection is up. > This timeout can be seen in the 'Session Initialization State Transition > Diagram' of RFC 5036. The RFC, however, doesn't specify how much we > should wait. Let's use 180 seconds for that, the default LDP hold time. > Fixes IxANVL LDP test 6.15. (renato@) ~ hello.c ~ ldpd.h ~ ldpe.c ~ ldpe.h ~ neighbor.c > Implement support for the Configuration Sequence Number TLV. > The Configuration Sequence Number optional TLV is documented in RFC 5036, > pages 53 and 54. > Fixes IxANVL LDP test 23.10. (renato@) =============================================================================== _______________________________________________ odc mailing list [email protected] http://www.squish.net/mailman/listinfo/odc
