Build date: 1736809202 - Mon Jan 13 23:00:02 UTC 2025 Build cvs date: 1736792447 - Mon Jan 13 18:20:47 UTC 2025 Build id: 2025-01-14.1 Build tags: amd64-regress ports sysupgrade Applied the following diff(s): /home/anton/tmp/robsd/src-regress-sys-netinet6-rip6cksum.diff /home/anton/tmp/robsd/src-sys-em.diff /home/anton/tmp/robsd/src-sys-newvers.diff /home/anton/tmp/robsd/src-sys-uhidev-sispm.diff /home/anton/tmp/robsd/src-sysupgrade.diff P regress/sys/netinet/tcpthread/tcpthread.c P regress/usr.sbin/bgpd/integrationtests/Makefile U regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain1.conf U regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain2_1.conf U regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain2_2.conf U regress/usr.sbin/bgpd/integrationtests/extnh.sh U regress/usr.sbin/bgpd/integrationtests/extnh.test1.ok P share/man/man5/cargo-module.5 P sys/arch/arm64/stand/efiboot/efiboot.c P sys/dev/i2c/ihidev.c P sys/dev/usb/uvideo.c P sys/dev/usb/uvideo.h P sys/kern/kern_sysctl.c P sys/kern/kern_task.c P sys/kern/kern_timeout.c P sys/kern/subr_hibernate.c P sys/kern/uipc_socket.c P sys/ntfs/ntfs_ihash.c P sys/ntfs/ntfs_ihash.h P sys/ntfs/ntfs_subr.c P sys/sys/hibernate.h P usr.bin/tmux/cmd-parse.y P usr.sbin/bgpd/bgpd.8 P usr.sbin/bgpd/bgpd.conf.5 P usr.sbin/bgpd/bgpd.h P usr.sbin/bgpd/parse.y P usr.sbin/bgpd/printconf.c P usr.sbin/bgpd/rde.c P usr.sbin/bgpd/rde_peer.c P usr.sbin/bgpd/rde_update.c P usr.sbin/bgpd/session.c commit YjLGqU73oXW78Lpi Author: kirill Date: 2025/01/13 18:20:47 man/cargo-module.5: document MODCARGO_CARGOLOCK OK semarie@ tb@ share/man/man5/cargo-module.5 commit W3pGcu9y9h0HMeOY Author: mvs Date: 2025/01/13 18:10:20 Unlock the tcp(4) case of somove(). Tested and OK bluhm@. sys/kern/uipc_socket.c commit 36uEChPIU2tXh8Ym Author: mvs Date: 2025/01/13 18:09:24 Rework the INP tables walkthrough in the KERN_FILE_BYFILE case of the sysctl_file(). I don't like how KERN_FILE_BYFILE case of the sysctl_file() delivers sockets data to the userland. It not only takes exclusive netlock around all except divert socket tables walkthrough, but also does copyout() with mutex(9) held. Sounds strange, but the context switch is avoided because userland pages are wired. The table is protected with `inpt_mtx' mutex(9), so the socket lock or netlock should be take outside. Since we have no socket pointer, we can't use solock(). We can't use the only shared netlock because this left socket unprotected against concurrent threads which rely on solock_shared(). Now it is possible to rework sysctl_file(). We can use reference counting for all socket types, and bluhm@ introduced `inp_sofree_mtx' mutex(9) to protect `inp_socket'. The INP tables have the special iterator to safely release `inpt_mtx' during table walkthrough. The FILLSO() or FILLIT2() macros can't be used unrolled, because we need to push mutexes re-locking and solock() deep within. Introduce the FILLINPTABLE() macro which is the unrolling, but with the socket related locking dances. FILLIT2() macro is not required anymore and was merged with FILLIT(). Current implementation takes the reference on `inp_socket' and releases `inpt_mtx' mutex(9). Now it's possible to fairly use shared_solock() on socket instead of netlock while performing fill_file(). The copyout() is external for fill_file() and touches nothing required to be protected so it could be made lockless. The KERN_FILE_BYFILE case became mp-safe, but the rest sysctl_file() cases still not, so the sysctl_vslock() dances left as is. ok bluhm sys/kern/kern_sysctl.c commit PCq1m9jPytBju8Ac Author: krw Date: 2025/01/13 17:50:54 Zeroing free pages to improve compression became superfluous with the permanent adoption of RLE a decade ago. Nuke uvm_pmap_zero_everything(), reaping a measureable reduction in the time taken to suspend when there are lots of free pages. ok mlarkin@ sys/kern/subr_hibernate.c sys/sys/hibernate.h commit 6dTsnnsvbT7NsAZt Author: kirill Date: 2025/01/13 16:58:09 arm64/efiboot: load DTB on HONOR Magicbook 14 Art OK kettenis@ mglocker@ sys/arch/arm64/stand/efiboot/efiboot.c commit pwtc8CkUoKeBWofJ Author: kirill Date: 2025/01/13 15:33:34 sys/ihidev: move debug log resettign to the right place OK mglocker@ sys/dev/i2c/ihidev.c commit OXSQJ3TyrpvSMBVs Author: kirill Date: 2025/01/13 15:32:36 sys/uvideo: bypass unknown pixelformat to consumer The GUID format read from a camera usually begins with a null-terminated pixel format. Certain formats should be mapped, such as converting YUY2 to YUYV and I420 to YVU420, among others. Instead of rejecting unknown driver formats like M420, I bypass them to the consumer, which likely knows how to handle these formats. OK mglocker@ sys/dev/usb/uvideo.c sys/dev/usb/uvideo.h commit qZkjethgqWjmCAGg Author: claudio Date: 2025/01/13 14:18:07 Implement basic test for RFC8950 regress/usr.sbin/bgpd/integrationtests/Makefile regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain1.conf regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain2_1.conf regress/usr.sbin/bgpd/integrationtests/bgpd.extnh.rdomain2_2.conf regress/usr.sbin/bgpd/integrationtests/extnh.sh regress/usr.sbin/bgpd/integrationtests/extnh.test1.ok commit yx0W8H0e7OuPe8V7 Author: claudio Date: 2025/01/13 13:58:41 Do not depend on RW_SLEEPFAIL in ntfs_ntlookup While it is a cute optimisation it makes no sense to be a special snowflake since there is no parallelism in this code. Instead use the same pattern used by the other filesystems that detects a collision in ntfs_nthashins() followed by a retry of lookup. Tested by ian@ and jmatthew@ OK mpi@ sys/ntfs/ntfs_ihash.c sys/ntfs/ntfs_ihash.h sys/ntfs/ntfs_subr.c commit epgyaCL9dZJdjOio Author: claudio Date: 2025/01/13 13:50:34 Extended nexthop encoding support (RFC8950) for the RIB This diff allows to establish IPv6 sessions and distribute IPv4 routes with IPv6 nexthop over those sessions. This is enough to use RFC 8950 on route reflectors or route servers. It adds the support for IPv6 nexthops for IPv4 routes to the RDE / RIB. The problem is that the FIB is not ready for that yet (the nexthop of a kroute has to be of the same address family as the prefix) and fixing that is not trivial. Because of this prefixes using a nexthop in a different address family are not sent to the FIB. OK tb@ usr.sbin/bgpd/bgpd.8 usr.sbin/bgpd/bgpd.conf.5 usr.sbin/bgpd/bgpd.h usr.sbin/bgpd/parse.y usr.sbin/bgpd/printconf.c usr.sbin/bgpd/rde.c usr.sbin/bgpd/rde_peer.c usr.sbin/bgpd/rde_update.c usr.sbin/bgpd/session.c commit Pb9wyVlKBR4I0s60 Author: bluhm Date: 2025/01/13 12:55:13 Ignore "Software caused connection abort" error from accept(2) system call. This is normal behavior in this test. reported by anton@; OK mvs@ regress/sys/netinet/tcpthread/tcpthread.c commit ARNZM32P9wxQCVY2 Author: nicm Date: 2025/01/13 08:58:34 Count line numbers correctly inside strings, reported by Pedro Navarro in GitHub issue 4325. usr.bin/tmux/cmd-parse.y commit sTtwNw7dt0M6YrPn Author: mvs Date: 2025/01/13 03:21:10 taskq_del_barrier(9) and timeout_del_barrier(9) should always call taskq_barrier(9) and timeout_barrier(9) respectively. In the case that task or timeout were scheduled to run both *_del_barrier(9) only remove it from pending queue and doesn't wait its finish. However task could be simultaneously running and scheduled to the next run, so they need to always wait until running handler has completed. ok dlg sys/kern/kern_task.c sys/kern/kern_timeout.c