Build date: 1755122403 - Wed Aug 13 22:00:03 UTC 2025 Build cvs date: 1755115663 - Wed Aug 13 20:07:43 UTC 2025 Build id: 2025-08-14.1 Build tags: amd64-regress ports sysupgrade Applied the following diff(s): /home/anton/tmp/robsd/src-sys-em.diff /home/anton/tmp/robsd/src-sys-uhidev-sispm.diff /home/anton/tmp/robsd/src-sysupgrade.diff P distrib/sets/lists/man/mi P etc/netstart P gnu/gcc/gcc/config/m88k/m88k-protos.h P gnu/gcc/gcc/config/m88k/m88k.c P gnu/gcc/gcc/config/m88k/m88k.h P gnu/gcc/gcc/config/m88k/m88k.md P gnu/gcc/gcc/config/m88k/m88k.opt P gnu/usr.bin/gcc/gcc/config/m88k/m88k-protos.h P gnu/usr.bin/gcc/gcc/config/m88k/m88k.c P gnu/usr.bin/gcc/gcc/config/m88k/m88k.h P gnu/usr.bin/gcc/gcc/config/m88k/m88k.md P sys/arch/m88k/m88k/m8820x_machdep.c P sys/arch/m88k/m88k/pmap.c P sys/arch/m88k/m88k/subr.S P sys/kern/kern_pledge.c P sys/net/route.c P sys/netinet6/icmp6.c P sys/netinet6/in6.h P sys/netinet6/ip6_input.c P sys/netinet6/ip6_var.h M usr.sbin/bgpd/session.c P usr.sbin/rad/rad.conf.5 P usr.sbin/vmd/config.c P usr.sbin/vmd/control.c P usr.sbin/vmd/priv.c P usr.sbin/vmd/proc.c P usr.sbin/vmd/proc.h P usr.sbin/vmd/vm_agentx.c P usr.sbin/vmd/vmd.c P usr.sbin/vmd/vmm.c commit S7fVA6zpAH6tWKs3 Author: miod Date: 2025/08/13 20:07:43 Remove orphaned ASM_OUTPUT_BEFORE_CASE_LABEL macro. Reduce jump table alignment. gnu/gcc/gcc/config/m88k/m88k.h commit wUbt7aKBku8abgmD Author: miod Date: 2025/08/13 20:07:21 Turn INITIAL_ELIMINATION_OFFSET into a function. NFCI (yet) gnu/gcc/gcc/config/m88k/m88k-protos.h gnu/gcc/gcc/config/m88k/m88k.c gnu/gcc/gcc/config/m88k/m88k.h commit 5rtGeGFjJ7YUhK9n Author: miod Date: 2025/08/13 20:07:00 Use better costs for integer divide when targetting 88110. gnu/gcc/gcc/config/m88k/m88k.c commit kVbFp01CUX2jhEOm Author: miod Date: 2025/08/13 20:06:44 Add a few force_reg to the integer division logic, when working with constants. gnu/gcc/gcc/config/m88k/m88k.md commit QDhd29YlIxJVIZCX Author: miod Date: 2025/08/13 20:06:24 Remove lies in branch delay slot information. Also 8 spaces vs tabs police. gnu/gcc/gcc/config/m88k/m88k.md commit meeBPapJ3tv9KIXT Author: miod Date: 2025/08/13 20:05:30 Rename emit_* helpers to m88k_emit_* to make sure they don't risk conflicting with anything. gnu/gcc/gcc/config/m88k/m88k-protos.h gnu/gcc/gcc/config/m88k/m88k.c gnu/gcc/gcc/config/m88k/m88k.md commit opewCB4hUQoyNa7l Author: miod Date: 2025/08/13 20:05:02 Minor cleanups. gnu/gcc/gcc/config/m88k/m88k-protos.h gnu/gcc/gcc/config/m88k/m88k.c gnu/gcc/gcc/config/m88k/m88k.h commit WVXCE4ne7yeI3444 Author: miod Date: 2025/08/13 20:04:29 Sync with recent changes to the gcc3 m88k backend. gnu/gcc/gcc/config/m88k/m88k-protos.h gnu/gcc/gcc/config/m88k/m88k.c gnu/gcc/gcc/config/m88k/m88k.h gnu/gcc/gcc/config/m88k/m88k.md gnu/gcc/gcc/config/m88k/m88k.opt commit UBpwnsx5wLhRWZJn Author: florian Date: 2025/08/13 16:52:27 Document reachable time and retrans timer settings. IPv6 has many buttons to push and knobs to twiddle... These two are in the router advertisement packet header, so we have to send something (0). slaacd ignores the values and there is no way to set the values in the kernel, either on OpenBSD. No idea what other systems do with this. Prodded by schwarze some time ago. usr.sbin/rad/rad.conf.5 commit yvVShS2vut4Tvnek Author: florian Date: 2025/08/13 16:48:04 Remove net.inet6.ip6.soiikey sysctl When we implemented RFC 7217 - "A Method for Generating Semantically Opaque Interface Identifiers with IPv6 Stateless Address Autoconfiguration (SLAAC)" we added support for global addresses as well as link local addresses. We quickly learned that some hosting providers insisted on link-local addresses derived from mac-addresses (eui64). They would only route IPv6 traffic to those. So we disabled RFC 7217 for link-local addresses. This means that we no longer need the sysctl, slaacd(8) can just read /etc/soii.key directly instead of bothering the kernel. These are the kernel bits, userland was committed a week ago. Input & OK bluhm sys/kern/kern_pledge.c sys/netinet6/in6.h sys/netinet6/ip6_input.c sys/netinet6/ip6_var.h commit C2I7hWCSTGvZ26um Author: kn Date: 2025/08/13 16:36:10 Printe IPv6 route commands under -n again Regression fix for r1.225 from 2022: dry-run mode wouldn't show how IPv6 routes are set up since I accidentially skipped the entire ip6routes() call, although the function itself already handles -n aka. PRINT_ONLY. OK deraadt etc/netstart commit hQD8zmoaxlWwEDnd Author: miod Date: 2025/08/13 16:23:14 pmap_changebit() used to be invoked from various code paths, but the only one which remains to this day is removing the "write protected" bit. Rename it to pmap_write_protect() and remove the unnecessary actions (such as vm_page pg_flags update) to make things a bit less obscure. sys/arch/m88k/m88k/pmap.c commit ao0ZwcwFTlG91Hh9 Author: miod Date: 2025/08/13 16:21:32 In the 88110 flavour of pmap_copypage(), perform the cache line allocate on the destination, not the source (doh). sys/arch/m88k/m88k/subr.S commit NUcyVce5bcbSYBtA Author: miod Date: 2025/08/13 15:43:01 Replace ORDER_REGS_FOR_LOCAL_ALLOC with a smarter routine which will only update reg_alloc_order[] if it needs to change (i.e. when switching between leaf and non-leaf functions). Since most functions are non-leaf, this saves memcpy time. Idea borrowed from the sparc backend which does something similar. gnu/usr.bin/gcc/gcc/config/m88k/m88k-protos.h gnu/usr.bin/gcc/gcc/config/m88k/m88k.c gnu/usr.bin/gcc/gcc/config/m88k/m88k.h commit KgNqgLAFsqjNyASm Author: miod Date: 2025/08/13 15:41:26 Because the 88110 has some static branch prediction, code was added in gcc long ago to decide whether to emit bb1 or bb0 with the branch condition reversed, depending on whether the branch would be predicted taken or not. Since then, gcc grew machine-independent code to compute the likeliness of a branch being taken, which you can influence with __predict_true and __predict_false. Replace the old logic looking at the instructions surrounding the branch, and trust the computed branch probability. gnu/usr.bin/gcc/gcc/config/m88k/m88k-protos.h gnu/usr.bin/gcc/gcc/config/m88k/m88k.c gnu/usr.bin/gcc/gcc/config/m88k/m88k.md commit XDvJ14jt6fPF4y2b Author: miod Date: 2025/08/13 15:38:28 In output_call(), delay computing some local until it really turns out to be needed. gnu/usr.bin/gcc/gcc/config/m88k/m88k.c commit p3MMPGGqpHWz2Pbr Author: bluhm Date: 2025/08/13 13:00:29 Clear RTF_MPATH flag for cloned routes. If two CPUs concurrently send to the same destination IP, both will call rtalloc_mpath() and rt_clone(). The resulting cloned routes inherit the RTF_MPATH flag from the cloning route so two rtentry ARP entries are added to the routing table and arp_list. Later, when the ARP entries expire in arptimer(), the function arptfree(rt) will call rtdeletemsg(rt) which uses rtrequest_delete() in order to delete the expired rtentry. However, the expired rtentry is not directly passed to rtrequest_delete(), so it will re-lookup the entry based on lookup keys and might delete the other matching entry. When arptimer() continues looping over the arp_list, it will access the already released second entry and crash due to use-after-free. Prevent this problem by clearing the RTF_MPATH flag for RTM_RESOLVE in rtrequest(). This way only one ARP entry can be created. from markus@ sys/net/route.c commit YCo9nQbCBmZba0Lk Author: mvs Date: 2025/08/13 11:30:31 Unlock the ICMPV6CTL_MTUDISC_*WAT cases of icmp6_sysctl(). Also deny negative values for both `icmp6_mtudisc_*wat' variables. They are used together, but the usage path looks incomplete. Changing the API to disallow disabling watermarks would hurt nobody. ok bluhm sys/netinet6/icmp6.c commit QPAVRRPsuCIG801x Author: dv Date: 2025/08/13 10:26:31 Simplify vmd(8) ipc setup in proc.c. The ipc code in proc.c assumed a mesh of processes resembling a fully connected graph. vmd(8) has a simple hub/spoke model. This removes the mesh-centric code and simplifies the socketpair(2) usage to just at fork(2)/execve(2) time. This removes a security issue where untrusted imsg data was used for indexing into complex structures holding the file descriptors for this messh of sockets. An attacker controlling one end of an imsg channel could craft a message to cause out of bound access array access. Reported by Shibo Ai, Shawn Zhang, Hugo Lefeuvre of UBC Systopia Lab. Tested by phessler@, ok deraadt@ usr.sbin/vmd/config.c usr.sbin/vmd/control.c usr.sbin/vmd/priv.c usr.sbin/vmd/proc.c usr.sbin/vmd/proc.h usr.sbin/vmd/vm_agentx.c usr.sbin/vmd/vmd.c usr.sbin/vmd/vmm.c commit yNlXeRl2WY3si1oJ Author: miod Date: 2025/08/13 08:45:22 After the changes in 1.63, the two #if MULTIPROCESSOR blocks at the end of m8820x_dma_cachectl() have identical contents in the #if and the #else parts, so unifdef that part. sys/arch/m88k/m88k/m8820x_machdep.c commit igjEwjXERyc3U3a6 Author: deraadt Date: 2025/08/13 05:28:19 sync distrib/sets/lists/man/mi commit QLvWDeO6CcFy9iq8 Author: matthieu Date: 2025/08/12 17:01:56 update MODULES