Update to the latest version#16
Merged
EthanCornell merged 605 commits intoEthanCornell:mainfrom May 3, 2025
Merged
Conversation
the restriction on sending packets from anycast source addresses was removed in RFC4291, so there's no reason to forbid binding to such addresses. this allows anycast services (e.g., DNS) to actually use anycast addresses, which was previously impossible. RFC4291 also removes the restriction that only routers may configure anycast addresses; this was never enforced in code but was documented in ifconfig.8. update ifconfig.8 to document both changes. PR: 285545 Reviewed by: des, adrian Approved by: des (mentor) Differential Revision: https://reviews.freebsd.org/D49905
Commit 49bc071 ("nsswitch.conf: Avoid modification after installation") changes handling of nsswitch.conf such that we make a copy in the objdir during a build. Historically, the in-tree nsswitch.conf lived under etc. The buildetc target and its copy set SUBDIR_OVERRIDE=etc when building the object tree, but I think this isn't right when conf files are scattered around the src tree. If any of them require non-trivial processing, they'll get skipped during buildetc, and then some build-time commands may run during installetc. In the linked PR, this fails because the src tree is mounted read-only and no objdir was created during buildetc. Remove the SUBDIR_OVERRIDE for the _obj target, and build the buildconfig target across the tree. PR: 286072 Fixes: 49bc071 ("nsswitch.conf: Avoid modification after installation") Reviewed by: brooks, dim Tested by: dim, Alastair Hogge <agh@riseup.net> Differential Revision: https://reviews.freebsd.org/D49960
Upstream llvm compiles most of their subprojects with -std=c++17 explicitly, not -std=gnu++17. In gnu++17 mode, both clang and gcc define the macro 'i386' on i386, which clashes with a namespace identifier in contrib/llvm-project/llvm/include/llvm/ExecutionEngine/JITLink/i386.h. Since the default after 6527682 is now CXXSTD=gnu++17, explicitly set CXXSTD=c++17 for lib/clang, lib/libclang_rt and lib/libomp.
Only pkg.pkg is supported since 0cd9513. Reviewed by: emaste, ziaee Fixes: 0cd9513 ("pkg: retire backwards compatibility bootstrap support") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49994
The index value in the loop in vm_map_pmap_enter jumps by 1, or some superpage size, in each iteration. Jump by the superpage size only when the entire superpage is being mapped. Reported by: pho Reported-by: syzbot+1cc9ede76727d2ea2e8d@syzkaller.appspotmail.com Reviewed by: alc, kib, markj Tested by: pho Fixes: Fixes: b3d89a0 ("vm_map: use page iterators in pmap_enter") Differential Revision: https://reviews.freebsd.org/D49987
Use iterators in place of tailq pointers in vm_object_unwire(). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49939
Define vm_page_grab_valid_iter() to be the function that does the work of vm_page_grab(), but has an iterator parameter passed to it. In a couple of places, this can be called directly to let an iterator get reused. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D49942
Replace tailq pointers with iterators in the DB_SHOW* functions. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49947
Replace the listq pointers with iterators in vm_object_list_handle(). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49946
Check the object pctrie, rather than the memq, to detect an empty object. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49948
This is needed for rtw89 updates. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste, zarychtam_plan-b.pwste.edu.pl Differential Revision: https://reviews.freebsd.org/D50000
Some code relies on header pollution (or self-sustainability). Add cleanup.h to mutex.h as that is one case it seems to be used with. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50001
An updated rtw88 driver requires minimal changes to leds.h. On the positive side we can now remove the __DUMMY from the enum as we actually have a valid field name. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50002
Implement container_of_const() needed for wireless driver updates. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D49999
Use a macro to automatically gather the length of the array while we can. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50007
Add pci_info() needed for a driver update. While here prefix __VA_ARGS__ with ## for pci_err and pci_info in case we are only passed a string without format arguments. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50009
Driver updates introduce a new field "mlo" to the sta. Add the field to the struct and initialize it in the 802.11 compat code along with a IMPROVE so once we get to 11be we can deal with it. Sponsored by: The FreeBSD Foundation MFC after: 3 days
Move some structs into the appropriate header to be visible. Add new fields to structs and enums. Remove arguments from two functions (one function currently unused by drivers in the tree, for the other the argument was unused). Adjust the iwlwifi accordingly. This is in preparation for new driver versions to allow a smooth transition. Sponsored by: The FreeBSD Foundation MFC after: 3 days
The zfs command to do this is a bit longer and harder to remember. In the last few releases mount(8) learned how to do this, so lets show it in the manual. MFC after: 3 days Reported by: Jan Bramkamp <crest+freebsd@rlwinm.de> Discussed with: cperciva, emaste Reviewed by: mhorne Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D49988
Add a call to pctrie_iter_reset after vm_fault_allocate returns to vm_fault_allocate, since the iterator may be corrupted. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49957
Use an iterator instead of tailq pointers in vm_object_populate(). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49938
Commit 2ec2ba7 added support for Solaris style extended attributes (called named attributes, which is the NFSv4 terminology) to the VFS. This patch updates the NFS code common to the NFS client and server, to prepare it for the addition of named attribute support. The actual support for named attributes in the NFSv4 client and server will be done in future commits.
An earlier commit relaxed the TA/RA rules around control frames to fix other issues, however it now results in control frames not specifically from a known node / to us to be handled in the control path. Specifically, rtwn(4) RTL8812/RTL8821 NICs are currently passing BARs from the AP TA to any destination to us; which is tripping up BAW tracking and causing traffic hangs. So do the check before vap->iv_recv_ctl() is called in each input path. Note that mesh doesn't seem to pass the control frames up; however I haven't tested/validated mesh in a long while and I know it's currently broken. Differential Revision: https://reviews.freebsd.org/D49575
This adds the ASMC support for the macmini 6,1 and 6,2. PR: kern/268141 Differential Revision: https://reviews.freebsd.org/D49929
Use iterators instead of tailq_next pointers in vm_fault_populate(). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D50010
This reverts commit 925906a. The effects of releasing and acquiring the object write lock a few lines into the loop were not carefully considered. Reported by: alc
Replace a use of TAILQ_NEXT with a pctrie lookup, in order to allow the TAILQ to be elimiated soon. Reviewed by: alc Differential Revision: https://reviews.freebsd.org/D50010
Sponsored by: The FreeBSD Foundation MFC after: 1 week
For instance, the structure contains the struct _Unwind_Exception, and it seems that libgcc requires specific alignment for it. PR: 285711 Tested by: Oleg Sidorkin <osidorkin@gmail.com> Sponsored by: The FreeBSD Foundation MFC after: 1 week
The current default image is set to 13.4 which is going to reach EOL soon so switch the default CI image to 14. Will be merged into stable/14 only. This has no operational effect on the build itself. Approved by: emaste MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50110
Mountd reloads the exports(5) file(s) when it receives a SIGHUP and then compares the old and new exports, updating any ones that have changed in the kernel. Without this patch, mountd failed to recognize that a network/host(s) had changed, if there was no other change to the exports line. As such, the change of network/hosts(s) did not take effect until the mountd daemon was (re)started. This patch fixes the code so that it checks for changes in the network/host(s) list for an exports line. PR: 286260 MFC after: 3 days
In managing freed PG_NOFREE pages, use ref_count instead of pindex for counting pages in freed PG_NOFREE blocks. No change in behavior is expected. This restores the (useful) property that the pindex field is of interest only for pages that are mapped to objects. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D50112
Sponsored by: The FreeBSD Foundation
Sponsored by: The FreeBSD Foundation
Because we do not drain the hdac callout during detach, hot-unloading can result in a panic if the callback fires after we have freed the resources it uses. pcm0: detached pcm1: detached hdaa0: detached hdacc0: detached Kernel page fault with the following non-sleepable locks held: exclusive sleep mutex hdac0 (HDA driver mutex) r = 0 (0xfffffe000212c820) locked @ /mnt/src/sys/dev/sound/pci/hda/hdac.c:400 [...] db_trace_self_wrapper() at db_trace_self_wrapper+0xa5/frame 0xfffffe0046b04490 kdb_backtrace() at kdb_backtrace+0xc6/frame 0xfffffe0046b045f0 vpanic() at vpanic+0x226/frame 0xfffffe0046b04790 panic() at panic+0xb5/frame 0xfffffe0046b04850 trap_fatal() at trap_fatal+0x65b/frame 0xfffffe0046b04950 trap_pfault() at trap_pfault+0x12b/frame 0xfffffe0046b04a70 trap() at trap+0x54c/frame 0xfffffe0046b04c50 calltrap() at calltrap+0x8/frame 0xfffffe0046b04c50 --- trap 0xc, rip = 0xffffffff8412e7ec, rsp = 0xfffffe0046b04d20, rbp = 0xfffffe0046b04d40 --- hdacc_stream_intr() at hdacc_stream_intr+0x3c/frame 0xfffffe0046b04d40 hdac_intr_handler() at hdac_intr_handler+0x15c/frame 0xfffffe0046b04d90 ithread_loop() at ithread_loop+0x387/frame 0xfffffe0046b04ef0 fork_exit() at fork_exit+0xa3/frame 0xfffffe0046b04f30 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe0046b04f30 --- trap 0xc, rip = 0x829cc531a, rsp = 0x82b8b7a88, rbp = 0x82b8b7aa0 --- KDB: enter: panic [ thread pid 12 tid 100211 ] Stopped at kdb_enter+0x34: movq $0,0x1f09af1(%rip) db> Sponsored by: The FreeBSD Foundation MFC after: 1 day Reviewed by: kib, adrian Differential Revision: https://reviews.freebsd.org/D50087
Due to a regression in ZFS, a pool's status may not change to DEGRADED promptly after a vdev becomes faulted. This test is primarily concerned with vdev status, not pool status, so work around the bug by doing a "zpool reopen". Otherwise the test would time out waiting for a status change that never came. MFC to stable/14 only. openzfs/zfs#16245 MFC after: 2 weeks Sponsored by: ConnectWise
These check if we can should use a superpage to create the static map. As it is arm specific we can use an arm-specific macro here. Reviewed by: mhorne Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50013
Call pmap_mapdev directly. If it can allocate this memory using the static device map via devmap_ptov it will so there is no need to call it directly. Reviewed by: mhorne Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50014
The devmap_ptov and devmap_vtop functions are only used in this file. Reviewed by: mhorne Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50015
We only create the static devmap on arm. Stop building this code on other architectures. Reviewed by: mhorne, imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50016
These files don't use it, we can stop including sys/devmap.h. Reviewed by: mhorne Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D50017
As pmap_mapbios is used to map a physical address with a default memory attribute we can try to use the DMAP region. For now check if all pages are mapped, however it is expected this check can be removed later after testing on more hardware. Reviewed by: alc, markj, jhb (earlier version) Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D42732
Previously, the CI Makefile used `kldload -n vmm` to determine whether the host supported bhyve virtualization. However, due to changes in how QEMU/KVM exposes CPU features to guests, this check no longer reliably indicates the presence of usable VMX/SVM support. In particular, modern QEMU configurations expose the vmx CPUID bit by default, allowing the vmm module to load even when nested virtualization is disabled. This causes the old check to incorrectly succeed inside virtualized environments where bhyve cannot function. This patch replaces the check with a sysctl-based approach that inspects kern.vm_guest. If the system identifies itself as running inside a guest (!= "none"), we assume nested virtualization is unavailable and fallback to QEMU. This change ensures CI behaves correctly on platforms where the vmm module loads but is not usable. Approved by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50115
querying the lockstate for write-locked state. Sponsored by: The FreeBSD Foundation MFC after: 1 week
If filter needs to be loader, we restart after the lock upgrade. But possible binds in the resolver itself would try to recurse on the lock, which can be only done for the read locks. PR: 286502 Sponsored by: The FreeBSD Foundation MFC after: 1 week
PR: 286505 Reviewed by: olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50117
Import manual from OpenBSD, tweaked for our system. Obtained from: OpenBSD (initially) Fixes: 1ad0f7e91582dd (Import iwx) Reviewed by: adrian, bz, emaste, mhorne, thj, Pat Maddox Approved by: mhorne (mentor) Differential Revision: https://reviews.freebsd.org/D49687
LIO_FOFFSET needs to be masked off, as it is in aio_aqueue(). Reported by: syzbot+b6e15476c91852bb2264@syzkaller.appspotmail.com Reviewed by: kib, asomers MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D50118
No functional change intended. Reviewed by: olce, kib MFC after: 2 weeks Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50105
No functional change intended. Reviewed by: olce, kib MFC after: 2 weeks Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50106
The condition `flag == NFC_ISDOTDOT && vp != NULL && vp->v_type != VDIR` is never true at this point in the function. This is asserted slightly earlier. So, remove some dead code and simplify control flow. N.B. we set v_cache_dd for all vnode types, not just VDIR. This seems to be intentional, see commit ce575cd. For regular files it appears to effectively represent the most recently entered cache entry for the vnode. No functional change intended. Reviewed by: olce, kib MFC after: 2 weeks Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50107
It can trigger failures in unrelated tests when it modifies the maxfiles limit. MFC after: 1 week
PF should send a challenge ACK as response to SYN, which matches existing
state. Extra thanks goes to bluhm@ for careful testing and fixing patch I've
sent to tech@
O.K. henning@ bluhm@
Obtained from: OpenBSD, sashan <sashan@openbsd.org>, 6679bb1581
Sponsored by: Rubicon Communications, LLC ("Netgate")
If there's a state conflict with an open state and a new SYN we send an ack
probe. Verify that this works as expected.
Sponsored by: Rubicon Communications, LLC ("Netgate")
When using a /32 IPv4 interface address, pfctl(8) reports a 0.0.0.0
as broadcast address. The kernel does not consider this a broadcast
address and ifconfig(8) has a check to exclude it. Use the same
check in pfctl(8).
Found by regress/sbin/pfctl pfi2; OK mikeb@
Obtained from: OpenBSD, bluhm <bluhm@openbsd.org>, cf181e999d
Sponsored by: Rubicon Communications, LLC ("Netgate")
Fixes: 12a6257 Differential Revision: https://reviews.freebsd.org/D49940
Owner
Author
|
Update to the latest version |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Update to the latest version