This is a display of mostly-automatically-classified git commits from 2026-01-05 to 2026-01-11.
Table of contents and commits per category:
| (3) | Highlighted commits (these are copies, not in stats) | |
| 3 | 1.7% | Userland programs |
| 14 | 7.8% | Documentation |
| 38 | 21.1% | Hardware support |
| 14 | 7.8% | Networking |
| 20 | 11.1% | System administration |
| 3 | 1.7% | Libraries |
| 2 | 1.1% | Filesystems |
| 36 | 20.0% | Kernel |
| 19 | 10.6% | Build system |
| 3 | 1.7% | Internal organizational stuff |
| 13 | 7.2% | Testing |
| 5 | 2.8% | Style, typos, and comments |
| 6 | 3.3% | Contrib code |
| 4 | 2.2% | Reverted commits |
| 0 | 0.0% | Unclassified commits |
| 180 | 100% | total |
| Technical notes about this page |
For extra visibility, these are copies of commits found in
other sections. Most (if not all) come from the commit message
containing "Relnotes:", or commits modifying
UPDATING.
Zstd is a discrete, self-contained system component. To match how we package zlib, bzip2 and xz, move it to its own package, with a separate lib package. Add the new package to the minimal set, since this is a core component that users expect to be installed. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53603
The apst_data tunable allows APST configuration to be adjusted during controller initialization. It accepts an array of encoded integers, each defining specific transition parameters. Relnotes: YES Signed-off-by: Alexey Sukhoguzov <sap@eseipi.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1444
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54628
Commits about commands found in man section 1 (other than networking).
This patch resolves inconsistent behavior between the -k option and other related flags, including -P. Previously, using -k resulted in output displayed in 1024-byte blocks, which did not align with the behavior of similar options such as -m and -g, where output is shown in 1M-blocks and 1G-blocks respectively. The updated implementation ensures that -k now correctly displays sizes in 1K-blocks. In addition, the patch incorporates the POSIX requirement that when both -k -P are specified, the block size must be explicitly forced to 1024-blocks. Together, these changes make the behavior of -k consistent, predictable, and compliant with the standard. Signed-off-by: Ankush Mondal <mondalankush9851@gmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1906
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291649 Fixes: https://cgit.freebsd.org/src/commit/?id=905571c03119 ("Remove copyright strings printed at login time via login(1) or sshd(8).") Signed-off-by: Simon Wollwage rootnode+freebsd@wollwage.com Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1926
I forgot to check/update the man page with D54217. While here add a test for multiple -e flags. Reviewed by: markj Approved by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54632
Man pages, release notes, etc.
Reviewed by: ziaee MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54538
Reviewed by: vexeduxr Signed-off-by: ykla yklaxds@gmail.com Sponsored by: Chinese FreeBSD Community Pull Request: https://github.com/freebsd/freebsd-src/pull/1917
Clarify that both `sudo` and `doas` are not part of the base system and they need to be listed in the `packages` section if the user wants to enable them. MFC After: 1 week Signed-off-by: Gonéri Le Bouder <goneri@lebouder.net> Pull Request: https://github.com/freebsd/freebsd-src/pull/1944
MFC After: 1 week
Adjust document description, description section, and hardware section to include Chelsio T7. Since this driver now supports many generations, order reverse chronologically. Compare language to ice.4 and bnxt.4, the other terabit ethernet drivers. This list of HARDWARE is obtained from the Chelsio prouduct selector. MFC after: 3 days (T7 support shipped with 15.0) Discussed with: jhb, np Differential Revision: https://reviews.freebsd.org/D54276
This enables additional searching the manual by sysctl variable. This syntax is standardized in style.mdoc(5). Reported by: bapt MFC after: 3 days
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292221 Fixes: https://cgit.freebsd.org/src/commit/?id=2980318b2747 (sh.1: extend the section about getopts) MFC after: 3 days
This is an OEM card from Fujitsu using an LSI SAS2208 ROC controller shipped with many Fujitsu PRIMERGY servers like RX300 S7. Controller description: https://www.fujitsu.com/global/products/computing/servers/primergy/blades/connection/cb-pmod-110426.html Reviewed by: ziaee MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54566
Document the new tx related sysctls I've added to iflib in the last few months: tx_reclaim_ticks & tx_reclaim_thresh Sponsored by: Netflix Reviewed by: ziaee Differential Revision: https://reviews.freebsd.org/D54564 MFC after: 3 days
MFC after: 3 days Reviewed by: ziaee Closes: https://github.com/freebsd/freebsd-src/pull/1945
Remote stray "-r" from the example of installing a toolchain to alternate root. Reviewed by: ivy Differential Revision: https://reviews.freebsd.org/D54611
Make it possible to search for literal two colons (::) and actually find something. Make the "x"/"x:"/"x::" examples more explicit and more visibile. Signed-off-by: Simon Wollwage <rootnode+freebsd@wollwage.com> Obtained from: NetBSD, nbuwe <uwe@stderr.spb.ru>, 856d5b6 PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291374 Reviewed by: imp, jlduran Pull Request: https://github.com/freebsd/freebsd-src/pull/1923
Reorganise and clarify the legacy role of boot1.efi in DESCRIPTION to improve clarity. Add a minor missing word in the BUGS section ["...caution is required*..."]. See also - PR: 290794 Signed-off-by: Aaditya Singh <aadityavksingh@gmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1939
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54628
Hardware drivers and architecture-specific code.
Fix a kernel panic caused by the task management queue using the transfer request queue’s num_entries value. Sponsored by: Samsung Electronic Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54243
Also, This patch fixes an issue where the admin command flag was not passed through. Sponsored by: Samsung Electronic Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54244
Add per-fan manual mode control via dev.asmc.0.fan.N.manual sysctl.
Apple SMCs support manual fan control via the FS! SMC key,
a 16-bit bitmask where each bit controls one fan (0=auto, 1=manual).
This change adds a new sysctl per fan:
dev.asmc.0.fan.N.manual (0=auto, 1=manual)
When set to manual mode (1), the fan runs at the speed set via
dev.asmc.0.fan.N.targetspeed instead of automatic thermal control. When
set to auto mode (0), the SMC controls fan speed automatically.
The FS! key was already defined in asmcvar.h but not accessible.
This exposes it for debugging, testing, and advanced fan control.
Implementation uses read-modify-write to allow independent control of
each fan without affecting others.
Reviewed by: adrian, markj
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D54437
According to section 8.3.2.2.1 of the XL710 datasheet, FLTSTAT indicates if RSS hashing was used (or flow director or nothing) to arrive at the flowid it is reporting. We need to check this before reporting the flowid and setting the rss type. Not checking this allows invalid flowids (0s) to be reported for some TCP traffic (it seems to mostly impact incoming connections). This leads to the inp flowid being 0, and egress traffic being unbalanced (going to tx queue 0, and NIC 0 of an lacp bundle). Differential Revision: https://reviews.freebsd.org/D54442 Reviewed by: adrian, kbowling Sponsored by: Netflix MFC after: 2 weeks
Problem is that the printfs done under the spinlock might be very slow, then spinlock triggers the panic due to some AP holding the mutex too long. We do want to ensure that the printfs are serialized, still. Also, reduce the scope of the lock. The local APIC and MTRR initializations are local to the AP, while mca_init() protects the shared state with mca-private spinlock. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289297 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54464
Document the supported PPC/POWER CPUTYPEs in the example make.conf. Update bsd.cpu.mk to handle CPUs newer than POWER9, and remove 32-bit CPUTYPEs since we no longer support those at all. Reviewed by: imp, jhibbits Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D54257
Add support for the using the Arm Statistical Profiling Extension (SPE) in the hardware tracing framework, hwt(4), thread mode. SPE is an optional extension added in Armv8.1 to provide profiling of software using randomised instruction sampling. Thread mode allows tracing of a single thread, regardless of the CPU it is scheduled on. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D53738
Broke qemu-system-aarch6 boot with VIRT kernconf PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292156 Fixes: https://cgit.freebsd.org/src/commit/?id=ea8dc498aa8e ("arm64: Create an L3 table to limit permissions") Signed-off-by: Marian Cingel <cingel.marian@gmail.com> Pull Request: https://github.com/freebsd/freebsd-src/pull/1943
The SVE signal context needs to be correctly aligned. Fix this by creating a new macro to calculate the needed size to provide this alignment, and use it when setting and checking the saved SVE signal context. Reported by: cperciva Reviewed by: cperciva, markj Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54396
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Pull-request: https://github.com/freebsd/freebsd-src/pull/1909
This is an OEM card from Fujitsu using an LSI SAS2208 ROC controller shipped with many Fujitsu PRIMERGY servers like RX300 S7. This chip is also recognized by mrsas(4) under the generic name for the controller chip. Controller description: https://www.fujitsu.com/global/products/computing/servers/primergy/blades/connection/cb-pmod-110426.html Reviewed by: ziaee MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54520
a0b4d9e5bd63984bc3ad25b7f2881741e0d73980 Add support for RTL8126 chip revision 0x64a00000 from Carl Henriksson. While here, update and add microcode for the RTL8126 chipset variant. 46810ff569a9416642fc5f8e86501028008a2e95 For RTL8125, there's no need to check whether RGE_CMD_STOPREQ has been completed. As with other chip variants, RGE_CMD_STOPREQ never acknowledges completion. 5729fb17b5eeba56781da0b5c0525c198c5c2cd8 remove duplicate RGE_PHYSTAT_5000MBPS test Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54517 Obtained from: OpenBSD
The slot parameter actually is used as index into the memory resource. Fixes: https://cgit.freebsd.org/src/commit/?id=c11bbc7d
This is needed because when we add the suspend-to-idle loop, we only want to break the BSP out of idle to process the taskqueue while keeping all the others idled. Currently assuming BSP to be CPU0, which may not always be the case on non-x86. Reviewed by: kib Approved by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54406
Allow reading of i2c addresses other than A0. A0 does provide most information, but doesn't provide things like module temps, and optical signal levels. Sponsored by: Netflix Reviewed by: sumit.saxena_broadcom.com Differential Revision: https://reviews.freebsd.org/D54590 MFC after: 3 days
It breaks suspend/resume and no one has had time to investigate and fix it. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291067 Reviewed by: emaste Fixes: https://cgit.freebsd.org/src/commit/?id=3deb21f1afd5 ("random: TPM_HARVEST should have been named RANDOM_ENABLE_TPM") Differential Revision: https://reviews.freebsd.org/D54587
vmm: Consolidate vm and vcpu definitions There is quite a lot of duplication of code between amd64, arm64 and riscv with respect to VM and vCPU state management. This is a bit tricky to resolve since struct vm and struct vcpu are private to vmm.c and both structures contain a mix of machine-dependent and machine-independent fields. To allow deduplication without also introducing a lot of churn, follow the approach of struct pcpu and 1) lift the definitions of those structures into a new header, sys/dev/vmm/vmm_vm.h, and 2) define machine-dependent macros, VMM_VM_MD_FIELDS and VMM_VCPU_MD_FIELDS which lay out the machine-dependent fields. One disadvantage of this approach is that the two structures are no longer private to vmm.c, but I think this is acceptable. No functional change intended. A follow-up change will move a good deal of machine/vmm/vmm.c into sys/dev/vmm/vmm_vm.c. MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53584
vmm: Deduplicate VM and vCPU state management code Now that the machine-independent fields of struct vm and struct vcpu are available in a header, we can move lots of duplicated code into sys/dev/vmm/vmm_vm.c. This change does exactly that. No functional change intended. MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53585
vmm: Move common accessors and vm_eventinfo into sys/dev/vmm Now that struct vm and struct vcpu are defined in headers, provide inline accessors. We could just remove the accessors outright, but they don't hurt and it would result in unneeded churn. As a part of this, consolidate definitions related to struct vm_eventinfo as well. I'm not sure if struct vm_eventinfo is really needed anymore, now that vmmops_run implementations can directly access vm and vcpu fields, but this can be resolved later. No functional change intended. MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53586
vmm: Add an include to vmm_ktr.h for vm_name() Required when KTR is configured. Remove the pcpu.h include while here, as it seems to be unneeded. Reported by: Jenkins Fixes: https://cgit.freebsd.org/src/commit/?id=5f13d6b60740 ("vmm: Move common accessors and vm_eventinfo into sys/dev/vmm")
Replace bzero with the equivalent memset(x,0,x) since the latter is available in the kshim environment and we have a soft goal of migrating to standard interfaces when there's a reason... Sponsored by: Netflix
These are left over from the $FreeBSD$ stuff. Sponsored by: Netflix
cam::mps:complete(union ccb *, struct mps_command *, u_int, u32);
Where u_int is scsas->flags u32 is the device_info.
This can't be done as an fbt because the data needed for it isn't
present out a function boundary.
Sponsored by: Netflix
cam::mpr:complete(union ccb *, struct mpr_command *, u_int, u32);
Where u_int is scsas->flags u32 is the device_info.
This can't be done as an fbt because the data needed for it isn't
present out a function boundary.
Sponsored by: Netflix
The driver and applications currently use hard-coded numeric ioctl command opcodes. These opcodes are interpreted as having the IOC_IN direction (data copied from the user application to the driver), regardless of the actual packet size. Consequently, when the packet size is zero and the direction is set to IOC_IN, the kernel fails these ioctls if COMPAT is disabled. While the driver and applications should ideally set the direction correctly— for example, using IOC_VOID when the packet size is zero—the driver will now be updated to define ioctl opcodes using the _IOC macro to support both IOC_VOID and IOC_IN. This change ensures backward compatibility with older applications that exclusively use IOC_IN. Reviewed by: gallatin Differential Revision: https://reviews.freebsd.org/D54601 MFC after: 3 days
Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1954
This updates the smartpqi driver to Microchip's latest available public release. Reviewed by: imp Approved by: imp Sponsored by: Microchip Technology Inc. Differential Revision: https://reviews.freebsd.org/D52507
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1914 (cherry picked from commit 1bfae8b50814697ac12bc8879ad8013e7ffd77b2)
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1914 (cherry picked from commit 40a49bccf388494f9685a81cfa781050f5f8bb1f)
This is equivalent of sdio_readw and sdio_writew in linuxkpi Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1951
nvme: Handle get/set feature payloads Signed-off-by: Alexey Sukhoguzov <sap@eseipi.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1444
nvme: Support Autonomous Power State Transition (APST) APST is an optional NVMe power-saving feature that allows devices to autonomously enter higher non-operational power states after a certain amount of idle time, reducing the controller's overall power consumption. Signed-off-by: Alexey Sukhoguzov <sap@eseipi.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1444
nvme: Add APST payload overriding The apst_data tunable allows APST configuration to be adjusted during controller initialization. It accepts an array of encoded integers, each defining specific transition parameters. Relnotes: YES Signed-off-by: Alexey Sukhoguzov <sap@eseipi.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1444
All sysctls except thermal sensor readings and the handlerevents whitelist-separated string are bitmasks or small integers. This avoids some bitmasks being erroneously displayed as negative values. Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1824
The 1166:0241 PCI device has 8 ports instead of 4. Signed-off-by: Dmitry Borisov <di.sean@protonmail.com> Reviewed by: imp, jlduran Pull Request: https://github.com/freebsd/freebsd-src/pull/1883
This fixes a build error with -O0 and matches all the other pqisrc_is_* routines in the file. --- kernel.full --- ld: error: undefined symbol: pqisrc_is_supported_write >>> referenced by smartpqi_request.c:1799 (/.../smartpqi_request.c:1799) >>> smartpqi_request.o:(pqisrc_build_scsi_cmd_raidbypass)
Obtained from: Chelsio Communications MFC after: 1 week Sponsored by: Chelsio Communications
IPsec rx uses a new CPL and this prepares eth_rx for IPsec support in future commits. Tidy up the comment and code around M_TSTMP while here. MFC after: 1 week Sponsored by: Chelsio Communications
Network-related commands, library, and kernel.
With a recent bug in the igb (and a few other) driver LRO mis-queuing, rack did things ok, better than the base stack, due to the rack reordering protections in rack, but there was still room for improvements. When a series of packets are completely mis-ordered you often times can get the acks shortly after you have entered recovery and retransmitted the first of the packets indicated in the sack stream. Then the cum-ack arrives basically acking all those packets. If you look at the time from when you sent the packet to when the ack came back you can quickly determine that the ack was not to what you just transmitted but instead was original and you had a completely false recovery entry. Dropping out of that you can then restore the congestion state and continue on your way. The Dup-acks that also arrive help increase your reordering windows which makes you less likely to repeat the scenario. Differential Revision:<https://reviews.freebsd.org/D53832>
ipfw: remove extraneous argument from ipfw_add_protected_rule() This function is always called with unlocked IPFW_UH_LOCK.
ipfw: use sparse initializer for dynamic opcodes No functional change.
ipfw: make create_objects_compat() static No functional change.
Ever since "d9c55b2e8cd6 rss: Enable portions of RSS globally.." exposed the RSS software hashing functions, it has been possible to use them without "ifdef RSS". Do so now in the syncache so as to get flowids recorded. Note that the use of the rss hash functions is conditional on IP versions, so we must ifdef INET to ensure rss_proto_software_hash_v4() is available. Fixes 73fe85e486d2 Sponsored by: Netflix Reviewed by: glebius, p.mousavizadeh_protonmail.com, nickbanks_netflix.com, tuexen Differential Revision: https://reviews.freebsd.org/D54534
When c is compared to sc->hotchar, both undergo integer promotion, which can lead to c being sign extended. Fix this by casting c to an unsigned char. Reviewed by: kevans MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54544
Fix a segfault when printing the "protocol" field. The field-format and encoding-format were expecting different numbers of arguments. Also, fix the width of the tcp-state field in encoded output. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292228 Fixes: https://cgit.freebsd.org/src/commit/?id=c2b08c13c20 netstat: add support for UDP-Lite endpoints MFC after: 1 week Sponsored by: ConnectWise Reviewed by: tuexen, js, des Differential Revision: https://reviews.freebsd.org/D54567
Freeing completed transmit mbufs can be time consuming (due to them being cold in cache, and due to ext free routines taking locks), especially when we batch tx completions. If we do this when holding the tx ring mutex, this can cause lock contention on the tx ring mutex when using iflib_simple_transmit. To resolve this, this patch opportunistically copies completed mbuf pointers into a new array (ifsd_m_defer) so they can be freed after dropping the transmit mutex. The ifsd_m_defer array is opportunistically used, and may be NULL. If its NULL, then we free mbufs in the old way. The ifsd_m_defer array is atomically nulled when a thread is using it, and atomically restored when the freeing thread is done with it. The use of atomics here avoids acquire/release of the tx lock to restore the array after freeing mbufs. Since we're no longer always freeing mbufs inline, peeking into them to see if a transmit used TSO or not will cause a useless cache miss, as nothing else in the mbuf is likely to be accessed soon. To avoid that cache miss, we encode a TSO or not TSO flag in the lower bits of the mbuf pointer stored in the ifsd_m array. Note that the IFLIB_NO_TSO flag exists primarily for sanity/debugging. iflib_completed_tx_reclaim() was refactored to break out iflib_txq_can_reclaim() and _iflib_completed_tx_reclaim() so the that the tx routine can call iflib_tx_credits_update() just once, rather than twice. Note that deferred mbuf freeing is not enabled by default, and can be enabled using the dev.$DEV.$UNIT.iflib.tx_defer_mfree sysctl. Differential Revision: https://reviews.freebsd.org/D54356 Sponsored by: Netflix Reviewed by: markj, kbowling, ziaee
Create a directory for testing tools arond CAM. These are snippets of what will eventually be camio. At the moment, it was written using fbt traces. This is OK, but fragile, so they need to be re-written with the cam provider. cam_all_but_scsi.d is the first step. It shows how to do this with the new cam dtrace provider. Sponsored by: Netflix Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54472
nlmsg_reserve_object() already zeroes the header before it gives it to
us, so there's no need to explicitly zero these fields again.
Sponsored by: Rubicon Communications, LLC ("Netgate")
Sponsored by: Rubicon Communications, LLC ("Netgate")
These are sample dtrace scripts that likely need to be modified for whatever problem you are chasing. Unfortuneately, you have to read the driver extensively to understand them or how to use them. But studying the completion routine of mpr/mps will help understand many of the error and recovery paths. Sponsored by: Netflix
Replace a collection of aliasing violations and ifdefs with memset (which now expands to __builtin_memset and should be quite reliably inlined.) The old code is hard to maintain as evidenced by the most recent change to if_pkt_info_t updating the defines, but not the zeroing code. Reviewed by: gallatin, erj Effort: CHERI upstreaming Sponsored by: Innovate UK Fixes: https://cgit.freebsd.org/src/commit/?id=43d7ee540efe ("iflib: support for transmit side nic KTLS offload") Differential Revision: https://reviews.freebsd.org/D54605
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292337 Fixes: https://cgit.freebsd.org/src/commit/?id=8774a990ee4094f16d596d4b78e0f3239e5d0c88
Stuff in man section 8 (other than networking).
There is no rsyncd binary in the rsync package; rsync is just invoked with --daemon. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=122037 Sponsored by: The FreeBSD Foundation
This change enhances `config2_network()` to honor the DNS
configuration, when it's defined through the `services` section.
The `network_data.json` file can hold DNS configuration at two different
places:
- within a network configuration entry
- or `dns` entry in the `services` section, in this case the configuration is global.
An example of such configuration:
{"links": [{"id": "interface0", "type": "phy",
"ethernet_mac_address": "52:54:00:01:59:03"}], "networks": [{"id": "private-ipv4-0", "type": "ipv4", "link": "interface0",
"ip_address": "192.168.123.5", "netmask": "255.255.255.0", "routes": [{"network": "0.0.0.0", "netmask": "0.0.0.0", "gateway":
"192.168.123.1"}], "network_id": "9e5b1ed9-f5e6-4941-a90f-2e06bab858de", "dns_nameservers": ["192.168.123.1"], "services": [{"type":
"dns", "address": "192.168.123.1"}]}], "services": [{"type": "dns", "address": "192.168.123.1"}]}
See: https://docs.openstack.org/nova/latest/user/metadata.html
MFC After: 1 week
Signed-off-by: Gonéri Le Bouder <goneri@lebouder.net>
Pull Request: https://github.com/freebsd/freebsd-src/pull/1941
Note that there are three variants of this MacBook. We only have the stride and offset values for the 17" 1680x1050 model. Reviewed by: vexeduxr Pull Request: https://github.com/freebsd/freebsd-src/pull/1584
The "default" user should only be created when: - the `users` key is missing - or the `default` string is present in the `users` list Since the `public_keys` is extracted from the meta-data, this patch has to slightly adjust the way they are loaded. The change simplify the logic around the default user SSH key injection. Both `ssh_authorized_keys` and `public_keys` are handled at the same time. MFC After: 1 week Signed-off-by: Gonéri Le Bouder <goneri@lebouder.net> Pull Request: https://github.com/freebsd/freebsd-src/pull/1952
Currently, on arm64, if bhyve fails to initialize the console, it falls into assert(), which does not look particularly pretty for users. Replace the assert with proper error handling so bhyve prints a meaningful error message and exits with status code 4 (error). That matches the behavior on amd64. Approved by: markj Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54504
Removing the kernel from the list of available kernels is sufficient to avoid rendering it in the list, but we need more for booting to actually work. Notably, the 'kernel' loader.conf var was left intact to its default value, so if one didn't use the kernel selector in the menu then we'd try to boot the nonexistent 'kernel' instead of the new default (first autodetected). There's room to improve the error messages here, but for now let's just make it actually work correctly. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292232 Fixes: https://cgit.freebsd.org/src/commit/?id=d04415c520b03 ("loader: lua: remove the default kernel [...]")
SerialPort in the SPCR is zeroed when serial redirection is disabled, rather than the SPCR being omitted from the ACPI tables ony many systems. Check to see that SerialPort.Address is non-zero before using. FreeBSD would fail to boot on systems that could have a serial port redireciton, but don't have it enabled because the loader would create a bogus hw.uart.console. While one could unset this value to boot, you couldn't do that automatically very easily. Instead, don't even look at the SPCR table if the SerialPort is zero'd. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292206 MFC After: 3 days Sponsored by: Netflix Co-authored-by: Warner Losh <imp@FreeBSD.org> Closes: https://github.com/freebsd/freebsd-src/pull/1948
Sponsored by: Netflix Reviewed by: adrian, andrew Differential Revision: https://reviews.freebsd.org/D54510
This address the situation reported here https://github.com/freebsd/freebsd-src/pull/1952#issuecomment-3720210259 The user-data file was missing and the `sethostname` function is never called. This commit adjusts slightly the logic to avoid the `exit()` call when the `user-data` file is missing. MFC After: 1 week Signed-off-by: Gonéri Le Bouder <goneri@lebouder.net> Differential Revision: https://github.com/freebsd/freebsd-src/pull/1953
with recent change nuageinit always create a "freebsd" user, if no users are specified, which means we do need to get the rootdir in the testsuite containing a group file otherwise pw complains and the tests fails.
This commit adds support for a UNIX domain socket to bhyve's remote framebuffer. It enables the use of the graphical console when the bhyve instance is running in a jail with no networking, for instance. A VNC client running on the host can then connect to the UNIX domain socket through the filesystem. Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Sponsored by: Defenso Reviewed by: kevans, markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D53814
Remove the width modifier to remove white space padding added to "description" field when running `sesutil --libxo:JP show`. Reviewed by: asomers Approved by: asomers (mentor) MFC after: 1w Sponsored by: ConnectWise Differential Revision: https://reviews.freebsd.org/D54536
Support configuring MTU for the SLIRP net backend, for example: -s 1:0,virtio-net,slirp,mtu=2048,open Update the manual page accordingly. While here, also document MAC address configuration. Reviewed by: markj Approved by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D54133
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1914 (cherry picked from commit 9c72e8e3500408f7ce5fc7be500dd3efc0307674)
Signed-off-by: Lakshmikanth Ayyadevara <lakshmikanth.a.ayyadevara@oracle.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1865
Some of the cases inside umouse_request() (usr.sbin/bhyve/usb_mouse.c)
use the data component of an event, while only partially checking if
it's NULL. 'data' has a NULL check, but then 'data' is immediately
deferenced anyway after the check regardless of if it's NULL or not.
For example:
case UREQ(UR_GET_STATUS, UT_READ_INTERFACE):
case UREQ(UR_GET_STATUS, UT_READ_ENDPOINT):
DPRINTF(("umouse: (UR_GET_STATUS, UT_READ_INTERFACE)"));
if (data != NULL && len > 1) {
USETW(udata, 0);
data->blen = len - 2;
data->bdone += 2;
}
eshort = data->blen > 0;
break;
There are actually four occurrences of this same bug, each in a
different case in this switch block.
Signed-off-by: Jack Bendtsen <jackdbendtsen@gmail.com>
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282237
Reviewed by: imp, jhb, vexeduxr
MFC After: 1 week
Pull Request: https://github.com/freebsd/freebsd-src/pull/1728
The files /usr/sbin/pkg/FreeBSD.conf.* currently set base repo to {enable: no}.
We don't want to overwrite /local/etc/pkg/repos/FreeBSD.conf that already exists
when users choose tech preview in the installation.
Signed-off-by: Guilherme Augusto de Souza Candinho <cndghm@gmail.com>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1925
Both distfiles & packages contain compressed files. Signed-off-by: Ricardo Branco <rbranco@suse.de> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1873
newfs: Add an option to disable soft updates A previous commit turned soft updates on by default for UFS2 without providing a way to turn them off. This corrects that by adding a new -u flag which forces soft updates (and soft updates journaling) off. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Fixes: https://cgit.freebsd.org/src/commit/?id=61dece6d27fb ("Enable soft updates by default for UFS2 filesystems.") Reviewed by: mckusick Differential Revision: https://reviews.freebsd.org/D54576
newfs: Add -u to getopt string Fixes: https://cgit.freebsd.org/src/commit/?id=68562f8145e8 ("newfs: Add an option to disable soft updates")
When a compiler with C23 or higher is detected, builtin bool, true, and false are used to conform the C23 standard. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44664
Extend the FreeBSD OFED build framework to include the Broadcom bnxtre RDMA provider library. This change: -Registers libbnxtre in src.libnames.mk so it is built and installed as part of the OFED libraries. -Adds bnxtre to the OFED pcap dependency set when MK_OFED is enabled. -Declares proper dependency mappings for bnxtre (ibverbs, pthread). -Introduces LIBBNXTREDIR for consistent object directory handling. -Updates libibverbs and librdmacm build rules to link against libbnxtre, enabling Broadcom RoCE device support at runtime. -libbnxtre library uses below constructor to register with the libibverbs, static attribute((constructor)) void bnxt_re_register_driver(void) These updates ensure that applications using libibverbs and librdmacm can discover and use Broadcom bnxt RDMA devices on FreeBSD. Reviewed by: markj, ssaxena Differential Revision: https://reviews.freebsd.org/D54368 MFC after: 3 days
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1914 (cherry picked from commit 907cf3e4378f9d114af41d05a59ef4a075d3efb0)
When an NFSv4.n client specifies settings for the archive, hidden and/or system attributes during a Open/Create, the Open/Create fails for ZFS. This is caused by ZFS doing a secpolicy_xvattr() call, which fails for non-root. If this check is bypassed, ZFS panics. This patch resolves the problem by disabling va_flags for the VOP_CREATE() call in the NFSv4.n server and then setting the flags with a subsequent VOP_SETATTR(). This problem only affects FreeBSD-15 and main, since the archive, system and hidden attributes are not enabled for FreeBSD-14. I think a similar problem exists for the NFSv4.n Open/Create/Exclusive_41, but that will be resolved in a future commit. Note that the Linux, Solaris and FreeBSD clients do not set archive, hidden or system for Open/Create, so the bug does not affect mounts from those clients. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292283 Reported by: Aurelien Couderc <aurelien.couderc2002@gmail.com> Tested by: Aurelien Couderc <aurelien.couderc2002@gmail.com> MFC after: 2 weeks
MFC After: 1 week Signed-off-by: CismonX <admin@cismon.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1470
Kernel stuff (other than networking, filesystems, and drivers).
linuxkpi: Define `PCI_POSSIBLE_ERROR()` macro It comes with `PCI_ERROR_RESPONSE` and `PCI_SET_ERROR_RESPONSE()` but we don't use them so far. Therefore `PCI_POSSIBLE_ERROR()` will always reture false. As written in the comment, this macro is a bit weird given the Linux `pci_read_*() functions can return an error code separately from the read value. The `PCI_POSSIBLE_ERROR()` macro started to be used by the amdgpu DRM driver in Linux 6.10. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54487
linuxkpi: Add a dummy <linux/kdebug.h> The DRM generic code started to include it in Linux 6.10 but doesn't seem to use anything inside. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54490
linuxkpi: Split <linux/compiler.h>
On Linux, they split the content into three headers:
1. <linux/compiler.h>
2. <linux/compiler_types.h>
3. <linux/compiler_attributes.h>
The first includes the second, which includes the third.
<linux/compiler_types.h> is also included on the compiler command line
by default! I added that to the compilation flags of the DRM drivers.
This allowed me to drop at least one:
#ifdef __FreeBSD
#include <linux/compiler.h>
#endif
Note that our copy of <linux/compiler.h> contains definitions which are
not defined by Linux' <linux/compiler.h>. I left them alone.
Reviewed by: emaste
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54495
linuxkpi: Replicate Linux #includes between headers
The DRM drivers (and probably other parts of the Linux kernel) had a
significant cleanup w.r.t. which source file includes what in Linux
6.10. Nonetheless, the DRM drivers still depend on implicit namespace
pollution because some source files do not include all the headers they
should.
This cleanup broke the build with FreeBSD because we do not replicate
the same `#include` directives everywhere.
This commit adds the same `#include` directives in several headers in
order to get the same namespace pollution.
This fixes the build of the DRM drivers from Linux 6.10. An example is
`drm_dp_tunnel.c` which needed `str_yes_no()` defined by
<linux/string_helpers.h> (technically <linux/string_choices.h> in
Linux). It gets it through:
<linux/i2c.h> -> <linux/regulator/consumer.h> -> <linux/suspend.h> ->
<linux/swap.h> -> <linux/memcontrol.h> -> <linux/cgroup.h> ->
<linux/seq_file.h> -> <linux/string_helpers.h>
Reviewed by: emaste
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54496
linuxkpi: Add support for statically-allocated kfifo The main difference with the dynamically allocated version is that the structure is initialized with `DECLARE_KFIFO()` which takes the number of items as an additional argument compared to `DECLARE_KFIFO_PTR()`. The declared structure is then initialized with `INIT_KFIFO()` which sets all fields to 0, except `total` which is computed from the size of the array passed to `DECLARE_KFIFO()`. The amdgpu DRM driver started to used this in Linux 6.10. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54497
linuxkpi: Add a dummy <linux/fpu.h> The amdgpu DRM driver started to include in from Linux 6.10, but either it does not use any of it, or linuxkpi provides the necessary API from another header. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54498
linuxkpi: Add `rol64()` This is used by <linux/siphash.h> added in a separate future commit. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54499
linuxkpi: Add get_unaligned_le64() This function was the only one missing in the `get_unaligned_*()` family. This is going to be used by the imported `linux_siphash.c` in a future commit, which itself is used by DRM drivers starting from Linux 6.10. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54500
linuxkpi: Add <linux/siphash.h> The file is copied as is from Linux 6.10 as it dual-licensend under the GPLv2 and BSD 3-clause. The amdgpu DRM driver started to use it in Linux 6.10. Reviewed by: bz, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54501
linuxkpi: Add `radix_tree_deref_slot()` We don't do reference counting, we only dereference the pointer and retunr the value. The amdgpu DRM driver started to use it in Linux 6.10. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54502
Add ASMC_DEBUG make option This allows folks to enable debug statements in asmc(4) using kernel configs via the `options ASMC_DEBUG` directive. While here, remove a duplicate `device vt_efifb` directive in `NOTES` as it's already handled in the `GENERIC` config MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54511
i386: Fix kernel compilation after introduction of ASMC_DEBUG option Fixes: https://cgit.freebsd.org/src/commit/?id=f224591746bd ("Add ASMC_DEBUG make option") Sponsored by: The FreeBSD Foundation
sys/x86/NOTES: Add vt_efifb
Contrary to what is stated in commit f224591746bd ("Add ASMC_DEBUG make
option"), the various NOTES files should list all available options.
Since vt_efifb is supported also on i386, add it back to x86/NOTES
instead of amd64/NOTES.
Fixes: https://cgit.freebsd.org/src/commit/?id=f224591746bd ("Add ASMC_DEBUG make option")
Sponsored by: The FreeBSD Foundation
Document syscall #0 being handled specially in `kern_syscall_deregister(..)`: it's a reserved syscall and not dynamically registered, and hence does not need to be deregistered in the function. Co-authored-by: ngie@ MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54326
On x86, when a preloaded kernel module is unloaded, we free the backing (physically contiguous) pages. The ET_REL linker will have adjusted protections on segments of the preloaded file, which updates the direct map, so the original protections must be restored when unloading the module. Previously this was handled in kmem_bootstrap_free(), but there is no apparent reason not to handle this within the kernel linker. Moreover, we were not resetting permissions in the kernel map on arm64. Reviewed by: alc, kib MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D54438
linuxkpi: Define `raw_spinlock_t` in <linux/spinlock.h> For now, it is synonymous to `spinlock_t`. The DRM generic code uses the `struct raw_spinlock` and not `raw_spinlock_t`, that's why the definition is a struct embedding a `struct mtx`, compared to `spinlock_t` which is a simpler typedef. The DRM generic code started to use it in Linux 6.10. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54489
linuxkpi: Add <linux/font.h> The header defines the minimum to allow the DRM generic code to build. The only function used so far is `get_default_font()`, as part of a DRM-specific panic handler. We do not use this panic handler on FreeBSD. For now, it returns a NULL value. It should probably map to a vt(4) font. The DRM generic code started to use it in Linux 6.10 as part of the panic handler. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54491
linuxkpi: Add <linux/kmsg_dump.h> This header declares register/unregister functions to allow a piece of code to tell what function to call in case of a panic. Several panic handlers may be registered. The DRM generic code started to use it in Linux 6.10 as part of the panic handler. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54492
linuxkpi: Add WARN_RATELIMIT() The i915 DRM driver started to use it in Linux 6.10. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54493
linuxkpi: Replicate the chain of #include in the `cec*.h` headers The i915 DRM driver depends on this namespace pollution to access `debugfs_*` functions, after several explicit #include of <linux/debugfs.h> were removed in Linux 6.10. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54494
linuxkpi: Add `rol32()` `rol64()` and `rol32()` are used by <linux/siphash.h>. The former was added previously, before <linux/siphash.h> was added. However the latter was not, and it broke the build on armv7. Reported by: adrian Reviewed by: adrian, rpokala Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54588
The formulation that pages are allowed to have at most one mapping is not quite clear. Nothing prevents pages from having more than one mapping, but the flag must be cleared then. Reviewed by: alc, markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D54570
cam: Start adding dtrace provider 'cam' Start to provide robust tracing in cam now that clang has broken my fbt-based dtrace scripts a couple of times. Sponsored by: Netflix Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54468
cam: Add probes for xpt actions
cam::xpt:action(union ccb *)
cam::xpt:done((union ccb *)
cam::xpt:async-cb(void *cbarg, uint32_t async_code, struct cam_path
*path, void *async_arg);
Called when xpt_action(), xpt_done*() and the xpt async callbacks are
called.
Sponsored by: Netflix
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D54469
cam: When inq data isn't valid, pass NULL When the device isn't there, we don't have valid inq data. Pass NULL in this case. All the routines that receive this test against NULL already. Sponsored by: Netflix Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54470
cache: avoid hardcoded zone alignment Previously, this was underaligned on CHERI system where pointers are larger than time_t. Use the alignment of struct namecache_ts which picks up time_t via strut timespec and pointers via struct namecache. This arguably overaligns cache_zone_small and cache_zone_large on i386 kernels, but I suspect the actual microarchitectures most i386 binaries are run on do better with 64-bit alignment. Reviewed by: olce, markj Effort: CHERI upstreaming Sponsored by: Innovate UK Fixes: https://cgit.freebsd.org/src/commit/?id=cf8ac0de8150 ("cache: reduce zone alignment to 8 bytes") Differential Revision: https://reviews.freebsd.org/D54376
cache: avoid hardcoded cache padding Replace CACHE_LARGE_PAD with rounding up to the alignment of struct namecache_ts. No functional change. Reviewed by: olce, markj Suggested by: jhb Effort: CHERI upstreaming Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D54553
cache: avoid hardcoded CACHE_PATH_CUTOFF Compute the cutoff at compile time instead which will avoid the need for a CHERI case. Correct the comment about CACHE_PATH_CUTOFF. It dates to 5.2.0 not 4.4 BSD. Historic values are: 32 - introduced (c2935410f6d5f) 35 - NUL terminated and bumped (5d5c174869104) 39 - sized to alignment (bb48255cf5eff) 45 - bumped to improve efficency on 64-bit (3862838921eb8) No functional change. Reviewed by: markj Suggested by: jhb Effort: CHERI upstreaming Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D54554
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1914 (cherry picked from commit 4a5a1c17ac43356fae053524187bb16f8fc1ac70)
MFC After: 1 week Reviewed by: imp, kib Pull Request: https://github.com/freebsd/freebsd-src/pull/1934
Signed-off-by: mothcompute <mothcompute@protonmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1949
First step towards getting the Linux version of SDL with HIDAPI gamepad drivers to work. Not quite complte as SDL expects to find some information in sysfs as well. Signed-off-by: Alex S <iwtcex@gmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1938
For consistency with other drivers enable building ixl on ARM64 target. Please be advised that it is only compile tested. Intel will continue to test Ethernet drivers only on x86-64 platforms, and is not going to provide support for issues, which cannot be reproduced in such environment. Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com> Suggested by: Dave Cottlehuber <dch@FreeBSD.org> Reviewed by: manu Approved by: kbowling (mentor) MFC after: 2 weeks Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D54289
Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54609
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1910
In general we want to strip subdir components, rather than appending `..`s. Reviewed by: lwhsu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54373
Signed-off-by: Marian Cingel <cingel.marian@gmail.com> Reviewed by: emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1947
Commit 74a6bb524e5b added a check to install{world,kernel} to avoid
people accidentally running this on pkgbase systems and leaving their
system broken. This had two issues:
(1) The warning was not sufficiently scary, leading people to think
this was safe to do as long as they set DESTDIR=/.
(2) The installkernel check was too strict, and prevented installing
kernels that don't conflict with packaged kernels.
Fix (1) by rewording the warning to be scarier, and while here, add
two new variables (ALLOW_PKGBASE_INSTALL{WORLD,KERNEL}) which could
be set in /etc/make.conf for people who want to break their systems
by default.
Fix (2) by improving the installkernel check to see if the kernel(s)
we're actually installing are packaged. This means a new kernel can
be installed to /boot/kernel as long as there's no packaged kernel
installed there. This check understands INSTKERNNAME, so if there
is a packaged kernel in /boot/kernel, the new kernel can still be
installed using INSTKERNNAME=testkernel (or whatever).
MFC after: 2 weeks
Reported by: christos, jhb, others
Reviewed by: emaste, christos (previous version)
Sponsored by: https://www.patreon.com/bsdivy
Differential Revision: https://reviews.freebsd.org/D54346
If BUILDKERNELS contains a single kernel, and NO_INSTALLEXTRAKERNELS=no,
then ${BUILDKERNELS:[2..-1]} returns the first kernel in the list and
that kernel ends up in both INSTALLKERNEL and INSTALLEXTRAKERNELS.
This breaks the package build because it means we generate that package
twice, once with an incorrect install path of /boot/kernel.NAME instead
of /boot/kernel.
Only set INSTALLEXTRAKERNELS if we're building at least two kernels.
Fixes: https://cgit.freebsd.org/src/commit/?id=2c0e9a76c1ce ("Makefile.inc1: Make NO_INSTALLKERNEL less of a hack")
Reviewed by: jrtc27
Sponsored by: https://www.patreon.com/bsdivy
Differential Revision: https://reviews.freebsd.org/D54539
Zstd is a discrete, self-contained system component. To match how we package zlib, bzip2 and xz, move it to its own package, with a separate lib package. Add the new package to the minimal set, since this is a core component that users expect to be installed. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53603
This was previously in runtime, because pam_unix uses it and we don't want to pull in the entire yp package as a dependency of runtime. However, we can now use LIB_PACKAGE here to create a yp-lib package to contain the library, which is a much more reasonable dependency. Since libypclnt clearly belongs in the yp package, move it there. This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53600
This avoids e.g. utilities or ssh depending on the full blocklist package just because they link against libblocklist. This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53605
sendmail is already disabled by default everywhere since 14.0 MFC After: 1 week Approved by: emaste (re) Reviewed by: emaste (re) Differential Revision: https://reviews.freebsd.org/D54575
GCE: Fix growfs path
The sed command was missing the ${DESTDIR} prefix, meaning it was
attempting to modify the build host's /etc/rc.d/growfs instead of
the target image's script. Tested in an arm64 builder that builds
as non-root.
PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292081
MFC after: 1 day
GCE: Enable vtnet(4) Multiqueue. Removes hw.vtnet.mq_disable=1. This workaround was originally introduced nearly a decade ago to address stability issues on KVM that have long since been resolved in both the FreeBSD driver and the GCE hypervisor. Removing this allows network interrupts to scale across multiple vCPUs. Tested on n2-highcpu-16 VM with 15.0-RELEASE and confirmed multiple queue pairs active and interrupts handling across cores. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292081 MFC after: 1 day
GCE: ARM64 Support: Add hw.pci.honor_msi_blacklist=0. This is required for MSI support on GCE ARM64 instances which is prerequisite to gve(4) not panicking at boot, and nvme(4) also has a real sad time without interrupts. Tested on a variety of c4a VMs. This is meant to be a temporary hack; long term fix would be to check for the hypervisor and quirk gve(4) device with PCI_QUIRK_ENABLE_MSI_VM. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292081 MFC after: 1 week
MFC after: 3 days Reviewed by: imp, ziaee Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Closes: https://github.com/freebsd/freebsd-src/pull/1869
The default shell for root has been changed to sh(1) followup changing in release images sh(1) the shell for the "freebsd" user. MFC After: 1 week Reviewed by: manu, emaste (re) Approved by: manu, emaste (re) Differential Revision: https://reviews.freebsd.org/D54602
As reported on the freebsd-announce mailing list[1] FreeBSD is continuing to retire 32-bit support. Remove powerpcspe from build infrastructure. [1] https://lists.freebsd.org/archives/freebsd-announce/2024-February/000117.html Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: jhibbits, emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1914
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: jhibbits, emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1914
The STAGE_SETS and STAGE_TARGETS need to match
STAGE_DIR.
For each STAGE_SET we have STAGE_DIR.${STAGE_SET}
and create a target stage_files.${STAGE_SET},
the settings all need to be self consistent to work.
We actually only need the high level targets stage_files and stage_links meta.stage.mk will take care of the details.
awk changed somewhere between 14 and 15 and it stopped accepting a hexadecimal number as its input - it will always return 0. This results in a very badly written apple boot block. So just remove it; do the math in shell. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292341 Differential Revision: https://reviews.freebsd.org/D54639 Reviewed by: imp MFC after: 1 week
Record releases in the SSM Parameter Store not just as e.g. /aws/service/freebsd/arm64/small/ufs/15.0/RELEASE but also as .../RELEASE/latest, e.g. /aws/service/freebsd/arm64/small/ufs/15.0/RELEASE/latest The latter parameters will be updated when new AMIs are built with security and errata updates appplied, and have been backfilled for 15.0. MFC after: 3 days MFC to: stable/15 (14.x will not get security-update AMIs) Sponsored by: Amazon
Add a raw mode, which fetches the patch file and applies it manually rather than using arc patch. This is handy because arc patch will always try to fetch your remotes if it can't find the base commit in your repo (even if you ask it not to make a commit). This is basically unusable in some of my workspaces where I have 20+ remotes configured, some of which may be unreachable. Add a stack mode, which causes git-arc to recursively apply parent revisions, going up the patch stack. Thus, to apply a full patch stack, just apply the final patch with -s. Reviewed by: ngie Differential Revision: https://reviews.freebsd.org/D54403
When I originally wrote git-arc, the usage string was the documentation. Later, a man page was added, largely copied from the usage string. Over time they have diverged slightly. It is silly to have two copies of the same information, so let's make the man page the source of truth. While here, document some options for git-arc-patch and rewrite a few sentences here and there in a way that I hope is clearer. Reviewed by: ziaee, ngie, adrian Differential Revision: https://reviews.freebsd.org/D54405
Yea, I realize these are decaying, but I'm going to take a run at automatically tagging reviews for github pull requests. I suspect that tagging will help with the 'stale' issues with at least CODEOWNER. As better data becomes available, especailly for contrib, I'll update things. Sponsored by: Netflix
SPDX. Update to use argparse rather than OptionParser (now deprecated).
In exercise mode we collect data for every available counter on a program and keep all of that in a directory in /tmp.
makefs: tests: Double the timeout of ZFS compression test The test makefs_zfs_tests:compression is timing out on ci.freebsd.org. Double the default timeout to allow it to finish. While here, check if the file exists before cleaning up, otherwise, cat may fail. Reported by: Jenkins Reviewed by: asomers MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54424
makefs: tests: Double the timeout of ZFS file_extend test The test makefs_zfs_tests:file_extend is timing out on ci.freebsd.org. Double the default timeout to allow it to finish. Reported by: Jenkins Reviewed by: asomers MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54425
makefs: tests: Cleanup and remove default flags
Cleanup and remove default atf_check flags for clarity. The following
two lines are equivalent:
atf_check $cmd
atf_check -s exit:0 -e empty -o empty $cmd
Update the links to the reference documents.
Remove the D_flag_cleanup function, as common_cleanup() for these
particular set of tests does two things:
1. Unmount the md(4) device.
2. Destroy the md(4) device.
Essentially, one should only call common_cleanup() if the test body
invokes mount_image(). This is not the case for D_flag_body().
No functional changes intended.
Reviewed by: ngie
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D54427
makefs: tests: Fix -D flag test As stated in the manual page: -F is almost certainly not the option you are looking for. To create an image from a list of files in an mtree format manifest, specify it as the last argument on the command line, not as the argument to -F. This change does exactly that. Also bug #192839 has already been fixed. Reviewed by: ngie MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54428
makefs: tests: Fix timestamp-related tests Use a variable for mtree that includes the DEFAULT_MTREE_KEYWORDS, in order to avoid missing the important "time" keyword or passing an unimplemented "nlink" keyword. Unskip the "failing" tests, and comment out the specific failing checks, these will be addressed (or at least discussed) in a different revision. For MS-DOS tests, use an even value timestamp, as precision is 2s. For ZFS tests, use import_image instead of mount_image consistently. Reviewed by: bnovkov, markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54429
Reported by: Jenkins Reviewed by: kp, ngie MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54549
Bump the timeout value, to avoid cutoff on emulated architectures on ci.freebsd.org. Reported by: Jenkins Reviewed by: ngie MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54550
While we're at it, switch to simple waiting from communicate() calls.
As reported on the freebsd-announce mailing list[1] FreeBSD is continuing to retire 32-bit support. Remove powerpcspe from boot test tools. [1] https://lists.freebsd.org/archives/freebsd-announce/2024-February/000117.html Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: jhibbits, emaste Pull request: 698d3c98d8f5814f705908d5bc6d930e3d4c4eda
These could go in other categories, but it's more clear if they're here instead.
The compiled objects do not change other than a few diagnostic messages that include __LINE__. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54304
MFC after: 1 week
Fixes: https://cgit.freebsd.org/src/commit/?id=a37825313f62 (Fix mdoc typos for emails, tag spdx) MFC after: 3 days
Found these changes by chance in an old patch file. Should have been committed along with the ps(1) modifications done in March 2025. No functional change (intended). MFC after: 3 days Sponsored by: The FreeBSD Foundation
libarchive 3.8.5 Important bugfixes: #2809 bsdtar: fix regression from 3.8.4 zero-length pattern issue bugfix Obtained from: libarchive Vendor commit: dd897a78c662a2c7a003e7ec158cea7909557bee MFC after: 1 week
Sponsored by: Netflix Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54471
On FreeBSD, linking the zfs kernel module with binutils ld 2.44 shows
the following warning:
ld: warning: aesni-gcm-avx2-vaes.o: missing .note.GNU-stack section implies executable stack
ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
Some of the `.S` files under `module/icp/asm-x86_64/modes` check whether
to emit the `.note.GNU-stack` section using:
#if defined(__linux__) && defined(__ELF__)
We could add `&& defined(__FreeBSD__)` to the test, but since all other
`.S` files in the OpenZFS tree use:
#ifdef __ELF__
it would seem more logical to use that instead. Any recent ELF platform
should support these note sections by now.
Reviewed by: emaste, kib, imp
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D54578
Reviewed by: imp, kevans Pull Request: https://github.com/freebsd/freebsd-src/pull/1442
With execenv=jail specified, the "cmd" runs inside the test's jail. Reviewed by: ngie, markj Differential Revision: https://reviews.freebsd.org/D52642
Merge commit '7e59b238fcf32f3d365e78ddc702ca494e1ff68d' This commit partially reverts the previous vendor import, given that the "type" keyword has been historically mandatory and should not be removed by "-R all". This was clarified in the man page. Reported by: glebius PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219467 MFC after: 1 week
The commit message has to be rewritten as it is not clear and lacks some key details about the change. This reverts commit 35dd53a9e13265f7a479649776453efc5b737a0f. Reported by: jrtc27
Only fairly recent GCC versions support and sys/_types.h must work with quite old compilers and without sys/cdef.h being included. The prior workaround works fine, but we can have the same effect with compiler macro definitions. In this specific case, compilers that define the __intcap_t builtin type will define __SIZEOF_INTCAP__. This reverts commit 029a09f18032353a9ae874590b879322efc6e53a This reverts commit 19728f31ae421f40e2b0b0c775f4eedd7f927be0 Reviewed by: imp, des, kib, emaste Effort: CHERI upstreaming Fixes: https://cgit.freebsd.org/src/commit/?id=85ab981a8e4e ("sys/_types.h: define fallback __(u)intcap_t") Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D54009
ophgo: import new .dts Signed-off-by: Martin Filla <freebsd@sysctl.cz> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1844
Revert "ophgo: import new .dts" This reverts commit b55d106df9785d141f9e3e1c916e921df9d877ac. Per request of original author, manu, and mmel, revert this change. While this is a genuinely cool device, there's some issues that need to be sorted out before moving forward: o Imported dt-bindings that weren't used and could interfere in the future. o no platform code for sophgo, though it likely needs it o Potential interference from the dts/dtsi files imported for future linux device-tree imports. These are the dts files from the vendor sdk, and history has down often upstream introduces enough change that keeping them here in the mean time lays the groundwork for merge conflicts in the future. That makes this import premature. Revert until it's more mature.
Not classified automatically, and waiting for manual attention.
-- no commits in this category this week --
Dates:
cgit.freebsd.org/src. Git accurately records the
order of commits, but not their dates.Automatic grouping:
This reverts commit \\b([0-9a-fA-F]{40})\\b
and the hash was found in this week's commits.
Automatic categories:
Source code:
Generated with commits-periodical 0.20 at 2026-01-26 19:07:09+00:00.
This work is supported by Tarsnap Backup Inc.
Alternate version: 2026-01-05 (debug) (contains info about the classification)