Build date: 1764716403 - Tue Dec 2 23:00:03 UTC 2025 Build cvs date: 1764705799 - Tue Dec 2 20:03:19 UTC 2025 Build id: 2025-12-03.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 share/man/man4/man4.riscv64/Makefile U share/man/man4/man4.riscv64/sgmsi.4 P share/man/man5/port-modules.5 P sys/arch/riscv64/conf/GENERIC P sys/arch/riscv64/conf/RAMDISK P sys/arch/riscv64/conf/files.riscv64 U sys/arch/riscv64/dev/sgmsi.c P sys/dev/pci/drm/amd/amdgpu/amdgpu_device.c P sys/dev/pci/drm/amd/amdgpu/aqua_vanjaram.c P sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c P sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c P sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c P sys/dev/pci/drm/amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c P sys/dev/pci/drm/amd/display/dc/dccg/dcn35/dcn35_dccg.c P sys/dev/pci/drm/amd/display/dc/hwss/dcn20/dcn20_hwseq.c P sys/dev/pci/drm/amd/display/dc/hwss/dcn35/dcn35_hwseq.c P sys/dev/pci/drm/amd/display/dc/link/protocols/link_dp_capability.c P sys/dev/pci/drm/i915/display/intel_psr.c P sys/dev/pci/drm/include/linux/math64.h P sys/dev/pci/drm/radeon/radeon_fence.c M sys/dev/usb/uhidev.c P sys/net/if_aggr.c P sys/net/if_bridge.c P sys/net/if_ethersubr.c P sys/net/if_tpmr.c P sys/net/if_trunk.c P sys/net/if_veb.c P sys/netinet/if_ether.h P sys/netinet/igmp.c P sys/netinet/in.c P sys/netinet/in_pcb.c P sys/netinet/in_var.h P sys/netinet/ip_output.c P usr.bin/tmux/cmd-refresh-client.c P usr.bin/tmux/input.c P usr.bin/tmux/options-table.c P usr.bin/tmux/tmux.1 P usr.bin/tmux/tmux.h P usr.bin/tmux/tty-keys.c P usr.bin/tmux/tty.c P usr.sbin/bgpctl/output.c P usr.sbin/bgpctl/output_json.c P usr.sbin/bgpctl/output_ometric.c P usr.sbin/bgpd/bgpd.h P usr.sbin/bgpd/rde.c P usr.sbin/bgpd/rde.h P usr.sbin/bgpd/rde_adjout.c P usr.sbin/bgpd/rde_peer.c P usr.sbin/bgpd/rde_rib.c P usr.sbin/bgpd/rde_update.c M usr.sbin/bgpd/session.c P usr.sbin/rpki-client/ccr.c P usr.sbin/rpki-client/mft.c P usr.sbin/rpki-client/rpki-client.8 P usr.sbin/rpki-client/rsc.c P usr.sbin/rpki-client/tak.c P usr.sbin/rpki-client/x509.c P usr.sbin/vmd/fw_cfg.c P usr.sbin/vmd/i8253.c P usr.sbin/vmd/loadfile_elf.c P usr.sbin/vmd/ns8250.c P usr.sbin/vmd/pci.c P usr.sbin/vmd/vioblk.c P usr.sbin/vmd/vionet.c P usr.sbin/vmd/vioqcow2.c P usr.sbin/vmd/vioscsi.c P usr.sbin/vmd/virtio.c P usr.sbin/vmd/vm.c P usr.sbin/vmd/x86_vm.c commit BFCnrwzUnycwSiSj Author: kettenis Date: 2025/12/02 20:03:19 sgmsi(4) share/man/man4/man4.riscv64/Makefile share/man/man4/man4.riscv64/sgmsi.4 commit Bde0iAke8n02ouAH Author: kettenis Date: 2025/12/02 19:57:29 Add sgmsi(4), a driver for the MSI controller implementation on Sophgo SG2042 SoCs. ok jca@ sys/arch/riscv64/conf/GENERIC sys/arch/riscv64/conf/RAMDISK sys/arch/riscv64/conf/files.riscv64 sys/arch/riscv64/dev/sgmsi.c commit 2gAblYdMruv90Ep1 Author: bluhm Date: 2025/12/02 15:52:04 Replace macro IFP_TO_IA() with function in_ifp2ia(). OK claudio@ sys/netinet/igmp.c sys/netinet/in.c sys/netinet/in_pcb.c sys/netinet/in_var.h sys/netinet/ip_output.c commit HIC6MkLFSmOD7Xbg Author: stu Date: 2025/12/02 13:05:28 Drop MODTCL_CONFIG and MODTK_CONFIG. Replace with equivalents in the only ports affected: math/graphviz and math/R. Tcl/Tk-dependent ports normally need the location, not the full path to the config files. ok sthen@ share/man/man5/port-modules.5 commit d5j8wDAQjEwjIvVB Author: claudio Date: 2025/12/02 13:03:54 Mechanical rename of prefix_adjout to adjout_prefix. OK tb@ usr.sbin/bgpctl/output.c usr.sbin/bgpctl/output_json.c usr.sbin/bgpctl/output_ometric.c commit 7IKVNA2jcqPuu6h2 Author: claudio Date: 2025/12/02 13:03:35 Mechanical rename of prefix_adjout to adjout_prefix. All the things for the Adj-RIB-Out handling should use adjout_ as prefix. So both the struct and the various functions are renamed. This makes it clearer what belongs to the adjout code. OK tb@ usr.sbin/bgpd/rde.c usr.sbin/bgpd/rde.h usr.sbin/bgpd/rde_adjout.c usr.sbin/bgpd/rde_peer.c usr.sbin/bgpd/rde_rib.c usr.sbin/bgpd/rde_update.c commit QCM3v4JVfBZwq61L Author: tb Date: 2025/12/02 12:47:48 rpki-client: ensure TAK certificateURIs are https or rsync As required by RFC 9691, section 2.2.1. Gets rid of an old XXX. ok claudio usr.sbin/rpki-client/tak.c commit ZjJR8lf1DzpebXxZ Author: job Date: 2025/12/02 12:21:39 Switch to IANA assigned OID for CCR OK tb@ usr.sbin/rpki-client/ccr.c usr.sbin/rpki-client/rpki-client.8 usr.sbin/rpki-client/x509.c commit cW8GcWhM84mxYQM6 Author: claudio Date: 2025/12/02 10:51:20 Update show rib mem output now that there is adjout_attr objects to track. OK tb@ usr.sbin/bgpctl/output.c usr.sbin/bgpctl/output_json.c usr.sbin/bgpctl/output_ometric.c commit iso2LhlyPyMBLmq8 Author: claudio Date: 2025/12/02 10:50:19 Introduce an adjout_attr object that decouples some of the common data from the prefix_adjout. This helps to reduce the memory footprint by around 20% in large IXP setups. The size of struct prefix_adjout is critical since we allocate very many of those. e.g. 250k prefixes * 750 peer = 187mio objects. Every byte saved makes a big difference. OK tb@ usr.sbin/bgpd/bgpd.h usr.sbin/bgpd/rde.c usr.sbin/bgpd/rde.h usr.sbin/bgpd/rde_adjout.c usr.sbin/bgpd/rde_peer.c usr.sbin/bgpd/rde_rib.c usr.sbin/bgpd/rde_update.c commit as5hDwYxlE5vp2FV Author: tb Date: 2025/12/02 10:34:48 rpki-client: treat ASN1_STRING as opaque in rsc, tak, x509 ok claudio usr.sbin/rpki-client/rsc.c usr.sbin/rpki-client/tak.c usr.sbin/rpki-client/x509.c commit 6omlZyYdj7typdiI Author: nicm Date: 2025/12/02 08:20:32 Add a get-clipboard option which when enabled (the default is off) uses the same mechanism as palette requests to request clipboard from the terminal and forward to the requesting pane. Remove the now-redundant forward-to-pane ability from "refresh-client -l". GitHub issue 4275. usr.bin/tmux/cmd-refresh-client.c usr.bin/tmux/input.c usr.bin/tmux/options-table.c usr.bin/tmux/tmux.1 usr.bin/tmux/tmux.h usr.bin/tmux/tty-keys.c usr.bin/tmux/tty.c commit AUqsCHxO3nm1f1jC Author: tb Date: 2025/12/02 06:54:08 rpki-client: convert mft.c to opaque ASN1_STRING Mostly more of the same. In addition the comparison functions can use ASN1_STRING_cmp() instead of doing most of it by hand. The additional type check this introduces is fine since the ASN.1 template ensures that. Annotate a spot where we fail to ensure that the unused bits octet is zero, thus libcrypto's misdesign introduces a few bits of malleability for every hash that ends in zero bits. This will be easier to fix later. ok claudio usr.sbin/rpki-client/mft.c commit 2pgufTjsM6JgGGNG Author: dlg Date: 2025/12/02 04:15:07 use per cpu refs in the input path instead of one refcnt per port. passing packets into tpmr relies on taking a ref from an smr critical section so the tprm_port struct can be used while interacting with the larger network stack because you can't sleep while in an smr critical section and the network stack has sleeping points. this is fine, but it's atomic ops against the same refcnt in the one tpmr_port struct that can be running in parallel on all the softnet threads. this means the cacheline under this refcnt gets pulled around a lot, which in turn affects performance. to compensate for this loss in performance, this diff adds per cpu refcnts that act as a proxy to the tpmr_port refcnt. this effectively hashes the softnet threads into individual refcnts on separate cache lines. unfortunately, softnet threads can move between cpus because the network stack has sleeping points. this prevents us from using the refcnt on the current cpu for both the take and rele operations, cos the current cpu changes. this diff handles that by picking the refcnt on the current cpu, but carries a pointer to it from the ep_port_take operation to the ep_port_rele operation. this also uses these per cpu refs for the outgoing port when pushing a packet out on the wire. hrvoje popovski measured tpmr between two ix ports going from 5.4 to 6.5 Mpps, and on mcx going from 5.5 to 7.4 Mpps. jmatthew@ points out that this approach is similar to hazard pointers. sys/net/if_tpmr.c commit lY1lKKecFvV2UWnp Author: dlg Date: 2025/12/02 04:03:42 use per cpu refs in the input path instead of one refcnt per port. passing packets into veb relies on taking a ref from an smr critical section so the veb_port struct can be used while interacting with the larger network stack because you can't sleep while in an smr critical section and the network stack has sleeping points. this is fine, but it's atomic ops against the same refcnt in the one veb_port struct that can be running in parallel on all the softnet threads. this means the cacheline under this refcnt gets pulled around a lot, which in turn affects performance. to compensate for this loss in performance, this diff adds per cpu refcnts that act as a proxy to the veb_port refcnt. this effectively hashes the softnet threads into individual refcnts on separate cache lines. unfortunately, softnet threads can move between cpus because the network stack has sleeping points. this prevents us from using the refcnt on the current cpu for both the take and rele operations, cos the current cpu changes. this diff handles that by picking the refcnt on the current cpu, but carries a pointer to it from the ep_port_take operation to the ep_port_rele operation. this also uses these per cpu refs in the veb_transmit path. benchmarks by hrvoje popovski and myself show a(n annoyingly) small but still present improvement in performance. one of hvroje's tests showed ix going from 5.6 to 5.7 Mpps on ix(4) interfaces, and 6.0 to 6.1 Mpps on mcx. my stuff didn't go this fast, but noted less variation in the pps when running this diff. sys/net/if_veb.c commit oaIaWZri1y8wl1yr Author: dlg Date: 2025/12/02 03:50:56 use per cpu refs in the input path instead of one refcnt per port. previously aggr (and trunk) would swap the if_input handler on their port interfaces to intercept packets and make them appear to be received by aggr, but this relied on the net lock to coordinate and ensure the references to everything were safe. making aggr safe to call without the netlock meant using refcnts to ensure the aggr_port struct would stay alive while it's being used, but this means a couple of atomic operations were added to every packet going through aggr. this is fine, but it's atomic ops against the same refcnt in the one aggr_port struct that can be running in parallel on all the softnet threads. this means the cacheline under this refcnt gets pulled around a lot, which in turn affects performance. to compensate for this loss in performance, this diff adds per cpu refcnts that act as a proxy to the aggr_port refcnt. this effectively hashes the softnet threads into individual refcnts on separate cache lines. unfortunately, softnet threads can move between cpus because the network stack has sleeping points. this prevents us from using the refcnt on the current cpu for both the take and rele operations, cos the current cpu changes. this diff handles that by picking the refcnt on the current cpu, but carries a pointer to it from the ep_port_take operation to the ep_port_rele operation. im bad at science and i lost some of the benchmark results, but this does provide a noticable performance bump. sys/net/if_aggr.c commit 2MOTUfrsWn2P587F Author: dlg Date: 2025/12/02 03:24:19 let the ether_port ref api have the caller carry local state for the port this means ether_input will have a value on the stack that the port drivers can use to keep track of a reference with, rather than having to rely on implicit state (eg, which cpu they're running on) which can change (eg, maybe there's rwlocks in the network stack). sys/net/if_aggr.c sys/net/if_bridge.c sys/net/if_ethersubr.c sys/net/if_tpmr.c sys/net/if_trunk.c sys/net/if_veb.c sys/netinet/if_ether.h commit zNDM5KDL51673swA Author: dv Date: 2025/12/02 02:31:10 Remove redundant program name logging in vmd(8). The log.c init function already configures __progname as a default log message prefix. No need to include it explicitly anymore. ok mlarkin@ usr.sbin/vmd/fw_cfg.c usr.sbin/vmd/i8253.c usr.sbin/vmd/loadfile_elf.c usr.sbin/vmd/ns8250.c usr.sbin/vmd/pci.c usr.sbin/vmd/vioblk.c usr.sbin/vmd/vionet.c usr.sbin/vmd/vioqcow2.c usr.sbin/vmd/vioscsi.c usr.sbin/vmd/virtio.c usr.sbin/vmd/vm.c usr.sbin/vmd/x86_vm.c commit xf98BbfNK2oSvGRL Author: dlg Date: 2025/12/02 00:12:04 wrap the veb_port refcnt ops to make it a bit easier to read. no functional change sys/net/if_veb.c commit gBZbw8Jas7WGt4HQ Author: jsg Date: 2025/12/01 23:32:16 drm/amd/display: Prevent Gating DTBCLK before It Is Properly Latched From Fangzhi Zuo 53ca559992e6837643ca12ff33c2eea9af225ad9 in linux-6.12.y/6.12.60 cfa0904a35fd0231f4d05da0190f0a22ed881cce in mainline linux sys/dev/pci/drm/amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c sys/dev/pci/drm/amd/display/dc/dccg/dcn35/dcn35_dccg.c commit gTOnvKKV0mD2eo7a Author: jsg Date: 2025/12/01 23:29:35 drm/amd/display: Insert dccg log for easy debug From Charlene Liu 25dcf6299dc963d4a884308ded68681b68d9e9e1 in linux-6.12.y/6.12.60 35bcc9168f3ce6416cbf3f776758be0937f84cb3 in mainline linux sys/dev/pci/drm/amd/display/dc/dccg/dcn35/dcn35_dccg.c commit DC63gNsSPL4G9fjn Author: jsg Date: 2025/12/01 23:26:56 drm/amd/display: disable DPP RCG before DPP CLK enable From Charlene Liu b1515304a5234c787cb8cf1bd96567c3548d283c in linux-6.12.y/6.12.60 1bcd679209420305a86833bc357d50021909edaf in mainline linux sys/dev/pci/drm/amd/display/dc/dccg/dcn35/dcn35_dccg.c sys/dev/pci/drm/amd/display/dc/hwss/dcn35/dcn35_hwseq.c commit QHkqJMtnSNrzh8AZ Author: jsg Date: 2025/12/01 23:23:37 drm/amd/display: avoid reset DTBCLK at clock init From Charlene Liu 467904aabbfd761c475e9408f081d5476c0773c5 in linux-6.12.y/6.12.60 0ae47e971b9add8f7b8f8d55ac5f407f6f346758 in mainline linux sys/dev/pci/drm/amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c commit jpcUUMHtTNf9I7Uq Author: jsg Date: 2025/12/01 23:21:29 drm/i915/dp_mst: Disable Panel Replay From Imre Deak 3e5271f22404bea97a39b02b188f05e040a02cb8 in linux-6.12.y/6.12.60 f2687d3cc9f905505d7b510c50970176115066a2 in mainline linux sys/dev/pci/drm/i915/display/intel_psr.c commit hHZpSoMCthZpzmU4 Author: jsg Date: 2025/12/01 23:19:53 drm/amdgpu: fix gpu page fault after hibernation on PF passthrough From Samuel Zhang a45d6359eefb41e08d374a3260b10bff5626823b in linux-6.12.y/6.12.60 eb6e7f520d6efa4d4ebf1671455abe4a681f7a05 in mainline linux sys/dev/pci/drm/amd/amdgpu/aqua_vanjaram.c sys/dev/pci/drm/amd/amdgpu/gfx_v9_4_3.c commit CqNDWp3ue3D6BHcj Author: jsg Date: 2025/12/01 23:17:36 drm/amd/display: Clear the CUR_ENABLE register on DCN20 on DPP5 From Ivan Lipski a077ec70561b0dce1863bea00a52c81a2ca6f147 in linux-6.12.y/6.12.60 5bab4c89390f32b2f491f49a151948cd226dd909 in mainline linux sys/dev/pci/drm/amd/display/dc/hwss/dcn20/dcn20_hwseq.c commit f7O5PNjgEUAumreO Author: jsg Date: 2025/12/01 23:15:05 drm/amd/display: Fix pbn to kbps Conversion From Fangzhi Zuo ded77c1209169bd40996caf5c5dfe1a228a587ab in linux-6.12.y/6.12.60 1788ef30725da53face7e311cdf62ad65fababcd in mainline linux sys/dev/pci/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c commit kkhWgve8kPFsTXL6 Author: jsg Date: 2025/12/01 23:12:15 drm/amd/display: Move sleep into each retry for retrieve_link_cap() From Mario Limonciello a45450c36e3a568b8c20f4bd1e0bbb2507146a6d in linux-6.12.y/6.12.60 71ad9054c1f241be63f9d11df8cbd0aa0352fe16 in mainline linux sys/dev/pci/drm/amd/display/dc/link/protocols/link_dp_capability.c commit fvUyvYD5NZAn6YhB Author: jsg Date: 2025/12/01 23:09:39 drm/amd/display: Increase DPCD read retries From Mario Limonciello cd145ed8c56f04bb13f3a18bfe57924beaad17a3 in linux-6.12.y/6.12.60 8612badc331bcab2068baefa69e1458085ed89e3 in mainline linux sys/dev/pci/drm/amd/display/dc/link/protocols/link_dp_capability.c commit iqarhqHpNO3KY1DU Author: jsg Date: 2025/12/01 23:07:42 drm/amdgpu: Skip emit de meta data on gfx11 with rs64 enabled From Yifan Zha 806f54a7598825570a89b6fba1033b40e49a8792 in linux-6.12.y/6.12.60 80d8a9ad1587b64c545d515ab6cb7ecb9908e1b3 in mainline linux sys/dev/pci/drm/amd/amdgpu/gfx_v11_0.c commit veCbMFObIgHmPbIl Author: jsg Date: 2025/12/01 23:04:57 drm/amd: Skip power ungate during suspend for VPE From Mario Limonciello 349238d296fc30d9b593cc6640033d5103e395fb in linux-6.12.y/6.12.60 31ab31433c9bd2f255c48dc6cb9a99845c58b1e4 in mainline linux sys/dev/pci/drm/amd/amdgpu/amdgpu_device.c commit EUKDAnu6EsKCThZQ Author: jsg Date: 2025/12/01 23:03:12 drm/radeon: delete radeon_fence_process in is_signaled, no deadlock From Robert McClinton 73bc12d6a547f9571ce4393acfd73c004e2df9e5 in linux-6.12.y/6.12.60 9eb00b5f5697bd56baa3222c7a1426fa15bacfb5 in mainline linux sys/dev/pci/drm/radeon/radeon_fence.c commit hzLXDpU8QEjFO35r Author: jsg Date: 2025/12/01 23:00:01 add DIV_U64_ROUND_UP() for 6.12.60 drm sys/dev/pci/drm/include/linux/math64.h