This is a display of mostly-automatically-classified git commits from 2026-01-01 to 2026-03-31.
This report is still in progress.
DEBUG: This version of the report is primarily for checking the classifiers, and therefore contains extra information (in this colour).
Table of contents and commits per category:
| (16) | Highlighted commits (these are copies, not in stats) | |
| 69 | 4.6% | Userland programs |
| 93 | 6.2% | Documentation |
| 365 | 24.2% | Hardware support |
| 130 | 8.6% | Networking |
| 132 | 8.7% | System administration |
| 76 | 5.0% | Libraries |
| 21 | 1.4% | Filesystems |
| 251 | 16.6% | Kernel |
| 115 | 7.6% | Build system |
| 38 | 2.5% | Internal organizational stuff |
| 70 | 4.6% | Testing |
| 63 | 4.2% | Style, typos, and comments |
| 66 | 4.4% | Contrib code |
| 20 | 1.3% | Reverted commits |
| 0 | 0.0% | Unclassified commits |
| 1509 | 100% | total |
| Technical notes about this page |
debug: info about the automatic classification
| num | % | num changed | stage |
|---|---|---|---|
| 20 | 1.3% | 0 | 00-reverts |
| 60 | 4.0% | 0 | 01-style |
| 163 | 10.8% | 0 | 02-filenames_wildcards |
| 55 | 3.6% | 0 | 02b-filenames_wildcards2 |
| 717 | 47.5% | 1 | 03-filenames_plain1 |
| 410 | 27.2% | 1 | 04-filenames_plain2 |
| 47 | 3.1% | 0 | 05-summary-prefix |
| 37 | 2.5% | 0 | Manually-classified commits |
| 0 | 0.0% | 0 | Unclassified commits |
debug: more stats
| num | % | stage |
|---|---|---|
| 2 | 0.1% | Misclassified commits |
| 1470 | 97.4% | Classified commits, no corrections |
debug: groups
| 12 | 0.8% | num in revert |
| 17 | 1.1% | num in fixes |
| 271 | 18.0% | num in consecutive |
| 300 | 19.9% | Commits in groups |
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.
Fix a narrow window where the lock is unlocked but the checking CPU hasn't flushed things appropriately. Inside this window the CPU inside cpu_switch() will loop forever thinking the destination thread is still blocked/locked even though it is not. This manifests as the system hanging after starting all APs. I've seen this reliably trigger in qemu-system-ppc64 running power9 pseries guests; the more CPUs the more likely it triggers at boot. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292167 Differential Revision: https://reviews.freebsd.org/D54478 Reviewed by: jhibbits MFC after: 1 week Relnotes: yes
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
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
debug: classified in
02-filenames_wildcards by '['.*Makefile',
'release/.*']'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54628
debug: classified in
03-filenames_plain1 by
'RELNOTES'
The daemon utility has always created its output file with a fixed mode of 0600. This causes issues for log collection setups where the collector does not run as root but instead relies on group access to the watched daemon’s log file. Introduce a new option that allows specifying the output file mode using install(1)-style semantics. This enables non-root log collectors to access the file as intended and improves compatibility with log rotation tools. Reviewed by: kevans MFC after: 1 week Relnotes: yes Differential Revision: https://reviews.freebsd.org/D54930
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
On H616 (and I think H6, but this isn't verified) we need to reset the card to have a functioning device. With this commit all my pending patches for H616 are in tree. We run well on my test device (Orange Pi Zero3), however there is an uninvestigated issue with ethernet and graphics are an open question. Reviewed by: manu, adrian MFC After: 1 week Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55097
debug: classified in
03-filenames_plain1 by
'sys/arm/'
This change switches to using RFC 7217 algorithm as the default to generate SLAAC addresses for IPv6 interfaces configured with accept_rtadv. Reviewed by: pouria, glebius, zlei Approved by: zlei Relnotes: yes Differential Revision: https://reviews.freebsd.org/D55138
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
We were using percents, for compatibility with hwpstate_intel(4), but this looses granularity that might be important in some scenarios or with specific CPU models. For consistency, hwpstate_intel(4) should be changed accordingly, at the expense of breaking compatibility. For release notes: Introduction of hwpstate_amd(4) deserves a release note, even if the original commit was not tagged. Functionality introduced by recent commits tagged with "Relnotes" should be mentioned along that one. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55009
debug: classified in
03-filenames_plain1 by
'sys/x86/'
This will allow experimentations and finer-grained tuning to the full extent allowed by the hardware, which is especially important given that the spec leaves to hardware implementors an important leeway in interpreting CPPC's numeric parameters, causing the same settings to have different effects on different CPU models. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast (older version) Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55010
debug: classified in
03-filenames_plain1 by
'sys/x86/'
USB HCI requests may not include HCI transfer block structures (i.e., xfer->data[] == NULL), but in several places, the USB mouse emulation code assumes one will exist. This can lead to a NULL pointer dereference and a SEGV in the bhyve process as observed via experiments with an Ubuntu guest and PyUSB code. Note that many of the cases processing other request types already checked for data == NULL. While in the neighborhood, fix a typo in the loop iterating over the usb_data_xfer_block array which used the wrong variable to check for valid data (idx vs. i). Reported by: danmcd@edgecast.io Obtained from: SmartOS MFC after: 1 week Relnotes: yes Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54661
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Set controls to maximum performance to avoid regressions now that CPPC is activated by default and to match what the P-state support does. Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55253
debug: classified in
03-filenames_plain1 by
'sys/x86/'
The asmc(4) driver should work for 32-bit Intel-based Macs, in theory, if the model details were added to the detection list. That being said, 32-bit Intel Macs were only released and available to the general public for 8 months [1], so the value in maintaining i386 support in the driver is reduced due to limited hardware access. Remove 32-bit support for the driver officially to make it clear its use is not supported. This should fix building `NOTES.i386` by proxy as well. Relnotes: yes MFC after: 2 weeks Fixes: https://cgit.freebsd.org/src/commit/?id=f224591746b ("Add ASMC_DEBUG make option") Fixes: https://cgit.freebsd.org/src/commit/?id=8342d9f7b5f ("asmc(4): Stop building it on i386, as...") Differential Revision: https://reviews.freebsd.org/D55544
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Current radix-based implementation of lookup tables in ipfw does not support non-contiguous prefixes while this type of lookup is needed to write CPU-effective firewall configurations. For some of the cases we can reach the goal using a masked table lookup by adding masked (e.g. zero non-significant bits) records into a table and then zero non-significant bits in lookup key prior to making a table lookup. Obtained from: Yandex LLC MFC after: 3 weeks Relnotes: yes Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D53694
debug: classified in
05-summary-prefix by 'ipfw:'
We retired most obsolete 10 and 10/100 Ethernet NIC drivers in 2019 --
see commits following ebcf740a32ae ("FCP-101: remove obsolete 10 and
10/100 Ethernet drivers.).
le(4) was retained with with the note "Emulated by QEMU, alternatives
don't yet work for mips64." MIPS has since been removed from the tree
and emulators and virtual machines offer many other, more suitable
devices.
Reviewed by: brooks
Relnotes: Yes
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55516
debug: classified in
05-summary-prefix by 'sys:'
RFC4291 section 2.5.2:
The unspecified address must not be used as the destination address
of IPv6 packets or in IPv6 Routing headers. An IPv6 packet with a
source address of unspecified must never be forwarded by an IPv6
router.
We disallowed connections to IN6ADDR_ANY by default, as of commit
627e126dbb07 ("netinet6: Disallow connections to IN6ADDR_ANY"). As this
is actually disallowed by the RFC, just remove the support.
Reported by: bz (in D54306)
Reviewed by: bz, glebius
Relnotes: yes
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54942
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
Relnotes: yes MFC after: 2 weeks
debug: Commit manually moved from "unknown" to "contrib".
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
debug: classified in
03-filenames_plain1 by 'bin/'
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
debug: classified in
04-filenames_plain2 by
'usr.bin/'
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
debug: classified in
04-filenames_plain2 by
'usr.bin/'
The struct spacectl_range we use is only really used in these three lines of code, so re-scope it down to just the dealloc branch. This is marginally easier to reason about what might be necessary to replace in porting our truncate(1) to other platforms. While we're here, add a test for the -d flag to be sure it really does punch a hole in the file. The test also tries to confirm that it does not disturb other segments of the file in the process, just to inspire some confidence that it's not corrupting the file somehow. Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D51207
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: fix support for -l with new diff algorithm MFC After: 3 days Reviewed by: des Differential Revision: https://reviews.freebsd.org/D55052
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: use pdwait(2) instead of homemade one MFC After: 3 days Reviewed by: des Differential Revision: https://reviews.freebsd.org/D55053
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: remove useless include as kevent is not used anymore MFC After: 3 days
debug: classified in
04-filenames_plain2 by
'usr.bin/'
MFC After: 3 days
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Lionel Cons <lionelcons1972@gmail.com> requested that a new option be added to runat(1) so that it could be used to manipulate named attributes associated with a symbolic link and not the file the symbolic link refers to). This patch adds the option -h/--nofollow to do this. Requested by: Lionel Cons <lionelcons1972@gmail.com> Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55023
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Previously, if creating the file and fstat() fails, we would've ended up calling utimensat() on that file anyways with whatever was in sb. Not that this is an error likely to happen... We don't check for the return value of close() as we aren't writing anything to the file and the file is always created on success of open(). Reviewed by: kevans Approved by: kevans Fixes: https://cgit.freebsd.org/src/commit/?id=cb54c500d0e1 ("touch: don't leak descriptor if fstat(2) fails") Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55117 MFC after: 1 week
debug: classified in
04-filenames_plain2 by
'usr.bin/'
If an error occurs while atomizing either file, immediately print an error message using the error code returned by the atomizer, and set the error bit in the exit status. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292198 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj, kevans Differential Revision: https://reviews.freebsd.org/D55109
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: Fix integer overflows in Stone algorithm Fix integer overflows that may occur when the context window is very large and add tests to exercise those conditions. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267032 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj, kevans Differential Revision: https://reviews.freebsd.org/D55110
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: Add test case for pagination resource leak The pagination code leaks either processes or descriptors or both, depending on the exact version of the code you have. Add a test case which exercises this leak to facilitate fixing it. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj, kevans Differential Revision: https://reviews.freebsd.org/D55111
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
diff: Don't compare a file or directory to itself While here, stop abusing struct dirent for something we don't even need to store. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254455 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj, kevans Differential Revision: https://reviews.freebsd.org/D55113
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: Fix build rc must be defined first. Fixes: https://cgit.freebsd.org/src/commit/?id=590126789c84 MFC after: 1 week X-MFC with: 590126789c84
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff: Correctly declare tests Sponsored by: Klara, Inc. Fixes: https://cgit.freebsd.org/src/commit/?id=5fc739eb5949 ("diff: Fix integer overflows in Stone algorithm") Fixes: https://cgit.freebsd.org/src/commit/?id=270492602b9b ("diff: Add test case for pagination resource leak") Fixes: https://cgit.freebsd.org/src/commit/?id=590126789c84 ("diff: Don't compare a file or directory to itself")
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
debug: moved to userland
because 'Need to be grouped with
590126789c841d80655869bc075c8980c173dd1c'
* Drop an unnecessary variable and rename pidfd to procd. * Rewinding stdout serves no purpose, so stop doing it. * Don't bother freeing memory or setting the global status right before erroring out. * Error out if dup(2) or dup2(2) fail. * In the unlikely case that our pipe is equal to stdout, we need to record that information so we don't close it when cleaning up. * Don't bother closing a descriptor before dup2(2)ing to it. * Don't forget to close the the process descriptor after reaping the child process. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=266592 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans, markj Differential Revision: https://reviews.freebsd.org/D55112
debug: classified in
04-filenames_plain2 by
'usr.bin/'
In the legacy Stone algorithm, we do a first pass over the files to check if they're identical before we start diffing them. That code would correctly set the exit status if an I/O error was encountered, but would not emit an error message. Do so. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292198 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj Differential Revision: https://reviews.freebsd.org/D55125
debug: classified in
04-filenames_plain2 by
'usr.bin/'
MFC after: 1 week Sponsored by: Klara, Inc.
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Currently, defn pushes its arguments on the stack in order, which means they are then processed in reverse order. POSIX does not specify what order they are processed in, which arguably suggests that they should be processed in the order they are listed. Push them in reverse order so they will be processed in their original order. This matches GNU m4. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292937 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: obiwac, imp Differential Revision: https://reviews.freebsd.org/D55116
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Some BSD-4-Clause files under bin/chio were missing the SPDX-License-Identifier-tag. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55193
debug: classified in
03-filenames_plain1 by 'bin/'
According to POSIX, the default should be -L. Based on code history, whoever first wrote BSD pwd(1) could not figure out how to implement -L and therefore made -P the default (and only) option. Support for -L was later added, but the default was never changed. Clean up the code, make -L the default, and rewrite getcwd_logical() to reject paths that contain dot or dot-dot, as required by POSIX. MFC after: 1 week Reviewed by: olce Differential Revision: https://reviews.freebsd.org/D55146
debug: classified in
03-filenames_plain1 by 'bin/'
POSIX requires us to print a diagnostic and return a non-zero exit code if writing to stdout failed. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55227
debug: classified in
03-filenames_plain1 by 'bin/'
Both copy_file_range() and copy_fallback() can be interrupted before they have read anything at all, in which case they return -1 and set errno to EINTR. If that happens, we should retry, not fail. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293028 MFC after: 1 week Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55167
debug: classified in
03-filenames_plain1 by 'bin/'
Both copy_file_range() and read() / write() in our fallback loop can be interrupted before copying anything at all, in which case it returns -1 and sets errno to EINTR. If that happens, we should retry, not fail. While here, drop the size argument from copy() (we always want to copy the entire file anyway) and add test cases which exercise the metalog and digest functionality. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293028 MFC after: 1 week Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55168
debug: classified in
04-filenames_plain2 by
'usr.bin/'
When we're done processing a directory, remove its entry from the tree of visited inodes, ensuring that we only report a loop when we encounter a descendant-to-ancestor link, not when we encounter a cousin-to-cousin or sibling-to-sibling link. MFC after: 1 week Reported by: Bakul Shah <bakul@iitbombay.org> Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55248
debug: classified in
04-filenames_plain2 by
'usr.bin/'
In particular, if one simply does a non-recursive `ls` on a directory that is not accessible, there are some classes of errors that may cause it to fail that wouldn't be surfaced unless we do an fts_read() that will recurse into the inaccessible directory. Catch those kinds of errors here since we cannot expect to an FTS_ERR/FTS_DNR entry to follow up on them. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287451 Reviewed by: kib Discusssed with: des Differential Revision: https://reviews.freebsd.org/D51056
debug: classified in
03-filenames_plain1 by 'bin/'
for cases where file2 differs but file1 and file3 agrees, the code stored the file2 and file3 line numbers in the de[] editing script entries but used them as if they were file1 line numbers. Reviewed by: thj Differential Revision: https://reviews.freebsd.org/D55276
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff3: fix merge mode Make the merge mode compatible with GNU diff3 Add tests for all the changes, those tests are extracted from the etcupdate testsuite. This version passes the etcupdate testsuite and the diffutils diff3 test suite. MFC After: 1 week
debug: classified in
04-filenames_plain2 by
'usr.bin/'
diff3: add 3 missing files from the testsuite Fixes: https://cgit.freebsd.org/src/commit/?id=2cfca8e710f260b8a1bb1ee5e1836a52e468ef4b
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
debug: moved to userland
because 'Need to be grouped with
2cfca8e710f260b8a1bb1ee5e1836a52e468ef4b'
POSIX uses the terms “positive decimal integer” for -C and “non-negative decimal integer” for -U, which translates into lower bounds of 1 for -C and 0 for -U. POSIX does not specify a minimum upper bound for either mode, but as of 5fc739eb5949 both our backends support context sizes up to and including INT_MAX, so use that. Having had the opportunity to consult the Unix System Test Suite, the diff test cases found therein happen to precisely match these bounds. While here, switch to using strtonum() to parse numerical arguments, and try to be more consistent in how we report usage errors. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55261
debug: classified in
04-filenames_plain2 by
'usr.bin/'
* Annotate logv() and fix format string bug. * Don't reinvent str2sig(3). * Reorganize kill_self() so we unblock signals as late as possible, and use raise(2) instead of kill(2). * Explicitly close unused pipe descriptors. * Use correct type to collect result of read(2) and write(2). * Compare return values to 0, not -1. * Sort local variables according to style(9). * Reduce unnecessary nesting. * Reindent. * Fix typo in manual page. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55277
debug: classified in
03-filenames_plain1 by 'bin/'
According to POSIX, the optional third argument is the minimum number of digits to print regardless of sign. We interpreted it as the minimum width of the output including the sign. Additionally, the variable used to hold this value was confusingly named “maxdigits”. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293214 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55311
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55206
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55207
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55208
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55209
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55210
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55211
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55212
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55213
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55215
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: immp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55216
debug: classified in
03-filenames_plain1 by 'bin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55217
debug: classified in
03-filenames_plain1 by 'bin/'
MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55349
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
By default zstd refuses to operate on symlinks, so for example `zless /var/crash/vmcore.last.zst` failed to view the uncompressed core file. Add -f to the zstd command line to allow operation on symlinks. Reviewed by: delphij Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55101
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Summary: A trivial resource leak fix; free the allocated memory before return.
Test Plan: Code inspection, run command.
I built a simple program that waits for a signal on a kqueue, then ran
that. The standard procstat displays:
```
fbsd-dev% Waiting for SIGTERM...
procstat -a kqueue
PID KQFD FILTER IDENT FLAGS FFLAGS DATA UDATA STATUS
84352 3 SIGNAL 15 C - 0 0x0 -
```
The revised procstat displays:
```
fbsd-dev% sudo LD_LIBRARY_PATH=/usr/obj/usr/home/dab/git/freebsd/src/arm64.aarch64/lib/libutil /usr/obj/usr/home/dab/git/freebsd/src/arm64.aarch64/usr.bin/procstat/procstat -a kqueue
PID KQFD FILTER IDENT FLAGS FFLAGS DATA UDATA STATUS
84352 3 SIGNAL 15 C - 0 0x0 -
fbsd-dev%
```
As expected, the two displays are identical. This doesn't prove that
the leak is gone, but it does prove that the revised command still
operates correctly. I think it can clearly be seen from inspection of
the change that the leak has been remedied.
Reviewed-bys: vangyzen
Differential Revision: https://reviews.freebsd.org/D55422
debug: classified in
04-filenames_plain2 by
'usr.bin/'
* Order includes. * Turn the diff type into an enum. * Turn an unreachable error message into an assertion. * Remove unused debugging code. * Remove some dead assignments. * Consistently use 1 instead of EXIT_FAILURE. * Turn a return from main() into an exit(). MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D55517
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Use mbrtowc()/iswprint()/wcwidth() in put_tty_line() so that the l command displays valid multibyte characters as-is instead of escaping each byte as octal. Column wrapping now correctly accounts for character display width (including double-width CJK characters). Invalid or incomplete UTF-8 sequences and non-printable characters are still escaped as octal. Differential Revision: https://reviews.freebsd.org/D55365
debug: classified in
03-filenames_plain1 by 'bin/'
debug: classified in
04-filenames_plain2 by
'usr.bin/'
paste(1): Utilise STAILQ from <sys/queue.h> in lieu of the home-rolled linked-list Signed-off-by: Faraz Vahedi <kfv@kfv.io> Reviewed by: imp, oshogbo Pull Request: https://github.com/freebsd/freebsd-src/pull/1443
debug: classified in
04-filenames_plain2 by
'usr.bin/'
paste(1): Make small modifications to improve readability Signed-off-by: Faraz Vahedi <kfv@kfv.io> Reviewed by: imp, oshogbo Pull Request: https://github.com/freebsd/freebsd-src/pull/1443
debug: classified in
04-filenames_plain2 by
'usr.bin/'
paste(1): Capsicumise Signed-off-by: Faraz Vahedi <kfv@kfv.io> Reviewed by: imp, oshogbo Pull Request: https://github.com/freebsd/freebsd-src/pull/1443
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Signed-off-by: Faraz Vahedi <kfv@kfv.io> With minor changes from committer. Reviewed by: imp, oshogbo, markj (previous version) Pull Request: https://github.com/freebsd/freebsd-src/pull/1491
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Signed-off-by: Faraz Vahedi <kfv@kfv.io> Reviewed by: imp, oshogbo, markj (previous version) Pull Request: https://github.com/freebsd/freebsd-src/pull/1491
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Use exit status 2 for errors, 1 only to indicate that differences were found between the inputs (in some operating modes). MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: ngie, bapt Differential Revision: https://reviews.freebsd.org/D55608
debug: classified in
04-filenames_plain2 by
'usr.bin/'
zstdcat is equivalent to zstd -dcf, and matches our intention. Suggested by: delphij (in D55101) Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Reviewed by: bapt Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55462
debug: classified in
04-filenames_plain2 by
'usr.bin/'
On Arm-based systems (and maybe others), 'char' defaults to unsigned,
causing negative nice values to be displayed incorrectly (e.g., 246
instead of -10). Explicitly using 'signed char' ensures consistent
behaviour across architectures.
[ tested on RPI2 and generic aarch64 qemu install ]
Before:
# /usr/bin/nice --10 ps -l | awk '(NR == 1 || $(NF-1) == "ps")'
UID PID PPID C PRI NI VSZ RSS MWCHAN STAT TT TIME COMMAND
0 23606 22800 2 -32 246 5400 2544 - R<+ 0 0:00.06 ps -l
After:
# /usr/bin/nice --10 ps -l | awk '(NR == 1 || $(NF-1) == "ps")'
UID PID PPID C PRI NI VSZ RSS MWCHAN STAT TT TIME COMMAND
0 23614 22800 3 -32 -10 5400 2544 - R<+ 0 0:00.05 ps -l
Signed-off-by: Jamie Landeg-Jones <jamie@catflap.org>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/2064
debug: classified in
03-filenames_plain1 by 'bin/'
The uuidgen(2) system call enforces a hard upper limit of 2048 UUIDs per invocation. uuidgen(1) previously attempted to generate arbitrary counts in a single call and allocated memory accordingly, leading to EINVAL errors, unnecessary memory usage, and potential overflow risks. Generate UUIDs in fixed-size batches, streaming output incrementally while preserving existing semantics. Mirror the kernel limit explicitly since it is not exposed via a public interface. Signed-off-by: NVSRahul <nvsrahul@hotmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1965
debug: Commit manually moved from "unknown" to "userland".
yes: Completely overengineer If we're going to overengineer this, we may as well go all the way. * If multiple arguments are given, concatenate them into a space- separated list like GNU coreutils does. * When duplicating the expletive, do so exponentially. * Most importantly, don't modify the memory that argv points to. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans, allanjude Differential Revision: https://reviews.freebsd.org/D55617
debug: classified in
04-filenames_plain2 by
'usr.bin/'
yes: Add missing header This is a no-op on FreeBSD due to namespace pollution. MFC after: 1 week Sponsored by: Klara, Inc. Fixes: https://cgit.freebsd.org/src/commit/?id=cf74b63d61b4 ("yes: Completely overengineer")
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Also move the deadlines in their own calendar file.
Reported by: jhs
Reviewed by: jhs, adamw,
Graham Percival <gperciva@tarsnap.com>
Differential Revision: https://reviews.freebsd.org/D55491
debug: classified in
04-filenames_plain2 by
'usr.bin/'
The kvm(3) mode was actually non-functional since FreeBSD 8 for kernels with VIMAGE, since FreeBSD 12 for the GENERIC kernel and since FreeBSD 14 for all kernels. The reason for that is that systat(1) tried to lookup symbol "tcb" to check if kvm(3) is working. The symbol no longer exist in the kernel. A side effect was that systat(1) lost true kvm(3) support for all other modes, e.g. -swap or -pigs. The tool was still working, but libkvm was just a shim to sysctl(3) API. So, contrary to what the header line says, this change actually restores the kvm(3) support for other modes. Now we read the "allproc" symbol. This was the last tool that abused _WANT_INPCB.
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Man pages, release notes, etc.
Add a cross reference to smbmsg(8) which is useful for discovering local devices and difficult to find otherwise. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=247749 Reviewed by: pauamma@gundo.com Differential Review: https://reviews.freebsd.org/D40839
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: ziaee MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54538
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
03-filenames_plain1 by
'UPDATING'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC After: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
This enables additional searching the manual by sysctl variable. This syntax is standardized in style.mdoc(5). Reported by: bapt MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days Reviewed by: ziaee Closes: https://github.com/freebsd/freebsd-src/pull/1945
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Remote stray "-r" from the example of installing a toolchain to alternate root. Reviewed by: ivy Differential Revision: https://reviews.freebsd.org/D54611
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
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
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54628
debug: classified in
03-filenames_plain1 by
'RELNOTES'
Add a new section "mount options" to explain the mount option nosymfollow in more details. Differential Revision: https://reviews.freebsd.org/D54530
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
For improved legibility.
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
The prison may also be considered part of the subject by way of its ucred association, but I don't think this is significantly different enough today than before recent work -- policies could have always taken them into account, and some did (e.g., mac_bsdextended). Reported by: olce Reviewed by: olce, ziaee Differential Revision: https://reviews.freebsd.org/D54748
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=234504 MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Fixes: https://cgit.freebsd.org/src/commit/?id=41ccf82b29f3 (Use MOPS implementations) Reviewed by: ziaee Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54812
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
While here, make wider use of Dv for socket types and protocol families and reference fcntl(2) flags for the `type` argument values. MFC after: 3 days Reviewed by: glebius, ziaee Differential Revision: https://reviews.freebsd.org/D54434
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
While here, wrap the line to 80 characters. Reviewed by: jlduran Fixes: https://cgit.freebsd.org/src/commit/?id=c54534e60263 ("capsicum.4: Add some more detail from the Capsicum paper") MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54761
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54419
debug: classified in
04-filenames_plain2 by
'usr.bin/'
debug: Commit manually moved from "userland" to "doc".
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292598 Approved by: ziaee, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54842
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Noted by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
kqueue1() was meant. While here, make the wording in the AUTHORS section more clear. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291908 Fixes: https://cgit.freebsd.org/src/commit/?id=9b1585384d53 ("kqueue.2: Editorial pass") Reviewed by: kib, dab MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54858
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Fixes: https://cgit.freebsd.org/src/commit/?id=9bf69c37f43e96292e97e41bf942d7aca4101362 Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
pf's divert-to action can be used to pass packets to a divert socket, but divert.4 didn't mention this, only referencing ipfw. Try to make the text a bit more general. Reviewed by: igoro, kp, glebius MFC after: 2 weeks Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54848
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
03-filenames_plain1 by
'RELNOTES'
Adopt the POSIX standard text to our implementation. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=206284 Reviewed by: des, jilles, ziaee Differential Revision: https://reviews.freebsd.org/D49895
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: emaste, olce, ziaee Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54951
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292820 Submitted by: Kraytonian MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
+ Mention relevance of this file in the vt manual screen.font entry + The vidfont manual is in section one, not eight + Remove leftover blank line from freebsd tag removal MFC after: 3 days
debug: Commit manually moved from "unknown" to "doc".
Now that we have angle bracket characters for all common display sizes, sprinkle in the correct macros for the structures in this page. While here, fix a mdoc typo, a linter warning, and switch a parenthetical to a much smoother appositive. MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=7cd6da268a8f (vt.4: Style pass)
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: glebius Approved by: glebius (mentor) Differential Revision: https://reviews.freebsd.org/D52980
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
netintro(4) is a great manual page that provides a basic introduction to network facilities, I think it is well worth mentioning in the socket(2). I also think we can incorporate this reference somewhere in the text as well, but I'm not sure, maybe the reference in the SEE ALSO section would be enough. Reviewed by: glebius MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55032
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
03-filenames_plain1 by
'RELNOTES'
Since ecdf4409f910 ("Rework the eventhandler locking [...]"),
EVENTHANDLER_REGISTER() can never return NULL.
Suggested by: olce
Reviewed by: olce, ziaee, zlei
Approved by: olce, zlei
Fixes: https://cgit.freebsd.org/src/commit/?id=ecdf4409f910 ("Rework the eventhandler locking [...]")
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D55014
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Due to this all the rest of the items in the Built-in Commands section were not rendered at all. Fixes: https://cgit.freebsd.org/src/commit/?id=2711852bd9ac ("sh.1: Provide detailed job control documentation") MFC after: 3 days Reviewed by: emaste, ziaee Differential Revision: https://reviews.freebsd.org/D55080
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Add missing entries MD, VFS, and DISK. Refactor list into a three column table, so the data is all visible at once, buying us ten lines at MANWIDTH 80, and still rendering nicely at MANWIDTH 59. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292530 MFC after: 3 days Reported by: Slawomir Wojciech Wojtczak <vermaden@interia.pl>
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
2005-09-25 - wpa_supplicant v0.4.5 removed "server_nai" 2008-02-22 - wpa_supplicant v0.6.3 removed "eappsk" and "nai" PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=284126 MFC after: 3 days Reviewed by: carlavilla, ziaee Reported by: J.R. Oldroyd <fbsd@opal.com> Differential Revision: https://reviews.freebsd.org/D49010
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
The git-arc script was moved from devel/freebsd-git-devtools to devel/freebsd-git-arc. Reviewed by: ziaee Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55127
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
The git-arc script was moved from devel/freebsd-git-devtools to devel/freebsd-git-arc. Reviewed by: ziaee Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55128
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
These manuals abused the name macro for every line of kernel cfg as well as an example command to show the module name which was mixed in without separation. This bugs the whatis database into thinking that `INET` and `kldload` are names for this page, and violates best practice by mixing commands and configuration in a continuous example. Rewrite to use the kernel configuration macro, Cd, and show the module name via an example configuration in rc.conf, according to the spec and established practice. Do not bump the date because these markup errors are not a content change. MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: olce, jhb Differential Revision: https://reviews.freebsd.org/D55150
debug: classified in
03-filenames_plain1 by
'RELNOTES'
This change was forgotten by me in the previous commit to this file. Reported by: kib Approved by: implicit (change omitted from previous commit) Fixes: https://cgit.freebsd.org/src/commit/?id=31ec8b6407fdd5a87d70265762457c67ce618283
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55228
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
pw.8 structure is quite different from usual manual page, especially in describing -o option usage. Specifically, these paragraphs do not contain "uid/gid" terms, and have "user id"/"group id" instead, making searching for "override duplicate safety belt" difficult. Try to simplify such searches. Also, clarify uid/gid space between 100 and 1000 as "somewhat special", as it actually is. Discussed on: russian telegram FreeBSD group Reviewed by: eugen, novel MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293072 Sponsored by: NVidia networking MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293072 Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282639 MFC after: 3 days Reviewed by: michaelo Differential Revision: https://reviews.freebsd.org/D55122
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Approved by: markj (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55249
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: markj, glebius MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55266
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
open.2: stop making impression that fd must be directory Reviewed by: des, rmacklem Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55302
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
open.2: grammar improvements Submitted by: matteo Fixes: https://cgit.freebsd.org/src/commit/?id=5bcccc702b29a0e173a5916b001771dd7b280c7c MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
It's not obvious that if `exitstatus` is omitted, the exit status of the function is taken from the last executed command. MFC after: 3 days Reviewed by: jilles, ziaee Differential Revision: https://reviews.freebsd.org/D55026
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days Reviewed by: ziaee Fixes: https://cgit.freebsd.org/src/commit/?id=2711852bd9ac (sh.1: Provide detailed job control documentation) Differential Revision: https://reviews.freebsd.org/D55194
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days Reported by: jrtc27 Reviewed by: des Differential Revision: https://reviews.freebsd.org/D54629
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: kib, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55281
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Fixes: https://cgit.freebsd.org/src/commit/?id=1687d77197c0 (man filesystems: move driver pages) MFC after: 3 days Reviewed by: ziaee Sponsored by: Defenso Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Closes: https://github.com/freebsd/freebsd-src/pull/2015
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Key bindings for command line editing are documented in editline(7). MFC after: 3 days Reviewed by: jilles, ziaee Differential Revision: https://reviews.freebsd.org/D54767
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
vmm.4: Add information on VM access control Add a section to vmm.4 explaining how vmm device file ownership works. MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54742
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
vmm.4: Fix width Reported by: ziaee Fixes: https://cgit.freebsd.org/src/commit/?id=d26c8ae527bb ("vmm.4: Add information on VM access control")
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
03-filenames_plain1 by
'RELNOTES'
These programs require elevated privileges to work and have not seen regular maintenance in decades. Unless someone steps up and overhauls them, we will have to remove them before 16.0. Better-maintained alternatives are available in ports (print/cups, sysutils/LPRng). MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55360
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
This manual used the library macro to mark up a header file, causing pollution in the apropos database for libraries, as well as omission from the apropos database for headers. This also renders differently, enclosing the header in angle brackets. MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Add terse descriptions for the individual files that make up a port to the FILES section of the ports reference manual. MFC after: 3 days Reviewed by: adamw Differential Revision: https://reviews.freebsd.org/D55404
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days Reviewed by: bapt (previous), jilles, tembun@bk.ru Differential Revision: https://reviews.freebsd.org/D55295
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Tiny manpage bug I caused in D50241 I left a line in the manpage that shouldn't be there. MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=72d01e62b082 ("netgraph: teach ngctl to attach and run itself in a jail") Reviewed by: des, markj Differential Revision: https://reviews.freebsd.org/D55485
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Our manual page currently states that system() will return 127 if it fails to execute the shell. The actual return value is, to quote POSIX, “as if the command language interpreter had terminated using exit(127) or _exit(127)”. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: bnovkov, kevans Differential Revision: https://reviews.freebsd.org/D55483
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Correct media types for 1000Mbit/s, 2500Mbit/s, 5000Mbit/s and 10Gbit/s. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55496
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
"These examples appear to be originally noted thirteen years ago by Mark Saad, contributed by eadler, put into a patch by Felix Johnson, and made into mdoc by myself. Finally, put this bug to rest." ~ziaee PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=167742 Co-authored-by: eadler, ziaee, Mark Saad Differential Revision: https://reviews.freebsd.org/D48877
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Use the correct key name in the chpasswd section. Remove a stray line to fix the description of 'password'. MFC after: 1 week Sponsored by: Chelsio Communications Reviewed by: maxim Differential Revision: https://reviews.freebsd.org/D55547
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Add explicit note that me(4) works as a point-to-point pseudo device. MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Reviewed by: ziaee, mhorne Approved by: lwhsu (mentor) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54466
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
FreeBSD UFS does not support hardlinks to directories. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days Co-authored-by: Adam Weinberger <adamw@FreeBSD.org> Differential Revision: https://reviews.freebsd.org/D55443
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
This fixes an mdoc warning and also properly indents this list. While here, update the quoted argument to be the longest tag in the list. Also while here, correct the description of pd_numa_domain. NUMA domains are a property of the device, not of the driver. Reviewed by: ziaee, imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55770
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Move the description of the optional device argument earlier before describing individual command modes. Add a subsection for list mode and a second subsection for the other modes that work with a single device. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55773
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Remove mention of the longjmp(3), which does not use sigreturn. Try to be more precise when describing the syscall effects. Reviewed by: emaste, markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55750
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
ifuncs are now implemented for all architectures, so drop the caveat statement. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55815
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Refer to alloca() as a (builtin) function or macro, as it could be defined as either depending on the compiler. Paragraph about bug comes from Darwin's libc, and example added to illustrate it. Reviewed by: bnovkov Approved by: bnovkov MFC after: 3 days Obtained from: https://github.com/apple-oss-distributions/libc (partially) Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55370
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Add D-Link DGE-530(T) and Killer E2600 to the re(4) HARDWARE list. Both are supported by the driver but were missing from the man page. Also add cross-references between re(4) and rge(4) in SEE ALSO, as both are Realtek NIC drivers. Signed-off-by: Christos Longros <chris.longros@gmail.com> Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55745
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Document the edns0, inet6, insecure1, insecure2, no-check-names, and rotate options which are parsed by res_init(3) but were not described in the resolver(5) man page. MFC after: 1 week Signed-off-by: Christos Longros <chris.longros@gmail.com> Reviewed by: des Differential Revision: https://reviews.freebsd.org/D55864
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Hardware drivers and architecture-specific code.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289284 Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54339
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire pcm_feeder->desc_static Not sure what the value of this was. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54103
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Update pcm/feeder.h LICENSE Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire unused pcm_feeder->align Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Get rid of unnecessary breaks No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Stop building midi as a module There is no reason for this. The midi functions are used by drivers on-demand anyway. Use SYSINIT(9) instead to do the appropriate (de-)initilizations. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54125
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire midi_devs and mstat_lock Nowadays midi_devs only has two uses: 1. To verify in midi_init() if a given device unit exists, as well as to calculate the next device unit. Instead, make sure we always get a unique unit and channel number using unr(9). 2. To keep track of all midi devices, so that it can destroy them all at once in midi_sysuninit(). However, since we stopped building midi as a kernel module, there is no reason to do that, simply let the drivers tear down the devices themselves. Also retire mstat_lock since it's only used to protect midi_devs. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261071 Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54126
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Because testing the midi/ code of sound(4) requires a physical MIDI device, add some basic MIDI support to snd_dummy(4) so that we can test patches to midi/ easier. Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54127
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire snd_midi->qlock
snd_midi->qlock is used to protect snd_midi->{in,out}q. However, apart
from the numerous LORs present already in the code, there is no reason
not to use snd_midi->lock, as we do for the rest of the structure
Started by: https://github.com/freebsd/freebsd-src/pull/1902
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Reviewed by: dev_nicolas-provost.fr
Differential Revision: https://reviews.freebsd.org/D54129
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Update midi/midi.* LICENSE Spsonsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Merge midi_destroy() with midi_uninit() Also always call MPU_UNINIT(). It does not make sense not to if we are deallocating everything. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54192
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire snd_midi->busy Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Remove dead if-statement No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Rename midi_cdevsw name to "midi" Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire MIDI_DEBUG Better logging will be implemented. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire MIDIQ_DEBUG Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Improve snd_midi->{in,out}q allocation
Currently we lock and allocate the buffers with M_NOWAIT, without
checking if the return value of malloc(). This is not necessary as
subsequent check below will eventually check that. However, for
correctness, allocate the buffers with M_WAITOK (there is no reason not
to) and lock afterwards.
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Reviewed by: markj
Differential Revision: https://reviews.freebsd.org/D54131
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Move sndstat out of pcm/ Needed by follow-up patches that will add sndstat support for midi/ Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54140
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Take device type into account in sndstat sndstat will be extended to work with MIDI devices as well, so separate functionality based on the device type. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54141
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Do not check for NULL before free() No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54174
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Get rid of unused midi/midi.c defines No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire mpu_callbackp() It is the exact same as mpu_callback(). No functional changed intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Make mpu_if definitions static No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Get rid of unused MIDIQ macros No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Allocate mpu401 with M_WAITOK Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sound: Retire unused snd_midi->name No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sys/conf/files: Fix sndstat path Reported by: CI Fixes: https://cgit.freebsd.org/src/commit/?id=bafa8c951d8c ("sound: Move sndstat out of pcm/") Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'sys/'
debug: moved to hardware
because 'Need to be grouped with
bafa8c951d8cfaec75e774af03d7ab6fadb448b9'
This is a layering violation, but it also makes the control flow confusing; snd_uaudio(4) should have its own lock to protect its structures. Fixes: https://cgit.freebsd.org/src/commit/?id=5cc34a83e1 ("Revert "sound: Merge chn_intr() with chn_intr_locked()"") Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54102
debug: classified in
03-filenames_plain1 by
'sys/dev/'
There is no scenario where chn_intr() is called with the channel lock already held. No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D53854
debug: classified in
03-filenames_plain1 by
'sys/dev/'
hwpstate: add CPPC support for pstate driver on AMD Implement CPPC interface for AMD Pstate Driver. This feature is only enabled when the CPUID shows it support CPPC. The CPPC is implemneted by the following steps: 1. Write MSR to enable it. 2. Read capability registert which indicates binary value of levels about lowest, best energy efficient, guarantee, and max performance. 3. Write request register with epp in energy balanced mode. And let CPU and firmware to enter autonomous mode. Also, create a sysctl handler to allow userspace to change epp value. In intel's hwpstate, The epp value can be in package level and core level. However, in AMD's one, there is only core level. Thus, to sync with the intel's code, we implement package level control in software and provide another sysctl (machdep.hwpstate_pkg_ctrl) to control it. Reviewed by: olce, khng Approved by: lwhsu (mentor) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49587
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd: Fix compile error Add parentheses between OR and AND operator to pass the compiler check. Approved by: lwhsu (mentor) Fixes: https://cgit.freebsd.org/src/commit/?id=3e6e4e4a0d42 ("hwpstate: add CPPC support for pstate driver on AMD") MFC aftert: 2 weeks Differential Revision: https://reviews.freebsd.org/D54465
debug: classified in
03-filenames_plain1 by
'sys/x86/'
The asmc_dumpall debug function previously used a hardcoded loop limit of 0x100 (256) keys with a "XXX magic number" comment. This change improves asmc_dumpall to: * Read the actual number of keys from the ASMC_NKEYS SMC key * Print the key count being dumped for better debugging output * Loop only up to the actual key count (e.g., 297 on Mac Mini 5,1) This provides more accurate debug output and removes the magic number. Tested on Mac Mini 5,1 (FreeBSD 16.0-CURRENT): * Rebuild kernel with DEBUG enabled in asmc driver * Boot with new kernel * Verify dmesg shows "asmc_dumpall: dumping 297 keys" (or actual count) * Verify all 297 keys are dumped Differential Revision: https://reviews.freebsd.org/D54436 Reviewed by: markj, adrian
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Fix a narrow window where the lock is unlocked but the checking CPU hasn't flushed things appropriately. Inside this window the CPU inside cpu_switch() will loop forever thinking the destination thread is still blocked/locked even though it is not. This manifests as the system hanging after starting all APs. I've seen this reliably trigger in qemu-system-ppc64 running power9 pseries guests; the more CPUs the more likely it triggers at boot. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292167 Differential Revision: https://reviews.freebsd.org/D54478 Reviewed by: jhibbits MFC after: 1 week Relnotes: yes
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/', 'sys/x86/']'
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
debug: classified in
05-summary-prefix by 'powerpc:'
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
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
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
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
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
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Pull-request: https://github.com/freebsd/freebsd-src/pull/1909
debug: classified in
05-summary-prefix by 'mips:'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The slot parameter actually is used as index into the memory resource. Fixes: https://cgit.freebsd.org/src/commit/?id=c11bbc7d
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
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
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/arm64/', 'sys/dev/', 'sys/riscv/']'
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
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/arm64/', 'sys/dev/', 'sys/riscv/']'
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
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/arm64/', 'sys/dev/', 'sys/riscv/']'
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")
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
These are left over from the $FreeBSD$ stuff. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1954
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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)
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
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)
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
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)
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Obtained from: Chelsio Communications MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
05-summary-prefix by
'cxgbe\(4\):'
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
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reported by: novel Reviewed by: bnovkov Fixes: https://cgit.freebsd.org/src/commit/?id=e758074458df ("vmm: Move the module load handler to vmm_dev.c") Differential Revision: https://reviews.freebsd.org/D54750
debug: classified in
03-filenames_plain1 by
'sys/dev/'
that calculates the max index of the present LVT entry from the value of the LAPIC version register. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54773
debug: classified in
03-filenames_plain1 by
'sys/x86/'
First, the CMCI entry index is APIC_LVT_MAX, so it was excluded unconditionall [1]. Second, the number of entries is reported by the version register, and we must not access past the last reported entry. Reported by: olivier [1] Fixes: https://cgit.freebsd.org/src/commit/?id=11f954b021a1aadde1d03d40ed5d6b529e14da98 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54773
debug: classified in
03-filenames_plain1 by
'sys/x86/'
When resuming from ACPI suspend, the ACPI_SS_SLP_PREP bit in slp_state was being checked and subsequently unset when calling resumeclock(). This bit was also being checked for the AcpiLeaveSleepState() call in the non-s2idle path, but having just been unset, it was never actually being called. Change this so that resumeclock() is always being called (since we never goto breakout between suspendclock() and resumeclock() anyway) and ACPI_SS_SLP_PREP is purely used for AcpiEnterSleepStatePrep() and AcpiLeaveSleepState() in the non-s2idle paths. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292568 Reported by: Marek Zarychta Reviewed by: olce Tested by: Marek Zarychta Approved by: olce Fixes: https://cgit.freebsd.org/src/commit/?id=7669cbd0f064 (“acpi: Suspend-to-idle support (s2idle)”) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54777
debug: classified in
03-filenames_plain1 by
'sys/dev/'
It is guarded by #ifdef KTR, so the warning does not show up under usual kernel configs. Fixes: https://cgit.freebsd.org/src/commit/?id=ed85203fb7a0334041db6da07e45ddda4caef13d Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D54781
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
No functional change intended. Reviewed by: Timo Völker MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54788
debug: classified in
03-filenames_plain1 by
'sys/dev/'
If cpu-handle property doesn't exist simply iterate and assign the CPUs in sequence rather than following the convoluted search which may not bear fruit in some cases. If cpu-handle doesn't exist for one portal it probably doesn't exist for any of them.
debug: classified in
03-filenames_plain1 by
'sys/dev/'
On multithreaded cores (e6500) the CPU ID in the device tree (reg[0]) is the primary core, which may not match the cpuid, until Book-E threading is added.
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
If an error occurs during attach after ofw_pcib_init() runs, the device is torn down, leaving the rmans embedded in the softc attached to the rman list, thus corrupting the rman list. Fix this by undoing everything that was done by this point. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
No functional change intended. Reviewed by: bz, dsl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54805
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The Framework 13 runs very hot the maximum frequency is possible. By disabling CPPC (reverting to Cool`n'Quiet 2.0) we can use powerd to limit the CPU frequency to 2200, thereby reducing the CPU temperature. Some systems may run slower with CPPC enabled. See PR/292615 for that bug. Those experiencing either of these issues may add the following to their loader.conf or device.hints to disable CPPC: machdep.hwpstate_amd_cppc_enable="0" PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: lwhsu, olce Differential revision: https://reviews.freebsd.org/D54803
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/']'
Add description for each LVT element, use it in show lapic dump. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Let the network stack know that the NIC supports checksum offloading for the IPv4 header checksum and the TCP and UDP transport checksum. This avoids the computation in software and therefore provides the expected performance gain. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292006 Reviewed by: dsl, Timo Völker MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54809
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Some virtualization platforms provide broken configurations. There is a GIC interrupt controller, however accessing the CPU interface registers leads to an external data abort. As these are needed to handle interrupts we are unable to boot further. Detect this misconfiguration and panic to tell the user the issue. Reviewed by: emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54832
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Include sys/pcpu in vmm_host.h as its structs and functions are used there, and add a forward declaration of struct pcpu to md_var.h as it is used in some function prototypes. Reviewed by: corvink, markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D51550
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Revert the argument change that broke libcam in 8c35de49 and move power_condition support to scsi_start_stop_pc(). Reported by: imp Reviewed By: #cam, imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54822
debug: classified in
05-summary-prefix by
'cam/scsi:'
Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54875
debug: classified in
03-filenames_plain1 by
'sys/dev/'
acpi_spmc: Add system power management controller driver Add SPMC (system power management controller) driver as acpi_spmc. This is the device which provides the LPI device D-state constraints and allows for OSPM to send S0ix/modern standby entry/exit notifications. This supports the original Intel DSM (https://uefi.org/sites/default/files/resources/Intel_ACPI_Low_Power_S0_Idle.pdf, untested), the AMD DSM (tested), and the Microsoft DSM (tested). Before entry, acpi_spmc_check_constraints is called to notify of any violated power constraints. This will use acpi_pwr_get_state to get current device D-states when that gets added back. Reviewed by: olce Tested by: jkim, Oleksandr Kryvulia, Matthias Lanter Approved by: olce Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48387
debug: classified in
03-filenames_plain1 by
'sys/dev/'
acpi: Add ACPI_SPMC debug layer define Reported by: des Fixes: https://cgit.freebsd.org/src/commit/?id=c5daa5a4c32c ("acpi_spmc: Add system power management controller driver") Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
acpi_spmc(4): Fix compilation on 32-bit platforms Fixes: https://cgit.freebsd.org/src/commit/?id=c5daa5a4c32c ("acpi_spmc: Add system power management controller driver") Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Extend pmap_bootstrap_dmap() to build the DMAP with 4K-page granularity.
Recently we have been approximating it with 2MB mappings. The motivation
again is the problematic FU540 hardware, which seems to require more
accurate mappings still to avoid triggering its PMP errata.
Although this hardware alone is of little consequence, constructing the
DMAP accurately/correctly may help avoid future surprises.
The implementation contains some repetitive code. This could be
expressed differently, but my guiding principle for these early routines
is that being simple and explicit about what we are doing makes them
easier to comprehend.
See also 762a3224cde6 ("riscv: smarter DMAP construction).
Tested by: Klaus Küchemann <maciphone2@googlemail.com>
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54716
debug: classified in
03-filenames_plain1 by
'sys/riscv/'
sym(4): Consistently use device_printf(9) where applicable
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sym(4): Use memcpy(9) instead of bcopy(9) The overlap handling of bcopy(9) is not required in these cases. Obtained from: BSD-licensed Linux sym53c8xx driver
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sym(4): Provide a DEVICE_DETACH(9) method This also fixes sym_cam_free() to tear things down correctly, i. e. in opposite order of setup, as well as sym_cam_attach() to not free devq and SIM twice in the failure case.
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sym(4): Employ memory barriers also on x86 In an MP world, it doesn't hold that x86 requires no memory barriers. This change should also fix panics due to out-of-sync data seen with FreeBSD VMs on top of OpenStack and HBAs of type lsiLogic. [1] While at it: - Improve the granularity somewhat by distinguishing between read and write memory barriers as well as refer to existing *mb(9) functions instead of duplicating these [2], unless IO barriers are also used. - Nuke the unused SYM_DRIVER_NAME macro. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270816 [https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=1] Obtained from: BSD-licensed Linux sym53c8xx driver [2] MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add an inline function hfence_gvma() for hfence.gvma instruction. Signed-off-by: Doongar Singh <doonbsd@gmail.com> Reviewed by: mhorne, markj Differential Revision: https://reviews.freebsd.org/D54857
debug: classified in
03-filenames_plain1 by
'sys/riscv/'
This function handles invalid intermediate PTP entries, but there's no reason for this: the passed range should be mapped. In particular, we assert that all L3 entries encountered are mapped. So let's simplify the code a bit. No functional change intended. Reviewed by: andrew MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54738
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
When the link is down don't set flags other than IFM_AVALID & IFM_ETHER This avoids `media: Ethernet autoselect (Unknown <full-duplex>)` on ifconfig Reviewed by: zlei, pouria Approved by: glebius (mentor) MFC after: 1 week Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D54573
debug: classified in
03-filenames_plain1 by
'sys/dev/'
There's no timebase freeze platform routine registered on my dual 2.3GHz G5 PPC970FX Apple PowerMac. For platforms without an explicit timebase freeze/unfreeze, we'll have to make do with what we have - which for now is an explicit hand-crafted spinlock/rendezvous method. * For existing platforms, they'll still continue to clock freeze / rendezvous; albeit with some stronger atomic bits now (from jhibbits@.) * Instead of the fallback being "no timesync", implement a best-effort one which does a similar rendezvous barrier between BSP and APs, but instead of freeze/unfreeze the first instruction after the CPUs all register they're ready is to set the timebase. This has resulted in many reboots of my Powermac G5 dual-socket device correctly starting and running in SMP mode. Differential Revision: https://reviews.freebsd.org/D54821 Reviewed by: jhibbits
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
According to POWER8_UM_v1.3_16MAR2016 3.8.3 Translation Lookaside Buffer (TLB), POWER8 supports lockless TLBIE operations. Locally Tested: * IBM POWER8 Revision 2.0, dual socket, 160 threads Differential Revision: https://reviews.freebsd.org/D54855 Approved by: jhibbits
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
The driver should look for active queues and one potential default-queue in both halves of the split instead of stopping at the first valid default-queue. Fixes: https://cgit.freebsd.org/src/commit/?id=a9f476580eb0 cxgbe(4): fixes for netmap operation with only some queues active MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Added RoCE support for BCM576xx controllers with below changes, 1. Update the BAR offsets for handling BCM576xx controllers. Use the values populated by the L2 driver for getting the Doorbell offsets. 2. Use msn index instead of tail to pull psn table entry. 3. Temporarily disable dbr pacing feature untill it is fully implemented. 4. Add support for 400G speed. Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54521 MFC after: 3 days
debug: classified in
05-summary-prefix by
'bnxt_re/libbnxtre:'
Check FW flags for status of Resource Limits. If bit FUNC_QCAPS_RESP_FLAGS_EXT2_SW_MAX_RESOURCE_LIMITS_SUPPORTED is set, that means FW set the resource limit for L2 and RoCE. We'll then do the following: L2 driver would allocate context memory based on what FW reported. RoCE driver uses FW reported values without capping. These values are the total FW reported value minus L2 and other components shares. For example: FW reported max_qps = 137217 in L2 query, this includes: 5120 for L2 1025 for QP1 131072 for RoCE L2 will allocate backing store memory for the total. In RoCE query, we'll get max_qp = 131072 and use it without further capping. Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54522 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Currently driver is not considering the active_lanes while displaying the speed & width of port and hence it showing invalid active_speed and active_width values in the ibv_devinfo command output when two ports are aggregated at hardware level. Fixed the driver to consider the active_lanes while determining the active_speed & active_width values. Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54523 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Added support to display board_id in ibv_devinfo output. ibv_devinfo util reads the board_id from below sysctl attribute, so added this sysctl attribute. sys.class.infiniband.bnxt_reX.board_id Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54524 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Variable size WQE means that each send Work Queue Entry to HW can use different WQE sizes as opposed to the static WQE size on the current devices. Set variable WQE mode for BCM576xx devices. Depth of the Queue will be a multiple of slot which is 16 bytes. The number of slots should be a multiple of 256 as per the HW requirement. Initialize the Software shadow queue to hold requests equal to the number of slots. Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54525 MFC after: 3 days
debug: classified in
05-summary-prefix by
'bnxt_re/libbnxtre:'
This function is not used outside of machdep.c and is already static on arm64 and riscv. Reviewed by: imp Effort: CHERI upstreaming Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54838
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Commit cc81c44dd806737f98b4fd4094674dd71c8749f3 aimed to consolidate duplicated code between the Book-E and AIM backends. For cpu_thread_alloc cpu_thread_alloc and cpu_fork it used the AIM functions which used a bogus alignment mask (~0x2f). The Book-E functions used a proper alignment mask (~0x3f). The AIM functions appear to have been busted since they were first imported in commit 919cb3362fded33aca682a6ac57777f8fff86e36. To fix, use the Book-E mask which requests 64 byte alignment. Probably this was harmless in practice since td_kstack is page aligned and struct pcb is probably a multiple of 32 bytes in size, so the 0x10 bit should have been clear anyway. Reviewed by: fuz, jhibbits Fixes: https://cgit.freebsd.org/src/commit/?id=cc81c44dd806 ("Unify ABI-related bits of the Book-E and AIM...") Effort: CHERI upstreaming Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54839
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
Reviewed by: kib, jhibbits Effort: CHERI upstreaming Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54840
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/', 'sys/powerpc/']'
Fixes: https://cgit.freebsd.org/src/commit/?id=cd036e891a35 ("ahc_pci.c: If bus_dma...") MFC after: 3 days Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Previously, we would first call AcpiEvaluateObject() to execute \_Sx before calling AcpiGetSleepTypeData(). This was unnecessary, as AcpiGetSleepTypeData() performs the same call itself. While doing so, the latter function logs any other error than AE_NOT_FOUND (which indicates that a particular sleep state is not supported), which most probably is an added benefit of this change. Reviewed by: obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54624
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This has been possible since ACPICA 20240827, and is actually a requirement to get out of S3 on ACPI_REDUCED_HARDWARE (that said, we don't implement S3 on arm64 yet). Relevant ACPICA commit: https://github.com/acpica/acpica/commit/79cd933e7b370e8d3fb490bf36ca5d111a12f96a. Reviewed by: obiwac MFC after: 2 weeks MFC to: stable/15 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54625
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Summary: Doing so will let the upper layer know how to deal with software hash, with benefits like inp_flowid can be set and m_pkthdr.flowid can be set in output path. Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54929
debug: classified in
03-filenames_plain1 by
'sys/dev/'
in kernel. Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
03-filenames_plain1 by '['sys/arm/',
'sys/riscv/']'
Reviewed by: olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
It is nop for 4BSD. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/arm/', 'sys/arm64/', 'sys/i386/', 'sys/powerpc/',
'sys/riscv/']'
For !SCHED_ULE, even if the fence is not needed, it is harmless. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
03-filenames_plain1 by
'sys/x86/'
This is causing compilation issues on powerpc:powerpc GENERIC.
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
Add support for IFCOUNTER_IPACKETS, IFCOUNTER_OPACKETS, IFCOUNTER_OBYTES, IFCOUNTER_OMCASTS, IFCOUNTER_OERRORS, and IFCOUNTER_OQDROPS. This allows tools like systat to report the incoming and outgoing bandwidth. Reviewed by: dsl, Timo Völker MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54893
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The coredump logic calls get_arm64_sve twice: once to get the note size,
and once to get the data. The note size calculation depended on the
volatile `PCB_FP_SVEVALID` flag. If this flag was cleared between the
two calls (e.g., due to a context switch clearing the flag to comply
with the ABI), the second call would expect a smaller buffer size than
the first, triggering a KASSERT panic ("invalid size").
Fix this by ensuring the SVE state is saved to the PCB before we decide
whether to use SVE or VFP.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292195
Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D54532
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
This patch fixes three issues:
(1) Initially, set the hwassist flags correctly when enabling
transmit checksum offload for TCP/IPv6 and UDP/IPv6.
(2) Keep the hwassist flags in sync with the capabilities when
changing txcsum.
(3) Keep the hwasssit flags in sync with the capabilities when
changing txcsum6.
Without this patch, transmit checksum offloading for TCP/IPv6 and
UDP/IPv6 is never used and transmit checksum offloading for IPv4,
TCP/IPv4 and UDP/IPv4 is always used, even if disabled via
ifconfig ue? -txcsum.
Reviewed by: Timo Völker
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D54974
debug: classified in
03-filenames_plain1 by
'sys/dev/'
In the ice_if_promisc_set function, the driver currently disables the IFF_ALLMULTI flag, thereby preventing the activation of multicast mode. To address this issue, implement appropriate handling to ensure the flag is managed correctly. Signed-off-by: Yogesh Bhosale <yogesh.bhosale@intel.com> Tested by: Gowthamkumar K S <gowtham.kumar.ks@intel.com> MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54186
debug: classified in
03-filenames_plain1 by
'sys/dev/'
this patch adds PCI IDs to the ig4(4) driver: - Lunar Lake-M (0xa878, 0xa879, 0xa87a, 0xa87b) These controllers use the Tiger Lake hardware revision of the I2C IP. Adding these IDs enables support for peripherals connected to the I2C Bus. Tested on: Intel Lunar Lake (LENOVO_MT_21QX_BU_Think_FM_ThinkPad T14s Gen 6) Signed-off-by: Defenso-EBO <etienne.bonnand@defenso.fr> MFC after: 2 weeks Sponsored by: Defenso Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1995
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Rather than provide a static table of counters, this change computes the number of counters that are available by checking several CPUID leafs and falling back to defaults on older processors. The limits are set to support the maximum number of counters of each type. Sponsored by: Netflix Reviewed by: imp, mhorne Pull Request: https://github.com/freebsd/freebsd-src/pull/1983
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The variable reg_rctl stores the value read from reg E1000_RCTL. It may contain bits E1000_RCTL_VFE and E1000_RCTL_CFIEN which control VLAN hardware filter feature. The promiscuous mode implies all tagged or untagged packets should be accepted, so the VLAN hardware filter feature should be disabled when enabling the promiscuous mode. Calling em_if_vlan_filter_disable() did the task, but later writing the value of reg_rctl back to the reg E1000_RCTL may restore the feature. Move the calling of em_if_vlan_filter_disable() after writing the reg to fix that. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292759 Reviewed by: kbowling Tested by: vova@zote.me Fixes: https://cgit.freebsd.org/src/commit/?id=2796f7cab107 e1000: Fix up HW vlan ops MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54973
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Update to versions: FreeBSD14 14.4690.2008 FreeBSD15 15.2.0.2008 Included in this update are: - Support for new controllers - Add code that utilizes the new BIG_IOCTL_Command_struct and allows the I/O buffer size for a single passthrough ioctl to be stored as a 32 bit integer instead of the original 16 bit integer. - Update occurrences of Microsemi to Microchip - Some format changes including converting comments from C++ to C style, remove instances of /* $FreeBSD$ */, and updating copyright dates. Update to versions: FreeBSD14 14.4690.2008 FreeBSD15 15.2.0.2008 Included in this update are: - Support for new controllers _ Add code that utilizes the new BIG_IOCTL_Command_struct and allows the I/O buffer size for a single passthrough ioctl to be stored as a 32 bit integer instead of the original 16 bit integer. - Update occurrences of Microsemi to Microchip - Some format changes including converting comments from C++ to C style, remove instances of /* $FreeBSD$ */, and updating copyright dates. Reviewed by: imp Approved by: imp MFC after: 1 week Sponsored by: Microchip Technology Inc. Differential Revision: https://reviews.freebsd.org/D54787
debug: classified in
03-filenames_plain1 by
'sys/dev/'
When inlining the macro, reg was not substituted with the %ecx argument previously passed in. One of the definitions was also left behind as an empty macro. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292883 Fixes: https://cgit.freebsd.org/src/commit/?id=377c053a43f3 ("cpu_switch(): unconditionally wait on the blocked mutex transient") MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/i386/'
As part of making the chip-specific mix and match of different accesses (DMA/bus space) work as desired, the intent is to map the HCB memory as uncacheable. Prior to VM_MEMATTR_*, the !x86 way of indicating this to bus_dmamem_alloc(9) was BUS_DMA_COHERENT. Then later on in 2db99100a4, BUS_DMA_NOCACHE was hooked up to VM_MEMATTR_UNCACHEABLE for x86. As it turns out, still as of today bus_dmamem_alloc(9) differs in this regard across architectures. On arm, it still supports BUS_DMA_COHERENT only for requesting uncacheable DMA and x86 still uses BUS_DMA_NOCACHE only. On arm64 and riscv, BUS_DMA_COHERENT seems to effectively be an alias for BUS_DMA_NOCACHE. Thus, allocate the HCB memory with BUS_DMA_COHERENT | BUS_DMA_NOCACHE, so we get uncacheable memory on all architectures including x86 and so loads and stores from/to HCB won't get reordered. However, even on x86 we still need to use at least compiler barriers to achieve the desired program order. This change should also fix panics due to out-of-sync data seen with FreeBSD VMs on top of OpenStack and HBAs of type lsiLogic as a result of loads and stores getting reordered. [1] While at it: - Nuke the unused SYM_DRIVER_NAME macro. - Remove unused/redundant HCB members and correct a comment typo. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270816 [https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=1] MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/dev/'
These eventhandlers are called after suspending the device tree and before resuming it. This is useful for PMC (power management controller) drivers. Reviewed by: olce Approved by: olce Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48735
debug: classified in
03-filenames_plain1 by
'sys/dev/'
SPMC suspend runs after the device tree is suspended using the acpi_post_dev_suspend eventhandler, and SPMC resume runs before the device tree is resumed using the acpi_pre_dev_suspend eventhandler. Reviewed by: olce Approved by: olce Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48735
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Mac firmware hides the Intel integrated GPU (iGPU) on dual GPU x86 systems, i.e., with AMD/NVIDIA dGPUs, when the Darwin OSI is not installed via ACPI. Prior to this change, FreeBSD always used the dGPU. This is fine in practice, but consumed more power than when the iGPU is used, resulting in reduced battery life. Linux handles this in `drivers/acpi/osi.c` by detecting Apple hardware via DMI, disabling all Windows OSI strings, and by explicitly installing the Darwin OSI ACPI handler. This change applies equivalent logic to the acpi(4) driver on FreeBSD. This feature can be enabled/disabled using the `hw.acpi.apple_darwin_osi` tunable. Setting this tunable to `0` restores the previous behavior by explicitly disabling the added support. Reviewed by: obiwac, ngie, adrian Differential Revision: https://reviews.freebsd.org/D54762
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Move swi_remove() call before acquiring the tty lock. swi_remove() calls intr_event_remove_handler() which may sleep via msleep(), causing a lock order violation when called with the tty mutex held. The software interrupt handler removal operates on the interrupt event structure independently and does not require the tty lock. This matches the pattern used in other drivers such as tcp_hpts.c where swi_remove() is called without holding other locks. Reviewed by: imp, kevans MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54953
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add POWER10 and POWER11 to the list of lockless TLBIE capable CPUs. According to Linux, anything POWER5 and later should be able to do this, but that hasn't been tested with FreeBSD. POWER10 and POWER11, being derived after the POWER9, implicitly have this capability per the ISA spec. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
powerpc/pmap/oea64: Make PV_LOCK superpage sized HPT superpages are 16MB, not 2MB. Taking 8 locks to lock a super page almost defeats the purpose of using the super page. Expanding the PV_LOCK scope to cover 16MB (24 bit shift) reduces this to a single lock. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
powerpc/pmap: Use a constant for HPT superpage shift There are no plans to allow multiple sizes of HPT superpages, so just use a constant for it. MFC after: 3 weeks Fixes: https://cgit.freebsd.org/src/commit/?id=1bc75d77e9 ("powerpc/pmap/oea64: Make PV_LOCK superpage sized")
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
The Pluton startmethod uses a simple doorbell mechanism to wakeup the TPM unit after we've issued various forms of state change, with the registers to use specified in the startmethod-specific segment of the TPM2 table (up to 12 bytes after the StartMethod). At the very least, this is the kind of TPM in use by my AMD Zen 4-based Minisforum machine. Differential Revision: https://reviews.freebsd.org/D53683
debug: classified in
03-filenames_plain1 by
'sys/dev/'
x86: x86_msr_op(): Move setting mode up, delineate logical blocks No functional changes (intended). Reviewed by: kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54996
debug: classified in
03-filenames_plain1 by
'sys/x86/'
x86: x86_msr_op(): Simplify assertions Simplify them by moving them into more natural places, i.e., default cases of 'switch' statements. No functional change (intended). Reviewed by: kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54996
debug: classified in
03-filenames_plain1 by
'sys/x86/'
x86: x86_msr_op(): MSR_OP_LOCAL: Disable interrupts on atomic ops On MSR_OP_LOCAL and non-naturally-atomic operations (MSR_OP_ANDNOT and MSR_OP_OR), there is no guarantee that we are not interrupted between reading and writing the MSR, and that interruption could actually perform some operation on that MSR, which would be lost. Prevent that problem by temporarily disabling interrupts around MSR manipulation. Reviewed by: kib Discussed with: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54996
debug: classified in
03-filenames_plain1 by
'sys/x86/'
While here, rename an argument of BITS_VALUE() to be consistent with the other macros. Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54997
debug: classified in
03-filenames_plain1 by
'sys/x86/'
To be closer to AMD's official terminology, except for the "Lowest
Non-Linear Performance" field which we label as 'EFFICIENT_PERF' closer
to Intel's ("Most Efficient Performance"), and to clear possible
confusion.
No functional change (intended).
Reviewed by: aokblast
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54998
debug: classified in
03-filenames_plain1 by
'sys/x86/'
On AMD processors libpmc was using the topic field (based on filename) to determine the counter's subclass. Unfortunately, the JSON definitions for AMD Zen 1-4 have the L3 counters in files shared with other counters. This change has libpmc to use the pmu field (which is derived from the Unit field in JSON) to determine the correct counter subclass. Reviewed by: mhorne MFC after: 2 weeks Sponsored by: Netflix Pull Request: https://github.com/freebsd/freebsd-src/pull/1984
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
While here, declare 'size' only in the relevant block. No functional change (intended). MFC after: 1 week Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Setting up the sysctl tree later: 1. Fixes not de-registering sysctl knobs on failure to attach. 2. Avoids having inconsistent knob values exposed during a brief moment. Reviewed by: imp, obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54926
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Another boolean, indicating hardware support, will be introduced in next commit. Thanks to the previous commit modifying sysctl_handle_bool(), this change is backwards-compatible with old programs using an integer in and out of sysctl(3). Reviewed by: obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54626
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This allows us to also use the common VIRTIO_SIMPLE_PROBE and to have devmatch load the driver when detected. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54684
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54685
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Add the macros and detection for Fine-grained traps (FEAT_FGT and FEAT_FGT2). Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54686
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Set the Fine-grained trap registers to trap any features we don't support. These are expected to be more useful when we support nested virtualisation, so for now just the base features and GICv3 are not trapped. As nested virtualisation will require VHE we only set the fine-grained trap registers when VHE is used. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54687
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
vmmdev_create() increments the VM count as its last step and calls vmmdev_destroy() if it fails. However, vmmdev_destroy() unconditionally decrements the count. Correct this bug by reordering operations. Fixes: https://cgit.freebsd.org/src/commit/?id=1092ec8b3375 ("kern: Introduce RLIMIT_VMM") Reviewed by: bnovkov Differential Revision: https://reviews.freebsd.org/D55068
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sc->vm is unconditionally dereferenced earlier in this function. No functional change intended. Reviewed by: bnovkov MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55069
debug: classified in
03-filenames_plain1 by
'sys/dev/'
e574c2d36cbcacf2556088879be336775e80154b Add support for RTL8125D revision 0x6890000 Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54922 MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: jhibbits, adrian MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54814
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
Reviewed by: mhorne Sponsored by: Klara, Inc. Obtained from: Intel perfmon (JSON event definitions) Differential Revision: https://reviews.freebsd.org/D55081 MFC after: 2 days
debug: classified in
03-filenames_plain1 by '['lib/libpmc/',
'sys/dev/', 'sys/sys/pmc.h']'
This patch removes the UIC error caused by QEMU not supporting certain UIC command. Additionally, it removes the unused unipro_version. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54513
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Make message added for Darwin OSI quirk more terse
The verbose message was way too verbose. Make it terse.
MFC after: 1 week
MFC with: 052a791b00 ("acpi: add Darwin OSI quirk for Apple Mac hardware")
Requested by: kib
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Unbreak the build Add the missing comma in the `device_printf` statement. MFC after: 1 week MFC with: 9c666de5b Fixes: https://cgit.freebsd.org/src/commit/?id=9c666de5b ("Make message added for Darwin OSI quirk more terse")
debug: classified in
03-filenames_plain1 by
'sys/dev/'
There were a few problem here:
- TPM2_Shutdown results in a response that we need to either process
or ignore, otherwise any tpm20_write or tpm20_harvest call will
trivially hang on an `sc->pending_data_length != 0`
- We should have a matching TPM2_Startup upon resume to restore any
state that should have persisted
- We must drain the harvest task before we suspend to avoid problems
there
This commit is sufficient to avoid breaking suspend/resume.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291067
Fixes: https://cgit.freebsd.org/src/commit/?id=a2d5ed9442bb ("Introduce driver for TPM 2.0 in CRB and [...]")
Fixes: https://cgit.freebsd.org/src/commit/?id=4ee7d3b0118c ("Allow using TPM as entropy source.")
Co-authored-by: markj (D53835)
Tested by: garga
Differential Revision: https://reviews.freebsd.org/D55074
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The only use of `tlbie %rN, 0` is now explicit and covered in the block above. Since there's no need for an explicit `tlbie %rN, 0` now, drop this convoluted piece and let the compiler decide. While here, a trivial optimization of the old-style tlbie block, by clearing tlbie_lock and returning, instead of going to the end which checks again if the lock is needed. Since it's already known to be needed, there's no need to check again.
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
If there is no ITS device so no memory resources the gicv3 driver would exit attaching early. This caused the vgic driver to also not be attached, even if it could. Reported by: novel@ Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54791
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
The test condition in the bnxt driver for TCP/UDP transmit hardware checksum offload is invalid: only the TCP / UDP csum bits should be tested Only the relevant ipi_csum_flags bits are now tested Reviewed by: tuexen Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D53941
debug: classified in
03-filenames_plain1 by
'sys/dev/'
In acpi_system_eventhandler_sleep(), I forgot to update ACPI_STATE_UNKNOWN when switching to new sleep types. Reviewed by: olce Approved by: olce Fixes: https://cgit.freebsd.org/src/commit/?id=97d152698f48 ("acpi: Use sleep types defined in sys/power.h") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55119
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The FreeBSD radix implementation piggybacks on the physical memory allocation function from the HPT implementation, but did not share the same state information for number of physical memory ranges. This led to a situation where the HPT physical memory allocator would attempt to shift the physical memory ranges in the shared range table, but would use the wrong number of entries, thus overwriting the large segment of low memory that should have been available for e.g. 32-bit DMA. Incorrect physical memory map: real memory = 33997058048 (32422 MB) available KVA = 34359619583 (32767 MB) Physical memory chunk(s): 0x0000000000003000 - 0x0000000000002fff, 0 bytes (0 pages) 0x000000000000e000 - 0x000000000000ffff, 8192 bytes (2 pages) 0x0000000000094000 - 0x0000000000ffffff, 16171008 bytes (3948 pages) 0x0000000100000000 - 0x00000007a2042fff, 28487987200 bytes (6955075 pages) 0x00000007d0006000 - 0x00000007fc72dfff, 745701376 bytes (182056 pages) 0x00000007fdc00000 - 0x00000007ff79ffff, 28966912 bytes (7072 pages) 0x00000007ff7d1000 - 0x00000007ff7effff, 126976 bytes (31 pages) avail memory = 29190103040 (27837 MB) FreeBSD/SMP: Multiprocessor System Detected: 16 CPUs Correct physical memory map: real memory = 33997058048 (32422 MB) available KVA = 34359619583 (32767 MB) Physical memory chunk(s): 0x0000000000003000 - 0x0000000000002fff, 0 bytes (0 pages) 0x000000000000e000 - 0x000000000000ffff, 8192 bytes (2 pages) 0x0000000000094000 - 0x0000000000ffffff, 16171008 bytes (3948 pages) 0x0000000002000000 - 0x000000000284ffff, 8716288 bytes (2128 pages) 0x0000000004627000 - 0x000000002fffffff, 731746304 bytes (178649 pages) 0x0000000034040000 - 0x00000000efffffff, 3153854464 bytes (769984 pages) 0x0000000100000000 - 0x00000007982ecfff, 28323008512 bytes (6914797 pages) 0x00000007cc20a000 - 0x00000007fc72dfff, 810696704 bytes (197924 pages) 0x00000007fdc00000 - 0x00000007ff79ffff, 28966912 bytes (7072 pages) 0x00000007ff7d1000 - 0x00000007ff7effff, 126976 bytes (31 pages) avail memory = 32984436736 (31456 MB) FreeBSD/SMP: Multiprocessor System Detected: 16 CPUs Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com> Sponsored-by: Raptor Computing Systems, LLC
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
The TCB cache can be enabled/disabled at any time on the T7 and this commit adds a sysctl to do that. This is for debug only. # sysctl dev.chnex.0.misc.tcb_cache=0 # sysctl dev.chnex.0.misc.tcb_cache=1 MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Summary: Since "73fe85e486d2 tcp: store flowid info in syncache", inp_flowid can be set if the incoming packet is not M_HASHTYPE_NONE. But this can introduce dummy and duplicated flowid when a virtual interface set M_HASHTYPE_OPAQUE. This change will let the upper layer know how to deal with software hash, with benefits like inp_flowid can be set correctly and m_pkthdr.flowid can be set correctly in output path. This fix is similar to "20285cad7a55" Reviewed by: kbowling Differential Revision: https://reviews.freebsd.org/D55137
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This new sysctl knob indicates whether the ACPI implementation supports S4BIOS (FACS present with bit S4BIOS_F set, as per the standard). If S4BIOS is not supported, do not allow 'hw.acpi.s4bios' to be set to true. This is also in preparation of probably switching the default for 'hw.acpi.s4bios' to false once OSPM-initiated S4 support is ready, in which case administrators need some way to determine whether firmware-initiated S4 support is possible. For now, we keep the default of setting 'hw.acpi.s4bios' to true (1) when S4BIOS is supported. Reviewed by: obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54627
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/dev/', 'sys/i386/']'
No functional change (intended). MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/i386/'
Effort: CHERI upstreaming Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54837
debug: classified in
03-filenames_plain1 by
'sys/dev/'
There is a global list of ppt-claimed devices, accessed via several vmm ioctls. The ioctls are locked by per-VM locks, but this isn't sufficient to prevent multiple VMs from trying to bind a given device. Add a sleepable lock and use that to synchronize all access to ppt devices. Reviewed by: corvink, jhb MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55065
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Light Ridge and earlier Thunderbolt controllers reuse the same device ID (0x1513) for both the NHI (class 0x088000) and PCI bridges (class 0x060400). Without checking the PCI class, tb_pcib would incorrectly match NHI devices, causing a panic when trying to attach bridge code to non-bridge hardware. Add PCI class check to tb_pcib_find_ident() to only match actual PCI-PCI bridges (PCIC_BRIDGE/PCIS_BRIDGE_PCI). Reviewed by: obiwac, jhb Approved by: obiwac, jhb Fixes: https://cgit.freebsd.org/src/commit/?id=2ed9833791f2 (thunderbolt: Import USB4 code) Differential Revision: https://reviews.freebsd.org/D55102
debug: classified in
03-filenames_plain1 by
'sys/dev/'
sys/sysctl.h: Make it self-contained when included from the kernel MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
hwpstate{_amd,intel}(4): Move common knobs to a separate file
Reason for doing this right now is to resolve the conflict on
'machdep.hwpstate_pkg_ctrl' between the Intel and AMD drivers, even
though I expect to remove it for hwpstate_amd(4) at some point.
More generally, this is going to be useful for some future code
factorization. Also, the 'debug.hwpstate_verbose' knob was moved there,
as we'll likely want to use it for the Intel driver as well (which is
currently not the case).
Note for MFC: Will be partial, since `hwpstate_amd(4)` does not support
CPPC in stable/15 nor stable/14.
Reviewed by: emaste
Fixes: https://cgit.freebsd.org/src/commit/?id=3e6e4e4a0d42 ("hwpstate: add CPPC support for pstate driver on AMD")
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D54528
debug: classified in
03-filenames_plain1 by
'sys/x86/'
sys/sysctl.h: Add missing <sys/kassert.h> include Hopefully, 'sys/sysctl.h' is really self-contained now. This fixes the GENERIC-NODEBUG compilation error in 'hwpstate_common.c' after commit 804329587508 (see below). Fixes: https://cgit.freebsd.org/src/commit/?id=1a446f765d9c ("sys/sysctl.h: Make it self-contained when included from the kernel") Fixes: https://cgit.freebsd.org/src/commit/?id=804329587508 ("hwpstate{_amd,intel}(4): Move common knobs to a separate file") Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
debug: moved to hardware
because 'Need to be grouped with
8043295875083b57a6b7b2dc6826fde4cf4e1ba1'
hwpstate_amd(4): Factor out printing CPPC registers, fix CPPC_REQUEST's Factor out these printing, so they can be called from other places than just the register dump handler. This also makes surrounding code clearer. Fix inverted printing of minimum and maximum performance. For better diagnostic, print the full raw content of each register before printing the value of fields we know about. As fields are printed in decimal, remove 0-padding, which could give the impression that the numbers are printed in octal or hexadecimal. While here, remove superfluous blank lines when printing (we use TABs for the different registers' fields). Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54999
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Rename register dump sysctl handler While here, rename the callback function and structure to a more immediately informative name. While here, remove a superfluous cast and rename the variable containing the callback data to just 'data' instead of 'req' which can be confusing (because of CPPC_REQUEST but also the fact that 'req' is a parameter of sysctl handlers). No functional change intended. Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55000
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Assert PSTATE_CPPC is on in corresponding sysctl handlers No functional change intended. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55001
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Rename EPP handler, convert to unsigned int 'val' is supposed to be the storage for a sysctl knob of an 'unsigned int', so consistently don't specify its width. While here, rename variables in the handler. The new names feel clearer, and the 'ret' => 'error' rename is to be more in line with our tradition. No functional change intended. Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55002
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Register dump: Fine-grained error reporting If some of the registers cannot be read, report that but continue trying reading the others. This also has the side benefit of simplifying code. While here, use sbuf_new_for_sysctl(), and rename 'res' and 'ret', which are to contain error values, to 'error'. While here, remove the test on getting the per-cpu structure, as if it is not present we would have already crashed on device attach. While here, fix format for printing the CPU ID. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast (older version) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55005
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): attach(): More diagnostic on CPPC enable When the 'debug.hwpstate_verbose' tunable/sysctl knob is set, dump the initial content of the CPPC_CAPABILITY_1 and CPPC_REQUEST registers. If, after enabling CPPC, reading/writing some MSR fails during the attach sequence, print a diagnostic. However, once CPPC is enabled, we cannot go back (disabling it is impossible), so we'll attach even if fiddling with other MSRs failed. While here, move diagnostic printing on attach out of the callback that is executed on (potentially) another CPU and with interrupts disabled, putting it into the attach routine itself. While here, fix format for printing the CPU ID. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast (older version) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55006
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Sane defaults for min/max perf on insane capabilities If the CPPC_CAPABILITY_1 register stays at its reset value (0) even after enabling CPPC, as observed in the field (see the referenced PR below), use sane min/max performance limits as hinted by the ACPI spec, i.e., all 0s for the minimum value and all 1s for the maximum one. While here, let's cope upfront with some more insane situations, where the minimum value would be greater than the maximum one, but also if they would be equal which does not seem to make sense at all in the CPPC frame (and, anyway, in this case, the actual minimum and maximum values we program should have no effect at all). That last case actually also covers the one exposed in the previous paragraph. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55007
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Factor out setting the CPPC_REQUEST register In preparation for creating other knobs to tweak values in this register beyond just the EPP (Efficiency/Performance Preference). While here, add a herald comment before the softc structure indicating how we achieve atomicity when modifying the softc. Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55008
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): 'epp' sysctl leaf to operate on real EPP hardware values We were using percents, for compatibility with hwpstate_intel(4), but this looses granularity that might be important in some scenarios or with specific CPU models. For consistency, hwpstate_intel(4) should be changed accordingly, at the expense of breaking compatibility. For release notes: Introduction of hwpstate_amd(4) deserves a release note, even if the original commit was not tagged. Functionality introduced by recent commits tagged with "Relnotes" should be mentioned along that one. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55009
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Add knobs to get/set all fields of CPPC_REQUEST This will allow experimentations and finer-grained tuning to the full extent allowed by the hardware, which is especially important given that the spec leaves to hardware implementors an important leeway in interpreting CPPC's numeric parameters, causing the same settings to have different effects on different CPU models. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292615 Reviewed by: aokblast (older version) Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55010
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Consistency of cached CPPC_REQUEST value If writing to the CPPC_REQUEST MSR fails, make sure we do not set the softc's 'cppc.request' field to the intended new value. Both set_cppc_request_cb() and enable_cppc_cb() were changed to this effect. In case enable_cppc_cb() could not read CPPC_REQUEST, mark that through a new softc flag, HWPFL_CPPC_REQUEST_NOT_READ, so that we do not keep and use a wrong value when the content of CPPC_REQUEST is read/written through sysctl(9) knobs, but instead retry reading the MSR (this is the purpose of the new get_cppc_request() sub-function). When setting CPPC_REQUEST has failed, distinguish the case where it could not be read at all from the case where it could not be written, by respectively returning EIO and EOPNOTSUPP in these cases. The previous return value of EFAULT was confusing as sysctl(3) documents it as happening if the passed arguments are invalid. While here, add some herald comment before sysctl_cppc_dump_handler() clarifying that the intent of this function is to always query the hardware directly, bypassing any cached value in the softc. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55251
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): CPPC: Allow attaching even if CAPABILITY_1 cannot be read If that MSR cannot be read, we fallback to defaults specified by the ACPI specification, as we are already doing when the minimum and maximum values in there look bogus. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55252
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): CPPC: Switch the default to maximum performance Set controls to maximum performance to avoid regressions now that CPPC is activated by default and to match what the P-state support does. Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55253
debug: classified in
03-filenames_plain1 by
'sys/x86/'
As the new CPPC and old P-states modes are exclusive, put their respective data in a union. Rename the field containing the content of the CPPC_REQUEST register. It it now to be accessed using 'cppc.request'. Use an 'unsigned int' instead of 'uint32_t' for 'flags'. This is an internal field whose width could be changed at will. We only have one flag at the moment. No functional change intended. Reviewed by: aokblast Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55004
debug: classified in
03-filenames_plain1 by
'sys/x86/'
qlnxe: Remove a pointless copy back from the link-layer address On ifnet attaching, ether_ifattach() makes the link-layer address by shadow copying the ha->primary_mac. Well, the link-layer address will not be altered during attaching, thus it is pointless to copy it back. No functional change intended. Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54883
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Avoid memcpy with same source and destination In case the device is VF, qlnx_get_mac_addr() returns ha->primary_mac hence it ends up memcpy with same source and destination. Refactor slightly to avoid that. Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54884
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Fix setting the unicast MAC filter of RX path When an Ethernet interface is added to lagg(4) as a child interface, its type, aka if_type, is changed from IFT_ETHER to IFT_IEEE8023ADLAG. Well changing the link-layer address of the lagg(4) interface will be propagated to all child interfaces, hence the drivers of child interfaces shall not presume the type of the interface will not be changed. Meanwhile, on initializing, an ifnet has been fully attached and it is guaranteed to have non-null link-layer address so stop NULL checking for it. Reviewed by: kbowling Fixes: https://cgit.freebsd.org/src/commit/?id=792226e53023 qlnxe: Allow MAC address override MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54885
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Prevent potential concurrency between ioctls The driver-managed status flags should be lock protected to be touched. Also this can serialize ioctls those check the IFF_DRV_RUNNING status. Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54886
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Avoid reinitializing the interface when it is already initialized qlnx_init_locked() unconditionally uninitialize the interface thus is actually reinitializing the interface. Well the init routine qlnx_init() is to initialize the interface by net stack when assigned with the first inet or inet6 address. The ioctl SIOCSIFADDR for the first inet6 address is handled by ether_ioctl() thus the interface is reinitialized no matter it was initialized or not. Add a driver status check for that to avoid reinitializing. Further plan is removing SIOCSIFADDR ioctl from the driver and let ether_ioctl() handle it. Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54887
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Let ether_ioctl() handle SIOCSIFADDR ioctl Since the change [1], the init routine qlnx_init() works as intended. Let ether_ioctl() handle SIOCSIFADDR to simplify the code. Combined with the change [1], this shall be a better fix for PR 287445. [1] c10e6bc0f007 qlnxe: Avoid reinitializing the interface when it is already initialized PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287445 Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54888
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Refactor setting the promiscuous and allmulti mode There are two entry points to set the promiscuous and allmulti mode. One is ioctl, and another is the init routine. Given they share almost the identical logic, refactor a little to make the code more clear. While here, for the ioctl, translate the error to EINVAL to avoid confusing the net stack. Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54890
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Allow tapping the TX packets Currently only the packets in the RX path can be captured by tcpdump as the ETHER_BPF_MTAP call in the TX path is missing. Add it so that packets in both directions can be captured. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290973 Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54891
debug: classified in
03-filenames_plain1 by
'sys/dev/'
qlnxe: Overhaul setting the multicast MAC filters When operating the multicast MAC filters, the current usage of ECORE_FILTER_ADD and ECORE_FILTER_REMOVE are rather misleading. ECORE_FILTER_ADD reads "adding new filter", but it actually removes any existing filters and then addes a new one. ECORE_FILTER_REMOVE reads "removing a filter", but it actually removes all filters. Let's use ECORE_FILTER_REPLACE and ECORE_FILTER_FLUSH instead to avoid confusion. In the current implementation, only one MAC address is passed to ecore_sp_eth_filter_mcast() and any previously installed filters are removed, hence it breaks the multicast function. That can be observed via either assigning new IPv6 addresses to the interface or putting the interface as a member of lagg(4) interface with LACP aggregation protocol. Fix that by calculating the multicast filter bins directly from multicast MAC addresses and replace the filters every time the bins changes. Due to the nature of the multicast filter, which is hash based, a full 1's multicast filter bin means all multicast packets are to be accepted. Thus there's no need to make the vport into allmulti mode when the number of multicast MAC addresses exceeds the limit (ECORE_MAX_MC_ADDRS, 64). Tested with a FastLinQ QL41212HLCU 25GbE adapter, both MFW_Version 8.35.23.0 and 8.59.16.0 are tested. Note: Currently the VF port is set to promiscuous mode unconditionally, and the setting of the multicast MAC filters for VF ports is short-circuited, so the VF port functions as it did. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265857 PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290973 Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54892
debug: classified in
03-filenames_plain1 by
'sys/dev/'
manually cherry-pick efcc0423d80e Reviewed by: kbowling Differential Revision: https://reviews.freebsd.org/D55143
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: imp Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc.
debug: classified in
03-filenames_plain1 by
'sys/dev/'
- Use symbolic names in Mac definitions in lieu of the unrolled values they represent. - Delete trailing whitespace. - Fix indentation. No functional change intended. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
In addition to print the hexadecimal number hwassist, also print the symbolic names of the corresponding CSUM_* flags. Reviewed by: tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55055
debug: Commit manually moved from "unknown" to "hardware".
Apparently, the name of the variable l4off was correct. Providing the offset to the TCP or UDP header allows the transmit checksum offload to work for TCP/IPv4, TCP/IPv6, UDP/IPv4, and UDP/IPv6. Reported by: vishwin Reviewed by: vishwin MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55187
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55189
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54908
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54909
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54910
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54911
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54912
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54913
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54914
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54916
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Reviewed by: manu, adrian Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54927
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: manu Sposored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54907
debug: classified in
03-filenames_plain1 by
'sys/arm/'
On H616 (and I think H6, but this isn't verified) we need to reset the card to have a functioning device. With this commit all my pending patches for H616 are in tree. We run well on my test device (Orange Pi Zero3), however there is an uninvestigated issue with ethernet and graphics are an open question. Reviewed by: manu, adrian MFC After: 1 week Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55097
debug: classified in
03-filenames_plain1 by
'sys/arm/'
This fixes a warning from GCC:
sys/dev/sdhci/sdhci_fdt_rockchip.c: In function 'sdhci_fdt_rockchip_probe':
sys/dev/sdhci/sdhci_fdt_rockchip.c:120:14: error: statement will never be executed [-Werror=switch-unreachable]
120 | if (!ofw_bus_status_okay(dev))
| ^~~~~~~~~~~~~~~~~~~~~~~~
Reviewed by: bnovkov, imp, emaste
Differential Revision: https://reviews.freebsd.org/D55158
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The only write to the softc is a no-op (softcs are initialized to all zeroes), so remove that and just use BUS_PROBE_DEFAULT. Reviewed by: bnovkov Differential Revision: https://reviews.freebsd.org/D55159
debug: classified in
03-filenames_plain1 by
'sys/dev/'
These are needed when enabling CPU features so should be processed earlier in the boot. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55103
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
This will allow for callers to be simplified & not need to check the return status. Keep the return type for now so this can be MFCd without breaking the KBI. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55104
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
It now panics when it's unable to find the register, so doesn't need to return a status. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55106
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Reviewed by: brooks, emaste, jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55151
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Attempts to access vendor-specific registers on emulator of older Intel hardware was reported to confuse one. Since the redirection obviously require BAR size bigger than normal 2KB of AHCI, add the condition, similar to what Linux is doing. Requested by: kib MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Split acpi_wakeup_cpus() into acpi_wakeup_cpus_bios() and acpi_wakeup_cpus_efi(). The former needs to manipulate zero page and CMOS state, the later does not. Referenced commit left the write to WARMBOOT_OFF in case of acpi_wakeup_ap() failed. Fixes: https://cgit.freebsd.org/src/commit/?id=e99255c8a6cae324aeede7f5013d080a2d361e3f Reviewed by: imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55205
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
not only for COMPAT_FREEBSD32 case. The driver uses INPTR() for non-compat32 code. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
If the parent bridge's [secondary, subordinate] window already covers the VF bus (e.g., programmed by BIOS or a prior PF), skip allocating PCI_RES_BUS. This avoids a duplicate rman allocation in the multi-PF case while still allocating when growth is actually needed. Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D52163 MFC After: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
debug: classified in
03-filenames_plain1 by
'share/misc/pci_vendors'
debug: classified in
03-filenames_plain1 by
'share/misc/usb_vendors'
arm64: Enable MOPS usage in the kernel Support handling kernel-side MOE exceptions. Reported by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54943
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
arm64: Add MOPS implementations of memset(), memcpy() and memmove() Enable the use of MOPS implementations of memset, memcpy and memmove within the kernel. Fix pre-ifunc resolution uses of these functions. Reported by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55051
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
arm64: Add MOPS implementation of pagezero() Reimplement pagezero() as ifunc. As pagezero() is only used in pmap.c, move ifunc to that file. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54946
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
arm64: Add MOPS implementations of copyin/copyout Reimplement copyin() & copyout() as ifuncs. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54947
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
The Parallels Desktop Virtio GPU implementation doesn't handle enqueuing the VIRTIO_GPU_CMD_RESOURCE_ATTACH_BACKING request and memory list together. Work around this by splitting them before sending them to be enqueued. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55147
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Let the receive checksum offload for TCP/IPv6 and UDP/IPv6 be controlled by ifconfig rxcsum6 and not by ifconfig rxcsum. While there, make the code more compact and improve stlye.9 conformity. Reviewed by: Timo Völker MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55188
debug: classified in
03-filenames_plain1 by
'sys/dev/'
based on firmware version. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291262 MFC after: 1 month
debug: classified in
03-filenames_plain1 by
'sys/dev/'
They were copied intact from the Linux GPL-only file. Requested by: imp, glebius MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Locally tested: * STA mode - run0: MAC/BBP RT2860 (rev 0x0101), RF RT2820 (MIMO 2T2R), address 00:0e:2e:e5:ae:3a Differential Revision: https://reviews.freebsd.org/D54462
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Locally tested: * STA mode - iwx0: <Wi-Fi 6 AX210> mem 0x84c00000-0x84c03fff at device 0.0 on pci4 Differential Revision: https://reviews.freebsd.org/D54463
debug: classified in
03-filenames_plain1 by
'sys/dev/'
In short, LASS enforces all kernel memory accesses to have bit 63 set to 1, and all userspace accesses have bit 63 set to 0. Violations of these rules cause #GP. There are natural loopholes, like SMAP with rflags.AC=1 allows kernel to access userspace. Enablement is simple, we need to set CR4.LASS bit on all CPUs. There are complications when kernel has to execute code at low addresses, e.g. for la57 trampoline, or calling into EFI RT. The patch turns CR4.LASS off around these regions. LASS is officially documented in SDM, since at least rev. 085, October 2024. Tested in simics. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55218
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Rename PSTATE_CPPC internal flag While here, also rename check_cppc_enabled() => check_cppc_in_use(). No functional change (intended). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Rename '*set_autonomous_hwp*()' => 'enable_cppc*()' This is to better reflect that we are really enabling CPPC in these functions and because we are likely to stop activating CPPC autonomous mode by default in the near future. No functional change (intended). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/x86/'
hwpstate_amd(4): Move 'struct get_cppc_regs_data' & co. closer to use No functional change (intended). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Summary: manually cherry-pick 21dd554d1697 Reviewed by: kbowling Differential Revision: https://reviews.freebsd.org/D55256
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The calibration callout is stopped when the adapter is marked off limits but not when the adapter is merely stopped. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Replace CTLFLAG_NEEDGIANT with CTLFLAG_MPSAFE for all sysctls. The driver already uses spin mutexes (sc->sc_mtx) for hardware access protection and does not require the Giant lock. This improves scalability by allowing concurrent sysctl access without Giant serialization. Reviewed by: ngie, adrian Differential Revision: https://reviews.freebsd.org/D54613
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This corresponds to Linux f74dc880098b4a29f76d756b888fb31d81ad9a0c That commit does not provide any public background detail, but it's been in use for over 5 years and corresponds to previous chip bugs w.r.t. automatic generation of PAUSE frames. Reviewed by: kgalazka MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54555
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The modifier executes the operation using msr{read,write}_safe()
functions instead of plain msr reads and writes. Returns EFAULT if any
MSR access caused #GP.
Reviewed by: markj, olce
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D55045
debug: classified in
03-filenames_plain1 by
'sys/x86/'
If the operation is executed on more than one CPU, a random instance of the read value is returned. Reviewed by: markj, olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55045
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Reviewed by: markj, olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55045
debug: classified in
03-filenames_plain1 by
'sys/x86/'
This is safe since sysctl_handle_bool() handles ints transparently. Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55263
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Using uint32_t here can cause spurious compiler warnings. I assume it was done to constrain the range; use a KASSERT instead. Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55279
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The highest valid tid has to be adjusted for the hi-pri filter region. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add PCI device ID 0x7a23 for Intel 700 Series (Raptor Lake) chipset SMBus controller. This enables hardware monitoring functionality on 13th and 14th generation Intel Core platforms. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54957
debug: classified in
03-filenames_plain1 by
'sys/dev/'
It's time to flip these on and see if anything happens in -HEAD. It can be turned back off before 16.0-RELEASE if there are problems. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D55071
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
After discussion with jhibbits@, we pulled out what is supported here and how it's supported. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55093
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
Reviewed by: ziaee, des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54519
debug: classified in
03-filenames_plain1 by
'sys/dev/'
ACPI_IVAR_HANDLE is a global index shared across multiple busses, there is no need for a unique constant here. Reviewed by: vexeduxr, imp Differential Revision: https://reviews.freebsd.org/D54155
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This changes the in-kernel ABI, but that is permitted across major versions and is cleaner than leaving these around forever. Differential Revision: https://reviews.freebsd.org/D54160
debug: classified in
03-filenames_plain1 by '['sys/arm64/',
'sys/dev/']'
This appeases GNU as which doesn't map the mov alias to movz. Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D55160
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
No code currently uses the vc_audio_msg_type_names array of strings. Reported by: -Wunused-variable Differential Revision: https://reviews.freebsd.org/D55162
debug: classified in
03-filenames_plain1 by
'sys/arm/'
Sponsored by: Arm Ltd
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55219
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Since the low bits of a window's limit are hardwired to 1, this configuration looks like a minimally sized window at address 0. However, PCI resources are not generally at address 0 (see the __PCI_BAR_ZERO_VALID macro that was only defined on sparc64), and some PCI-PCI bridges report these register values after a reset. The result today is a lot of spam in dmesg as the minimally-sized windows fail to allocate. By ignoring these windows and treating them as closed the end result is the same, but there is less spam during boot. Reported by: jrtc27 Differential Revision: https://reviews.freebsd.org/D43922
debug: classified in
03-filenames_plain1 by
'sys/dev/'
If we format a drive, and then crash, we'll come back up. nvme_sim_ns device won't attach because we don't have a namespace. Some drives (all? I couldn't find it in the standard) send an AER with a namespace change, which causes a NULL dereference because s_sim wasn't initialized because we didn't attach. So, if we get into the ns_changed routine, bail early if we didn't attach. We'll attach later, and deal with the ns correctly if it's really there, or not attach one if it's not. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The CAM sim unit numbner should match the nvme device number. We need this to match unit numbers in some wiring scenarios. For example: hint.nvme.0.at="UEFI:PciRoot(0x3)/Pci(0x1,0x1)/Pci(0x0,0x0)" hint.nvme.1.at="UEFI:PciRoot(0x3)/Pci(0x1,0x2)/Pci(0x0,0x0)" hint.nvme.2.at="UEFI:PciRoot(0x3)/Pci(0x1,0x3)/Pci(0x0,0x0)" hint.nvme.3.at="UEFI:PciRoot(0x3)/Pci(0x1,0x4)/Pci(0x0,0x0)" hint.scbus.33.at="nvme0" hint.nda.0.at="scbus33" hint.scbus.34.at="nvme1" hint.nda.1.at="scbus34" hint.scbus.35.at="nvme2" hint.nda.2.at="scbus35" hint.scbus.36.at="nvme3" hint.nda.3.at="scbus36" If the devices that are nvme0 and nvme3 are the only ones populated, you still want them associated with nda0 and nda3. The nvme_sim device changes meant we were passing the wrong device's unit number to cam_sim_alloc. This fixes the problem. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'sys/dev/'
To this end, create a small wrapper, acpi_EnterSleepStatePrep(), which itself prints the failure message. While here, when trying to power down (acpi_shutdown_final()), and AcpiEnterSleepStatePrep() failed, print an additional message more explicit about the power down request having failed. Reviewed by: obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55225
debug: classified in
03-filenames_plain1 by
'sys/dev/'
While here, make it print that we are trying to power off upfront, not really treating differently power off preparation via acpi_EnterSleepStatePrep() and actual power off via AcpiEnterSleepState(), which the user does not care about. While here, capitalize the messages. Reviewed by: obiwac MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55226
debug: classified in
03-filenames_plain1 by
'sys/dev/'
placeholder entry end changed to 0 in f591287756368
("iommu_gas: make placeholder entry at the start of the GAS zero size")
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D55326
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This unskips 585 sys/kern/ktls_test testcases[0] in CI. All 585 tests currently pass. [0] https://ci.freebsd.org/view/Test/job/FreeBSD-main-riscv64-test/16514/testReport/sys.kern/ Approved by: emaste (mentor) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55376
debug: classified in
03-filenames_plain1 by
'sys/riscv/'
The Macmini4,1 model does not have "fansafespeed" support. This issue typically manifests with messages like so: ``` asmc0: asmc_key_read for key F0Sf failed 10 times, giving up ``` Swap out `ASMC_FAN_FUNCS` with `ASMC_FAN_FUNCS2` to explicitly drop "fansafespeed" checks in the driver for the model as it doesn't support that hardware feature. MFC after: 1 week Reported by: @probonopd Closes: https://github.com/helloSystem/ISO/issues/357
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Use `ASMC_LIGHT_FUNCS_DISABLED` and `ASMC_SMS_FUNCS_DISABLED` instead of the unrolled versions of the macros. This makes it easier to adjust the underlying macros/fields for `struct asmc_model`. No functional change intended. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This code cleanup makes it easier for human readers to understand what each of the fields actually represents, as well as makes it easier to modify what the macros actually do under the covers, without introducing potential human errors. No functional change intended. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
To be consistent with that of the others. No functional change. Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/x86/'
In principle, do_cpuid() should only be used for CPUID leaves without sub-leaves. Even accessing sub-leaf zero (ECX=0), one must use cpuid_count(ax, 0) rather than cpuid(ax). However, one might assume do_cpuid(ax) is equivalent to cpuid_count(ax, 0), but the old do_cpuid() did not initialize ECX before executing the CPUID instruction. If ECX contained a non-zero value, the instruction could return unexpected results, potentially leading to subtle and hard-to-debug issues, especially in ported code. To be future-proof and to help port code, adjust do_cpuid(ax) to be cpuid_count(ax, 0) to explicitly set ECX=0. It's believed that this change does not fix any real bugs in FreeBSD. See also the DragonFly commit: https://github.com/DragonFlyBSD/DragonFlyBSD/commit/0087a1d163488a57787a9a6431dd94070b1988d4 Signed-off-by: Aaron LI <aly@aaronly.me> Reviewed by: kib Pull Request: https://github.com/freebsd/freebsd-src/pull/2027
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/']'
Previously the size defaulted to the maximum supported size reported by the remote host. The value of 128 matches the default on Linux and avoids excessive resource usage for I/O queues. Sponsored by: Chelsio Communications
debug: Commit manually moved from "unknown" to "hardware".
This way we can avoid edge-cases like
8af6aee96ed609456900c6dd92dafabac5e89c0a ("virtual_oss(8): Remove
floating point formats from preference list").
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Reviewed by: emaste
Differential Revision: https://reviews.freebsd.org/D55403
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This change makes `asmc_detach(..)` reentrant by setting freed resources to known invalid values when done, and makes `asmc_attach(..)` call `asmc_detach(..)` instead of attempting to the semi-equivalent way of cleaning up the driver resources allocated in `asmc_detach(..)`. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55413
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Convert the oea64 mmu code to rwlocks. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D54936
debug: classified in
03-filenames_plain1 by
'sys/powerpc/'
Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54483
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The RTC contains a configurable clock output. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Accept the assigned clock on the CPU node. Don't report a missing "clock-frequency" property if the CPU node has a "clocks" property. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
I2C devices are permitted to sleep during transfers. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
It may be submapped in child drivers. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add support for 64-bit ranges. Process 'bus-range' property. Add some debug prints. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This is a newer version of the "gpio" property. MFC after: 3 weeks
debug: classified in
03-filenames_plain1 by
'sys/dev/'
* Do the callout init early; since some of the teardown path expects the callout to be valid * Handle an invalid ethernet address by generating a local one. PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293307 Reviewed by: zlei Differential Revision: https://reviews.freebsd.org/D55419
debug: classified in
03-filenames_plain1 by
'sys/dev/'
* Only free busdma memory that was allocated * Don't free tx/rx rings until their buffers have also been freed PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293307 Reviewed by: zlei Differential Revision: https://reviews.freebsd.org/D55420
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The initial import from OpenBSD contained chip revision printf() calls commented out, as OpenBSD's bare printf() style does not translate to FreeBSD's device_printf() idiom. The result is that users cannot distinguish RTL8125 from RTL8125B, RTL8125D_1, RTL8125D_2 etc. via dmesg alone, even though all variants show as '<RTL8125>' from the PCI probe string. Add proper device_printf() calls including the raw hwrev value, consistent with how re(4) reports chip revisions. Signed-off-by: Christos Longros <chris.longros@gmail.com> Reviewed by: zlei, imp, adrian Differential Revision: https://reviews.freebsd.org/D55402
debug: classified in
03-filenames_plain1 by
'sys/dev/'
On Panasonic FZ-Y1 and similar models, the EC latches RF_KILL on shutdown and suspend when battery is at certain level, causing wireless to boot with hard block. Call WLSW.SHRF during attach and resume to clear the block. Tested on Panasonic FZ-Y1 with Intel Wireless 7265. Reviewed by: adrian, obiwac Approved by: adrian, obiwac Differential Revision: https://reviews.freebsd.org/D55265
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Currently this happens as a side effect of the return type of sdio_get_function() in the expansion of __BUS_ACCESSOR, but this is fragile and can break if __BUS_ACCESSOR changes to define other functions first. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55351
debug: classified in
03-filenames_plain1 by
'sys/dev/'
- Use __BUS_ACCESSOR_DEFAULT for the global handle IVAR to preserve existing behavior for acpi_get_handle. - Use __BUS_ACCESSOR for the private ACPI IVARs as these are only used with direct children of acpi0. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55355
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The product series is called NXP QorIQ Layerscape. Remove the extra 'e. MFC after: 3 days Reviewed by: mmel, emaste Differential Revision: https://reviews.freebsd.org/D55388
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Fix spelling of NXP, which is not NPX, in two places. Improves: a4e30909ec98 Reported by: Kevin Bowling (kevin.bowling kev009.com), qoriq_dw_pci.c MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
While here, remove an unused declaration. Reviewed by: jrtc27 Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D53898
debug: classified in
03-filenames_plain1 by '['sys/arm/',
'sys/arm64/', 'sys/riscv/']'
Reviewed by: np (earlier version) Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55470
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Both of the aforementioned macros have been present in FreeBSD
for well over a decade: 2009 for `KOBJMETHOD_END`; 2011 for
`DEVMETHOD_END`.
Adapt all hardcoded references of `{0, 0}` with `DEVMETHOD_END`
and `KOBJMETHOD_END` as appropriate. This helps ensure that
future adaptations to drivers following patterns documented
in driver(9) can be made more easily/without issue.
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D55414
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Apple Mac systems support Wake-on-LAN from powered-off state (S5/G2) via the AUPO SMC key. This change adds a convenience sysctl, `dev.asmc.0.wol`. This can be disabled if set to 0 and enabled if set to 1. The AUPO key is volatile and resets to 0x00 on every boot, so WoL must be manually enabled before each shutdown to work from powered-off state. Users need to run: `sysctl dev.asmc.0.wol=1` before shutting down the system. The sysctl is best set to persist in `/etc/sysctl.conf`. MFC after: 1 week Reviewed By: markj, ngie Differential Revision: https://reviews.freebsd.org/D54439
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Having to enter in each of the models for Apple hardware, recompiling, etc, is tedious. Provide generic models so end-users can leverage some of the capabilities provided by the driver, i.e., common features like minimal fans and lights (if present on the generic model) support. The generic models are as follows: - Macmini - MacBookAir - MacBookPro - MacPro This sort of follows the pattern established by the `applesmc` driver in Linux. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55395
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Do it always for bootverbose if offload was enabled in the kernel config, not only if the device actually supports all required capabilities to do the offload. Otherwise, having the code to print the caps is pointless. Reviewed by: slavash Tested by: Wafa Hamzah <wafah@nvidia.com> Sponsored by: NVidia networking MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: slavash Tested by: Wafa Hamzah <wafah@nvidia.com> Sponsored by: Nvidia networking MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54479
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54480
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54481
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Differential Revision: https://reviews.freebsd.org/D54482
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Migrate to the new encryption key API rather than poking at the key struct directly. Notably this driver was very clear about its expectation the net80211 key layout w/ key, TX MIC and RX MIC matches the firmware layout and just memcpy()'ed it. That has been refactored. Differential Revision: https://reviews.freebsd.org/D54484
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This is required so that ACPI power-off (entering S5) works as expected, as
the ACPI PM1a and PM1b blocks might not be accessible by dom0 directly.
Additionally, Xen also needs to do cleanup before entering a sleep state,
so it needs to be notified about it.
With this patch FreeBSD dom0 now powers off the host correctly:
acpi0: Powering system off...
(XEN) [ 85.686598] arch/x86/hvm/emulate.c:415:d0v0 fixup p2m mapping for page fedc6 added
(XEN) [ 85.687606] arch/x86/hvm/emulate.c:415:d0v0 fixup p2m mapping for page fbc10 added
(XEN) [ 85.692357] Preparing system for ACPI S5 state.
(XEN) [ 85.692702] Disabling non-boot CPUs ...
(XEN) [ 85.694471] Broke affinity for IRQ9, new: {0-7}
[...]
(XEN) [ 85.903118] Entering ACPI S5 state.
Should be a non-functional change when not running as a Xen dom0.
Reviewed by: kib
Sponsored by: Citrix Systems R&D
MFC after: 2 weeks
Differential revision: https://reviews.freebsd.org/D55504
debug: classified in
03-filenames_plain1 by
'sys/dev/'
If m_getjcl() fails we want to know the size we requested in order to have a chance to evaluate the problem better. MFC after: 3 days Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D55555
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The asmc(4) driver should work for 32-bit Intel-based Macs, in theory, if the model details were added to the detection list. That being said, 32-bit Intel Macs were only released and available to the general public for 8 months [1], so the value in maintaining i386 support in the driver is reduced due to limited hardware access. Remove 32-bit support for the driver officially to make it clear its use is not supported. This should fix building `NOTES.i386` by proxy as well. Relnotes: yes MFC after: 2 weeks Fixes: https://cgit.freebsd.org/src/commit/?id=f224591746b ("Add ASMC_DEBUG make option") Fixes: https://cgit.freebsd.org/src/commit/?id=8342d9f7b5f ("asmc(4): Stop building it on i386, as...") Differential Revision: https://reviews.freebsd.org/D55544
debug: classified in
03-filenames_plain1 by
'sys/x86/'
The PMC flags available for DF and L3 counters were not all implemented. More importantly, the field encodings for the L3 counters changed in an incompatible way between Family 17h and Family 19h. Similarly, the field encodings for the DF coutners changed between Family 19h and 1Ah. I also added the precise retire flag for the 3rd core counter. Lastly, I added a warning in the jevent parser because ignoring the unknown fields results in counters incorrectly programmed. We should not just ignore that. Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2040
debug: classified in
03-filenames_plain1 by '['lib/libpmc/',
'sys/dev/']'
This patch adds support for AMD IBS. It adds a new class of performance counter that cotains two events: ibs-fetch and ibs-op events. Unlike most existing sampled events, IBS events provide a number of values containing extra information regarding the sample. To support this we use the existing callchain event, and introduce a new flag for multipart payloads. The first 8 bytes of the pc_sample contains a header that defines up to four payloads. Sponsored by: Netflix Reviewed by: imp,mhorne Pull Request: https://github.com/freebsd/freebsd-src/pull/2022
debug: classified in
05-summary-prefix by 'hwpmc:'
The pmu event definitions for AMD Zen 5 was updated since it was imported into the tree. As a bonus I also updated the recommended json counters for Zen 1-3 even though we do not use that file yet. Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2048
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2049
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
Right now %cr4 defined bits fit into the low word, but this is not true with FRED. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
The SMC firmware revision can prove helpful when determining why the behavior of a given controller varies from the maintainers' expected behavior. This should be a sysctl (eventually), but for now dumping out the information via `device_printf(..)` suffices, given that only one asmc(4) compatible device can exist in an Apple platform at any given point in time. This will become a sysctl in the future after additional improvements are incorporated from OpenBSD and NetBSD. MFC after: 1 week Obtained from: https://github.com/openbsd/src/ (sys/dev/acpi/asmc.c @ 142d064) Differential Revision: https://reviews.freebsd.org/D55577
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The function pmap_is_valid_memattr(pmap, mode) checks whether the given variable mode is between the two constant values VM_MEMATTR_DEVICE and VM_MEMATTR_WRITE_THROUGH. After the code for this function was written, the value of VM_MEMATTR_DEVICE changed from 0 to 4. Since VM_MEMATTR_WRITE_THROUGH is still 3, the condition is always false. This patch changes the condition to check whether mode is equal to any of the VM_MEMATTR* constants. Reviewed by: andrew, tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55534
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
virtio_pci uses two loader tunables that should be more visible. This patch adds these loader tunables to sysctl and describes them in the virtio(4) man page. Reviewed by: imp (erlier version), tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55533
debug: classified in
03-filenames_plain1 by
'sys/dev/'
If we have virtual_oss running, this devd notification will make sure to
automatically transfer sound to the new default unit, while also making
sure that we switch to it only for the supported directions (recording
and/or playback).
For more information, please refer to 2ffaca551eaf ("snd_hda: Implement
automatic redirection between associations").
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D55530
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55531
debug: classified in
05-summary-prefix by 'sound:'
While the majority of virtio platforms will be fully coherent, some may require cache maintenance or other specific device memory handling (eg for secure partitioning). Using bus_dma allows for these usecases. The virtio buffers are marked as coherent; this should ensure that sync calls are no-ops in the common cases. Reviewed by: andrew Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54959
debug: classified in
03-filenames_plain1 by
'sys/dev/'
While the majority of virtio platforms will be fully coherent, some may require cache maintenance or other specific device memory handling (eg for secure partitioning). Using bus_dma allows for these usecases. The virtio buffers are marked as coherent; this should ensure that sync calls are no-ops in the common cases. Reviewed by: andrew, br Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54960
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Fix the error message in nvme_sim_ns_removed that was cut and pasted from nvme_sim_ns_changed to reflect its new home. No functional change. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55522
debug: classified in
03-filenames_plain1 by
'sys/dev/'
In acpi_spmc_get_constraints_spec(), the revision of the device constraint detail package was mistakenly read from constraint_obj->Package.Elements[0], which is the device name (a string), instead of from the detail sub-package's first element. Move the initialisation of 'detail' before the revision check and read the revision from detail->Package.Elements[0] as the comment already states Approved by: obiwac Differential Revision: https://reviews.freebsd.org/D55639 Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'sys/dev/'
amdsmu_suspend() and amdsmu_resume() for sending hints to the AMD SMU power management firmware (PMFW) that we are entering and exiting s2idle. We also dump sleep metrics once we tell it we're exiting sleep, so the relevant metrics are updated. Register these as acpi_post_dev_suspend and acpi_post_dev_resume eventhandlers. Reviewed by: olce Approved by: olce Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48721
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The PMUVer field of ID_AA64DFR0 contains an unsigned version of the Performance Monitors Extension, but it is currently treated as signed. Change it to unsigned. Reviewed by: andrew Sponsored by: Arm Ltd Signed-off-by: Kajetan Puchalski <kajetan.puchalski@arm.com> Pull Request: https://github.com/freebsd/freebsd-src/pull/2062
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
The only new register is read-only. As the kernel just passes the registers to the guest directly no further change should be needed. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D51764
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
The ACPI bus uses the flags IVAR for any device with a _PRW method including devices such as PCI bridges/devices that are not direct children of acpi0. Reported by: ngie Reviewed by: ngie Fixes: https://cgit.freebsd.org/src/commit/?id=0bb867e9f565 ("acpi: Split ACPI IVARs into global and private sets") Differential Revision: https://reviews.freebsd.org/D55561
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add BTI note to fdt_static_dtb.o - resolves "Branch Target Exception" panic on FDT systems with static DTB due to missing landing pads (bti note has to be in all object files used for linkage) - also required by bti_report linker feature Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D55636
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Save the Floating Point Extension (FPE) state before copying struct pcb. Reviewed by: br Differential Revision: https://reviews.freebsd.org/D53804
debug: classified in
03-filenames_plain1 by
'sys/riscv/'
When Top Byte Ignore (TBI) is enabled in a processor we need to pass a canonical address to the vm subsystem. Reviewed by: alc, kib Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55619
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
It has been reported that the overhead of repeating all TLBI instructions is too large [1]. The Software Developer Errata Notices (SDEN) for the relevant Arm CPUs have been updated so a single "tlbi vale1is, xzr" followed by "dsb ish" is sufficient to work around the issues. Replace the places we repeat TLBI instructions with the new sequence. [1] https://lore.kernel.org/linux-arm-kernel/20260218164348.2022831-1-mark.rutland@arm.com/ Reviewed by: kib Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55646
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
Not all bus drivers for ACPI-aware devices implement the ACPI flags IVAR used by the acpi_wake_set_sysctl handler. In some cases this may be a feature as some new-bus devices share the same ACPI handle (e.g. a pcibX device and its child pciY device) which can lead to confusing results (e.g. setting the sysctl on pciY changes the behavior of the parent pcibX device, but the "wake" sysctl for pcibX won't reflect the new behavior, or reflect the device's state). Reviewed by: obiwac, ngie, imp Differential Revision: https://reviews.freebsd.org/D55562
debug: classified in
03-filenames_plain1 by
'sys/dev/'
iwx: Fix 32-bit compilation - Avoid shifts wider than integer types, by wrapping the corresponding checks into '#if __SIZEOF_SIZE_T__ > 32' blocks. 'bus_addr_t' currently has the same width as 'size_t' on all architectures (and this is not going to change for 32-bit architectures). - Use appropriate printf(3) format for 'wk_keytsc'. Reviewed by: adrian MFC after: 1 minute MFC to: stable/15 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55667
debug: classified in
03-filenames_plain1 by
'sys/dev/'
iwx: Re-activate the 32-bit boundary cross check on 64-bit architectures __SIZEOF_*__ is in bytes, not in bits... Reported by: brooks Fixes: https://cgit.freebsd.org/src/commit/?id=35da55c28dbb ("iwx: Fix 32-bit compilation") MFC after: 1 minute MFC to: stable/15 Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reported by: Abdelkader Boudih Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
In the current current behavior the 2nd and 3rd BARs can be activated when they're configured with address zero. This change defers the activation of all BARs until after they've all been configured with an address. This enables FreeBSD on Google Compute Engine C4-LSSD Machines. Sponsored by: Google Tested by: NetApp (previous version) Reviewed by: gallatin, imp Discussed with: jrtc27 (improved error reporting) Differential Revision: https://reviews.freebsd.org/D55541
debug: classified in
03-filenames_plain1 by
'sys/dev/'
This is a nop as eventually these flags are passed to rman_reserve_resource which unconditionally sets RF_ALLOCATED in the new flags for a region. However, it's really a layering violation to use RF_ALLOCATED in relation to struct resource objects outside of subr_rman.c as subr_rman.c uses this flag to manage it's internal tracking of allocated vs free regions. In addition, don't document this as a valid flag in the manual. I think the intention here was that if a caller didn't want to pass RF_ACTIVE or RF_SHAREABLE, they could pass RF_ALLOCATED instead of 0, but given the layering violation, I think it's best to just pass 0 instead in that case. NB: The bhnd bus uses RF_ALLOCATED (along with RF_ACTIVE) in a separate API to manage resource regions that are not struct resource objects (but a separate wrapper object). It would perhaps be cleaner if the chipc_retain_region and chipc_release_region functions used their own flag constants instead of reusing the rman(9) flags. Reviewed by: imp, kib Differential Revision: https://reviews.freebsd.org/D55683
debug: classified in
03-filenames_plain1 by '['sys/arm/',
'sys/x86/']'
to the frame instead of the frame itself. It is some stretch of the amd64 ABI, and is not easily fullfilled when handlers are called from C and not asm. In particular, the struct frame is passed by value but is modified by callees, with the expectation that the caller will see the modifications. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55679
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/', 'sys/x86/']'
Signed-off-by: tslight <tslight@pm.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2051
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Signed-off-by: tslight <tslight@pm.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1992
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Support for these processors was removed a few years ago, but a few references remain that should be removed. Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2039
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/i386/', 'sys/sys/pmc.h']'
acpi_system76: Support for acpi-controlled buttons on System76 Add acpi_system76 for handling acpi-controlled buttons on System76 Laptops. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55694
debug: classified in
03-filenames_plain1 by '['sys/dev/',
'sys/x86/']'
acpi_system76: unbreak LINT Reported by: tinderbox Fixes: https://cgit.freebsd.org/src/commit/?id=cdad55809ef5 ("acpi_system76: Support for ...") Differential Revision: https://reviews.freebsd.org/D55694
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The checksum types fit in 4b and don't need a full 32b int. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
1. ncores and devlog information is read as a combination so it makes sense to validate them in the same routine (and nowhere else). 2. ncores is never 0 and idx % ncores is always a valid coreid. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D55710
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D55716
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Several Realtek (and lots other) USB dongles present themselves as CDROM device first. Upon eject they do a mode switch and suddenly are a different kind of device (sometimes even with different IDs), e.g., a wireless dongle. In order to avoid the CDROM stage and rather than adding the quirk handling to more drivers, add support to umass and if enabled automatically eject the "CDROM" to make it the real device. Longer-term some other drivers could stop using their hand-rolled support for this. It is unclear as-to how much we need the list of (eject) quirks from u3g here, or if these are very specific to that kind of devices. Sponsored by: The FreeBSD Foundation Fixes: https://cgit.freebsd.org/src/commit/?id=b3b6a959c85a, https://cgit.freebsd.org/src/commit/?id=9c0cce328363 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54901
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Until an issue seen on amd64 can be investigated restore two mb() calls to virtio. Reviewed by: andrew Fixes: https://cgit.freebsd.org/src/commit/?id=c499ad6f997c ("virtio: Use bus_dma for ring and indirect buffer allocations") Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55766
debug: classified in
03-filenames_plain1 by
'sys/dev/'
1. Move parenthesis to correct place in switch and fix include order 2. Add comment at the end of an ifdef for clarity 3. Change include order. MFC after: 2 weeks Sponsored by: Amazon, Inc. Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D55696
debug: classified in
03-filenames_plain1 by
'sys/dev/'
netmap operates in two modes: 1) Emulated - netmap handling is done by the network stack, the NIC driver operates transparently to netmap. 2) Native - netmap management is done by the NIC driver. When checking whether a specific ENA ring is running in netmap mode, only the following checks were done: 1. IFCAP_NETMAP - Check whether netmap capability is enabled on the device. 2. NKR_NETMAP_ON - Check whether netmap is actively using this ring. The above checks implied that the netmap mode is native and the ENA driver needs to handle the netmap logic. The code was missing an explicit check on whether native mode is actually on (NAF_NATIVE). This led to a case where though emulated mode was used and a netmap application was turned on, the ENA driver still managed netmap logic partially and caused missing buffers and lack of refill as part of the datapath. Note: Enabling netmap emulated mode is insufficient and there's a need to load a netmap program in order to trigger this use-case. Add an explicit check of whether NAF_NATIVE mode is set. The issue was reported in [1]. [1]: https://github.com/amzn/amzn-drivers/issues/361 Fixes: https://cgit.freebsd.org/src/commit/?id=358bcc4c6cde ("Add support for ENA NETMAP partial initialization") MFC after: 2 weeks Sponsored by: Amazon, Inc. Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D55697
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Bug Fixes: * Verify that an ENA ring is in netmap only in native mode Minor Changes: * Move parenthesis to correct place in switch * Add comment * Reorder define MFC after: 2 weeks Sponsored by: Amazon, Inc. Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D55698
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Adds all missing Intel fields and turns jevents.c into an explicit white list mechanism so that we no longer ignore important fields that often invalidate the counter. The json event parser must now parse every field on each architecture that we support. This has been tested by running tinderbox and manually running jevent against our current json repository. As a bonus I fixed spelling errors in the AMD JSON definitions. Sponsored by: Netflix Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2055
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
It is not used elsewhere since the change [1]. [1] ac3ede5371af x86/xen: remove PVHv1 code MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55668
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
The previous code subtracted AMD_PMC_PERFCTR_0 (0xC0010004) from all perfctr MSR addresses to compute a relative offset. This is incorrect for counters using AMD_PMC_CORE_BASE (0xC0010200), AMD_PMC_L3_BASE (0xC0010230), and AMD_PMC_DF_BASE (0xC0010240), producing wrong offsets. Fix by promoting amd_core_npmcs, amd_l3_npmcs, and amd_df_npmcs to static module-level variables and computing the correct flat RDPMC index per AMD BKDG 24594 page 440: ECX 0-5: Core counters 0-5 ECX 6-9: DF counters 0-3 ECX 10-15: L3 Cache counters 0-5 ECX 16-27: DF counters 4-15 ECX > 27: Reserved, returns EINVAL Reviewed by: Ali Mashtizadeh <ali@mashtizadeh.com>, mhorne Sponsored by: NLINK (https://nlink.com.br), Recife, Brazil Fixes: https://cgit.freebsd.org/src/commit/?id=37bba2ad92d8 ("hwpmc_amd: Add support for additional counters") Differential Revision: https://reviews.freebsd.org/D55607
debug: classified in
03-filenames_plain1 by
'sys/dev/'
MASTER mute (vol.mute) works while audio is playing. However, if a stream is stopped and restarted (PCMTRIG_STOP -> PCMTRIG_START), the audio will resume even though the mixer shows the MASTER volume as muted. Other streams that are already playing remain silent. New streams may also start playing audio regardless of the MASTER mute state. The volume feeder now considers the MASTER mute when determining whether a channel should be muted. This ensures MASTER mute is consistently enforced for all streams and removes the dependency on trigger-driven state propagation. Tested with Creative Labs CA0132 card. MFC after: 1 week Reviewed by: christos Differential Revision: https://reviews.freebsd.org/D55605
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The ix driver now supports Energy Efficient Ethernet (EEE) on Intel E610 devices. EEE allows the network interface to enter low-power states during periods of low link utilization, reducing power consumption while maintaining full performance when needed. E610 adapters provide EEE support through BASE-T PHY functionality. Due to this PHY-based implementation, EEE is supported only on 2.5Gb speeds and above. Signed-off-by: Yogesh Bhosale <yogesh.bhosale@intel.com> Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com> Authored-by: Yogesh Bhosale <yogesh.bhosale@intel.com> Approved by: kbowling (mentor) Tested by: Mateusz Moga <mateusz.moga@intel.com> MFC after: 2 weeks Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D55304
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Per the watchdog driver contract, if the driver successfully arms the watchdog it must set error to 0, and if it's unable to arm the watchdog it must leave error alone. Sponsored by: Hewlett Packard Enterprise
debug: classified in
03-filenames_plain1 by
'sys/dev/'
amd64: move efirt trap checks into the helper Reviewed by: imp, jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55808
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
amd64: do reset %rip after page fault if pcb_onfault is set for any kernel page fault, and not only for EFIRT case. Reported and tested by: pho Fixes: https://cgit.freebsd.org/src/commit/?id=914a53570750ce5a104a5870403d7669656fddc3 Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55827
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55810
debug: classified in
03-filenames_plain1 by
'sys/x86/'
* Improve sysctl descriptions. * Rename battery charging-threshold sysctl for clarity. * Fix mis-spelled words. * Style: sort headers. Reported by: olce, jhb Reviewed by: olce Differential Revision: https://reviews.freebsd.org/D55848
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Add the USB Vendor/Product ID (0x13d3:0x3612) for the new Realtek 8852CE drive to make sure it works. Signed-off-by: Ying Xu <fakeshadow1337@gmail.com> Reviewed by: pouria, wulf Pull Request: https://github.com/freebsd/freebsd-src/pull/2071
debug: Commit manually moved from "unknown" to "hardware".
A race condition in the MII layer causes spurious link down events. In `statchg`, on link down, check if the PHY reports the link as actually down using the BMSR register, if not, force the status of the link to back up and restart TX. Do the same in a MII `linkchg` handler. On actual link up, restart TX in case it went idle and down. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252165 Signed-off-by: Rafael Kitover <rkitover@gmail.com> Reviewed by: pouria Differential Revision: https://reviews.freebsd.org/D55682
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Network-related commands, library, and kernel.
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by '['sys/net/',
'sys/netpfil/']'
Currently, we disallow BRDGSIFVLANSET when IFBRF_VLANFILTER is disabled. There's no particular reason to do this, and it causes some undesirable behaviour such as not being able to remove the tagged config on a member after disabling vlanfilter on the bridge. Remove the restriction so BRDGSIFVLANSET is always accepted. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292019 MFC after: 1 week Reviewed by: zlei, p.mousavizadeh_protonmail.com Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D54435
debug: classified in
03-filenames_plain1 by
'sys/net/'
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>
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
ipfw: remove extraneous argument from ipfw_add_protected_rule() This function is always called with unlocked IPFW_UH_LOCK.
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
ipfw: use sparse initializer for dynamic opcodes No functional change.
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
ipfw: make create_objects_compat() static No functional change.
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
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
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
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
debug: classified in
03-filenames_plain1 by
'sys/netgraph/'
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
debug: classified in
03-filenames_plain1 by
'usr.bin/netstat/'
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
debug: classified in
03-filenames_plain1 by
'sys/net/'
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
debug: classified in
03-filenames_plain1 by
'tools/cam/'
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")
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
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
debug: classified in
03-filenames_plain1 by
'tools/cam/'
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
debug: classified in
03-filenames_plain1 by
'sys/net/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292337 Fixes: https://cgit.freebsd.org/src/commit/?id=8774a990ee4094f16d596d4b78e0f3239e5d0c88
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
When adding the IFLIB_GET_MBUF/FLAGS, I neglected to NULL out the mbuf in the descriptor ring. I didn't think this should matter as the I thought this code was only used when the ring was about to be freed. But I was wrong, and leaving a stale mbuf in there can cause panics. Reported by: Marek Zarychta (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292547) Fixes: https://cgit.freebsd.org/src/commit/?id=14d93f612f26 Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'sys/net/'
pf(4) users who use limiters in current should update the rules
accordingly to reflect the change in default behavior. The existing
rule which reads as follows:
pass in from any to any state limiter test
needs to be changed to:
pass in from any to any state limiter test (no-match)
OK dlg@
Obtained from: OpenBSD, sashan <sashan@openbsd.org>, c600931321
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
05-summary-prefix by
'pfctl\(8\):'
This patch adds the same functionality for the IPv4 header checksum as was done erlier for the SCTP/TCP/UDP transport checksum. When the IP implementation sends a packet, it does not compute the corresponding checksum but defers that. It will determine whether the network interface selected for the packet has the requested capability and computes the checksum in software, if the selected network interface does not have the requested capability. Do this not only for packets being sent by the local IP stack, but also when forwarding packets. Furthermore, when such packets are delivered to a local IP stack, do not compute or validate the checksum, since such packets have never been on the wire. This allows to support checksum offloading also in the case of local virtual machines or jails. Support for epair interfaces will be added in a separate commit. Reviewed by: pouria, tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54455
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
krb5: Expose missing symbols Add symbols found in the port but not in base. This requires replacing a shared libkrb5profile.so with libkrb5profile.a (with -fPIC so it can be used by shared libraries). We do this by making libkrb5profile INTERNALLIB. Base currently has libkrb5profile in a shared library. The patch moves those functions to the various "consumer" libraries as the port does. Symbols that should be in the other libraries are in libkrb5profile.so. This is causing some ports issues. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291695 Reported by: michaelo, markj, Chris Inacio <inacio@andrew.cmu.edu> Tested by: michaelo Fixes: https://cgit.freebsd.org/src/commit/?id=ae07a5805b19 Reviewed by: michaelo (previous version) MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D54323
debug: classified in
05-summary-prefix by 'krb5:'
krb5: Fix gcc14 build Fixes: https://cgit.freebsd.org/src/commit/?id=1876de606eb8 X-MFC with: 1876de606eb8 MFC After: 2 weeks
debug: classified in
02-filenames_wildcards by
'.*Makefile'
krb5: Fix another GCC build issue Fixes: https://cgit.freebsd.org/src/commit/?id=1876de606eb8 X-MFC with: 1876de606eb8 MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by 'krb5/'
We used to return the result of (*ic_send_action) directly but ieee80211_ampdu_request() returns 1 on success and 0 on error, which is contrary to the result of (*ic_send_action). Deal with that accordingly and update the documentation of the function. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54794
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
Reported by: Timo Völker Tested by: Timo Völker MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Add more EHT definitions used by at least iwlwifi. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
INVARIANTS is meant to be used to enable extra sanity checking for internal structures, not enable/disable tests in the freebsd kyua test suite. STABLE branches include a GENERIC kernconf without INVARIANTS, so ktest_netlink_message_writer is broken on such branches: https://ci.freebsd.org/job/FreeBSD-stable-15-amd64-test/253/testReport/sys.netlink.test_netlink_message_writer/py/__test_cases_list__/ Reviewed by: lwhsu, imp Approved by: lwhsu (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pull/1889 MFC after: 3 days Signed-off-by: Siva Mahadevan <siva@FreeBSD.org> Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
netinet6: embed struct nd_ifinfo into struct in6_ndireq There is no functional change here, but we'd like to emphasize that the nd_ifinfo structure is not a actually a kernel ND6 software context, despite being actively used like this way, but an API/ABI structure for ioctl(2). This should prevent from a ABI breakages like in 31ec8b6407fd. This also is a step towards stopping using it as a kernel software context. Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54722
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
netinet6: embed the counter(9) arrays in struct in6_ifextra Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54723
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
netinet6: use in6_ifmtu() instead of IN6_LINKMTU() macro There should be no functional change. If there are any performance concerns with a function call, with the future changes, that would move ND6 bits into in6_ifextra, this function would be easily inline-able. Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54724
debug: classified in
03-filenames_plain1 by '['sys/netinet6/',
'sys/netpfil/']'
netinet6: embed struct scope6_id into struct in6_ifextra Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54726
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
netinet6: embed struct mld_ifsoftc into struct in6_ifextra In mld_domifdetach() don't search the global list. Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54727
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
netinet6: free in6_ifextra with epoch_call(9) This is expected to fix the old in6_selecthlim() panics. The nature of the panic is that a packet sending thread will obtain the struct ifnet pointer locklessly and then pick the if_inet6 pointer from it and dereference it. While the struct ifnet is freed via epoch_call(9), the struct in6_ifextra until this change was not. For the forwarded packets, or locally originated non-TCP packets we were probably safe due to the old if_dead trick. But locally originated TCP packets may dereference in6_ifextra via direct call into in6_selecthlim() from the tcp_output(), before ip6_output(). NB: hypothetically a similar problem also applies to IPv4's if_inet pointer, but there are no known panics, yet. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279653 Reviewed by: tuexen Differential Revision: https://reviews.freebsd.org/D54728
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
netlink: use caller's credentials in rtnl_handle_newlink Make sure rtnl_handle_newlink sets the caller's credential during calls to ifc_create_ifp_nl and ifc_modify_ifp_nl Reviewed by: glebius, melifaro Approved by: glebius (mentor) Differential Revision: https://reviews.freebsd.org/D54109
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
netlink: make compile without VIMAGE Add the #include for proc.h which seems to be there in the VIMAGE case through some other includes only. Sponsored by: The FreeBSD Foundation Fixes: https://cgit.freebsd.org/src/commit/?id=04f6b99947d2
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
If a rule has a divert port set, then we can reasonably predict that ipdivert.ko is loaded, and in particular that ip_divert_ptr is set. Moreover, in this case, if ipdivert.ko is not loaded we should just drop the packet instead of ignoring the divert rule. Reviewed by: igoro, kp, glebius MFC after: 2 weeks Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54845
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
The lock is sleepable and we can't grab it in dyn_tick(). Use the individual bucket locks instead. Fixes: https://cgit.freebsd.org/src/commit/?id=e3caa360d5d0a73af0de1d293d5b8ff6e900ceb4
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
The Jumbo Payload option was intended to allow the deployment of IPv6 on networks with a link MTU in excess of 65,735 octets. Speaking to one of the authors of RFC2675 the networks which motivated the Jumbo Payload option no longer exist. FreeBSD does not currently support any links with this capacity and discussion when this change was first proposed suggested that the loop back interface had to be patched to test implementation. As there are no known devices that can carry Jumbo Payloads remove support. Reviewed by: glebius, teuxen, kp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19960
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
There is no particular limitation of divert sockets with respect to IPv6, and the pf.conf man page does not mention the restriction to IPv4. Extend the divert-to regression tests to exercise the v6 case. Reviewed by: igoro, kp, glebius MFC after: 3 weeks Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54847
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
No functional change intended. MFC after: 1 week Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
The multicast routing code was using spin mutexes for packet counting, but there is no reason to use them instead of regular mutexes, given that none of this code runs in an interrupt context. Convert to using default mutexes. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54603
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
Explicitly use an array of 6 zeroes instead of a C string containing
nul characters. GCC 15 warns about the truncation, but this is
cleaner regardless.
In file included from /usr/obj/.../amd64.amd64/tmp/usr/include/bluetooth.h:51,
from usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c:45:
usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c: In function 'register_sdp':
usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c:96:13: error: initializer-string for array of 'unsigned char' truncates NUL terminator but destination lacks 'nonstring' attribute (7 chars into 6 available) [-Werror=unterminated-string-initialization]
96 | NG_HCI_BDADDR_ANY, (const uint8_t *)&record, sizeof(record),
| ^~~~~~~~~~~~~~~~~
Reviewed by: dim
Differential Revision: https://reviews.freebsd.org/D54869
debug: classified in
03-filenames_plain1 by
'sys/netgraph/'
netinet6: Disallow connections to IN6ADDR_ANY Previously connect() or sendto() to INADDR_ANY or IN6ADDR_ANY reached some socket bound to some host interface address. Although this was intentional it was an artifact of a different era, and is not desirable now. In 417b35a97b76 markj added support to disallow connect() to INADDR_ANY and IN6ADDR_ANY. Connections to INADDR_ANY were disabled by default in cd240957d7ba. Follow suit with IN6ADDR_ANY. Reviewed by: glebius, markj, zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54306
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
tests/netinet: fix tests that depended on connect(in6addr_any) Fixes: https://cgit.freebsd.org/src/commit/?id=627e126dbb07b167b028380ef61bb45f10493938
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: moved to network because
'Need to be grouped with
627e126dbb07b167b028380ef61bb45f10493938'
Add capability VLAN_HWTAGGING to the epair interface and enable it by default. When sending a packet over a VLAN interface that uses an epair interface, the flag M_VLANTAG and the ether_vtag (which contains the VLAN ID and/or PCP) are set in the mbuf to inform the hardware that the VLAN header has to be added. The sending epair end does not need to actually add a VLAN header. It can just pass the mbuf with this setting to the other epair end, which receives the packet. The receiving epair end can just pass the mbuf with this setting to the upper layer. Due to this setting, the upper layer believes that there was a VLAN header that has been removed by the interface. If the packet later leaves the host, the outgoing physical interface can add the VLAN header in hardware if it supports VLAN_HWTAGGING. If not, the implementation of Ethernet or bridge adds the VLAN header in software. Reviewed by: zlei, tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52465
debug: classified in
03-filenames_plain1 by
'sys/net/'
No functional change intended. MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
No functional change intended. MFC after: 1 week Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254611 Approved by: otis, tuexen, des MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54375
debug: classified in
03-filenames_plain1 by
'usr.bin/sockstat/'
- The v6 socket option and ioctl handlers had no privilege checks at all. The socket options, I believe, can only be reached via a raw socket, but a jailed root user with a raw socket shouldn't be able to configure multicast routing in a non-VNET jail. The ioctls can only be used to fetch stats. - Delete a bogus comment in X_mrt_ioctl(), one can issue multicast routing ioctls against any socket. Note that the call path is soo_ioctl()->rtioctl_fib()->mrt_ioctl(). I think all of the mroute privilege checks should be done within the ip(6)_mroute code, but let's first make the v4 and v6 modules consistent. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54982
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
ip6_mroute: Make MF6CFIND a regular function This is more natural and corresponds more closely to the v4 multicast routing code. No functional change intended. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54983
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
ip6_mroute: Fix the UPCALL_TIMING build MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
ip6_mroute: Remove an unused constant No functional change intended. MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
ip6_mroute: Remove an unhelpful comment ifnets already track if_allmulti() calls in the if_amcount field. That field is older than the comment, so I'm not exactly sure what the intent was; let's just remove it. MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
In pf_match_rule() we attempt to append matching rules to the end of
'match_rules'. We want to preserve the order to make the multiple
pflog entries easier to understand. So we keep track of the last added
rule item in 'rt'. However, that assumed that 'match_rules' was only
ever added to in that one call to pf_match_rules(). This isn't always
the case, for example if we have match rules in different anchors.
In that case we'd end up using the uninitialised 'rt' variable in the
SLIST_INSERT_AFTER call.
Instead track the match rules and the last matching rule (to enable
easy appending) in the struct pf_test_ctx.
This also allows us to reduce the number of arguments for some
functions, because we passed a ctx to most functions that needed
'match_rules'.
While here also make pf_match_rules() static, because it's only ever
used in pf.c
Add a test case to exercise the relevant code path.
MFC after: 2 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by '['sys/net/',
'sys/netpfil/']'
The destination buffer is FR_GROUPLEN (16 bytes) in length. When gname is created, the userspace utilities correctly use FR_GROUPLEN as the buffer length. The kernel should also limit its copy operation to FR_GROUPLEN bytes to avoid any user written code from exploiting this vulnerability. Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com> MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
During packet processing the descriptor is looked up using epoch(9) and it can be accessed after bpf_detachd(). In scenario of descriptor close the tap point is alive (it actually produces packets) and thus the pointer can be legitimately dereferenced. This fixes a race on a bpf(4) device close that would otherwise result in panic. Differential Revision: https://reviews.freebsd.org/D55064
debug: classified in
03-filenames_plain1 by
'sys/net/'
All the other protocols have corresponding start and input routines, which are used in the fast path. Currently the none protocol is treated specially. In the fast path it is checked to indicate whether a working protocol is configured. There are two issues raised by this design: 1. In production, other protocols are commonly used, but not the none protocol. It smells like an overkill to always check it in the fast path. It is unfair to other commonly used protocols. 2. PR 289017 reveals that there's a small window between checking the protocol and calling lagg_proto_start(). lagg_proto_start() is possible to see the none protocol and do NULL deferencing. Fix them by making the none protocol a first-class citizen so that it has start and input routines just the same as other protocols. Then we can stop checking it in the fast path, since lagg_proto_start() and lagg_proto_input() will never fail to work. The error ENETDOWN is chosen for the start routine. Obviously no active ports are available, and the packets will go nowhere. It is also a better error than ENXIO, since indeed the interface is configured and has a TX algorithm (the none protocol). PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289017 Diagnosed by: Qiu-ji Chen <chenqiuji666@gmail.com> Tested by: Gui-Dong Han <hanguidong02@gmail.com> Reviewed by: glebius MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D55123
debug: classified in
03-filenames_plain1 by
'sys/net/'
It is set but never used. Remove it to avoid confusion and save a little space. While here, use designated initializers to initialize the LAGG protocol table. That improves readability, and it will be safer to initialize the table if we introduce new protocols in the future. No functional change intended. Reviewed by: glebius MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D55124
debug: classified in
03-filenames_plain1 by
'sys/net/'
Previously this used a home-rolled version. Reviewed by: tuexen, imp, markj Differential Revision: https://reviews.freebsd.org/D55165
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
It is declared as static. Make the definition consistent with the declaration. It was ever fixed by commit 52e53e2de0ec, but the commit was reverted, leaving it unfixed. No functional change intended. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/net/'
This change switches to using RFC 7217 algorithm as the default to generate SLAAC addresses for IPv6 interfaces configured with accept_rtadv. Reviewed by: pouria, glebius, zlei Approved by: zlei Relnotes: yes Differential Revision: https://reviews.freebsd.org/D55138
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
While everything else uses vprintf() and net80211_vap_printf() vlog() the debug output of wlandebug sessions can be weird. For consistency use vprintf() everywhere to have homogeneous logging. Sponosred by: The FreeBSD Foundation MFC after: 3 days Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54795
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
This change adds native support for the SIOCGIFDOWNREASON ioctl in iflib. When ifconfig issues SIOCGIFDOWNREASON, the request is now routed through a new driver callback (IFDI_GET_DOWNREASON). iflib allocates the ifdownreason structure, calls the driver to fill the down-reason message, and then returns the data back to ifconfig for display. Without this change, iflib-based drivers cannot implement link-down reason reporting even if the hardware provides the information. No functional change for existing drivers unless they implement the new IFDI_GET_DOWNREASON method. Existing drivers continue to behave as before. Reviewed by: gallatin, erj, kgalazka, ssaxena, #iflib Differential Revision: https://reviews.freebsd.org/D54045 MFC After: 1 week
debug: classified in
03-filenames_plain1 by
'sys/net/'
This is cleaner and will make it a bit easier to add some more indirection to the VIF table, specifically, to add per-FIB tables. No functional change intended. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55057
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
The ip_mroute and ip6_mroute modules hook into the network stack via several function pointers. Declarations for these pointers are scattered around several headers. Put them all in the same place, ip(6)_mroute.h. No functional change intended. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55058
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
Deal with the mifi >= nummifs case early so that we can de-indent the rest of the code. This also ensures that the debug log (compiled out by default) doesn't perform an out-of-bounds access. Remove a bogus NULL test in an inner loop while here. No functional change intended. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55059
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
This used to be needed when interface renames were broadcast using the
ifnet_departure_event eventhandler, but since commit 349fcf079ca3
("net: add ifnet_rename_event EVENTHANDLER(9) for interface renaming"),
it has no purpose. Remove it.
Reviewed by: pouria, zlei
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D55171
debug: Commit manually moved from "unknown" to "network".
sifpidx (an interface name) cannot extend beyond the end of the fr_names buffer. We do the validation for fr_sifpidx here because it is a union that contains an offset only when fr_sifpidx points to an interface name, an offset into fr_names. The union is an offset into fr_names in this case only. interr_tbl now becomes a static variable outside a function to facilitate its use by two functions within fil.c Note that sifpidx is only used in ipf_sync() which implments ipf -y. Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com> MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by
'sys/net/'
There's at least one place where the time comparison is wrong, leading to some bad beahaviour around deciding to try and establish/reestablish AMPDU TX sessions. Start addressing these! Differential Revision: https://reviews.freebsd.org/D54390
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
The init routine of a lagg(4) interface will not change during the whole lifecycle. So we can call lagg_init() directly instead of through the function pointer. Well, that requires a drop and pickup lock, which unnecessarily expose a small race window. Refactor lagg_init() into lagg_init_locked() and call the later one to avoid that. Meanwhile, delay updating the driver managed status until after the interface is really ready. Reviewed by: markj MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D55198
debug: classified in
03-filenames_plain1 by
'sys/net/'
MFC after: 1 week Reported by: Ian FREISLICH <ianfreislich@gmail.com>
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
I have some patches which make ip_mroute and ip6_mroute multi-FIB-aware. This enables running per-FIB routing daemons, each of which has a separate routing socket. Several places in the network stack check whether multicast routing is configured by checking whether the multicast routing socket is non-NULL. This doesn't directly translate in my proposed scheme, as each FIB would have its own socket. I'd like to modify the ip(6)_mroute code to store all state, including the socket, in a per-FIB structure. So, take a step towards that and 1) hide the socket, 2) add a boolean flag which indicates whether a multicast router is registered. Reviewed by: pouria, zlei, glebius, adrian MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55236
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
The bpf_attachd() will perform bpf_detachd() itself. Performing it twice will lead to doing CK_LIST_REMOVE twice. Reported & tested by: bz
debug: classified in
03-filenames_plain1 by
'sys/net/'
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
05-summary-prefix by 'pf:'
The entire netlink(4) message processing thread is all inlined into nl_taskqueue_handler() making it difficult to dtrace(1) on a message level.
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
Array indices must always be posive. We avoid this by making each index unsigned. This mitigates out-of-bounds reads and writes. Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com> Reviewed by: glebius MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55260
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
compile_et.sh is run during buildworld and prints a bunch of debug output. It's intrusive and probably not needed, at least by default, so let's make the build output a bit cleaner. This is an upstream script, but it hasn't been modified in 15 years so the local modification is unlikely to cause any pain. Also remove a print that shows up in buildworld -s output. Reviewed by: cy MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55317
debug: classified in
05-summary-prefix by 'krb5:'
if_gre: Add netlink support with tests Migrate to new if_clone KPI and implement netlink support for gre(4). Also refactor some of the gre specific ioctls. Reviewed by: glebius, zlei Differential Revision: https://reviews.freebsd.org/D54443
debug: classified in
03-filenames_plain1 by '['sys/net/',
'sys/netlink/']'
gre tests: Add required_kmods to gre netlink test Fixes: https://cgit.freebsd.org/src/commit/?id=e1e18cc12e68 Differential Revision: https://reviews.freebsd.org/D54443
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
gre tests: Fix gcc warnings on gre netlink tests Avoid using `snl_add_msg_attr_ip` for now and directly use `snl_add_msg_attr_ip4` to silence gcc warnings. Fixes: https://cgit.freebsd.org/src/commit/?id=e1e18cc12e68 Differential Revision: https://reviews.freebsd.org/D54443
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: moved to network because
'Need to be grouped with
e1e18cc12e68762b641646b203d9ac42d10e3b1f'
States can be invalidated and still be present in the state table for a
while (until the pf_purge thread cleans them up). These states might not
have keys set, so we must make sure a state is not purged before we try
to access those keys.
MFC after: 1 week
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by
'sys/netpfil/'
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
When icmp6 sends an ICMPv6 message, it reuses the mbuf of the packet that triggered the ICMPv6 message and prepends an IPv6 and ICMPv6 header. For a locally generated packet with checksum offloading, the mbuf still has csum_flags set indicating that a SCTP/TCP/UDP checksum has to be computed and inserted. Since this not the case anymore, csum_flags need to be cleared. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293227 Reviewed by: kp, zlei, tuexen MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55367
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
<dev/nvmf.h> exports a constant to set the default maximum I/O queue size which is used by ctl(4) if an explicit size is not set. This value was chosen to match Linux's default, but it also avoids excessive resource usage for I/O queues. ctld was using the absolute maxium size as the default instead. Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'usr.sbin/ctld/'
Reviewed by: glebius, pouria MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D55410
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
No functional change intended. Reviewed by: pouria, rrs, Timo Völker MFC after: 1 week Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D55415
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Reported by: pho Reviewed by: markj Fixes: https://cgit.freebsd.org/src/commit/?id=d4062b9f16e46f039f2b5b40dd35592b5dabf00c Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55447
debug: classified in
03-filenames_plain1 by
'sys/net/'
Approved by: so Security: FreeBSD-SA-26:05.route Security: CVE-2026-3038 Fixes: https://cgit.freebsd.org/src/commit/?id=92be2847e845 ("rtsock: Avoid copying uninitialized padding bytes")
debug: classified in
03-filenames_plain1 by
'sys/net/'
Rack will in theory send an extra rate limited ack when we get to a closing state (sending a FIN) so that if we have only 1 packet outstanding we might encourage the connection to close out. However it does this always which is not always wise. Change it so that it only does that if its been more than an srtt since we have had some activity i.e. a send or a receive of a packet. Reviewed by:tuexen, rscheff Differential Revision:<https://reviews.freebsd.org/D55459>
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
So in testing I have found two interesting cases where ECN is going to make it so that an ack will be sent right away. These cases need to be limited to being in the ESTABLISHED state. You don't want ECN sending ACK's when we are transitioning in front or end states. Also we don't start a delayed ack timer <and> at the same time set the ACKNOW flag, thats just plain wrong. Reviewed by: tuexen, rscheff Differential Revision:<https://reviews.freebsd.org/D55460>
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292293 Reviewed by: rrs, rscheff, pouria, Nick Banks, Peter Lei MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D5546
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
The check for excluding duplicate ACKs needs to consider only TH_SYN and TH_FIN. We know that TH_ACK is set and TH_RST is cleared. All other flags, in particular TH_ECE, TH_CWR, and TH_AE needs to be ignored for the check. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292293 Reviewed by: rrs MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D55489
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
If driver refused to install SA, record rejected handle for SA on the interface always, not only for EOPNOTSUPP case. The ipsec_accel_output() function did the right thing if there is no rejection handle, but not having the handle allows further attempts to install the SA on the interface. If driver installed the SA, but ipsec_accel_handle_sav() returned error, uninstall the SA from the interface. Hardware must not be set up to process packets for which kernel expects no processing is done. In both cases, free the drv_spi if a handle was not installed. But keep drv_spi allocated if the deinstall returned an error from the driver. Reviewed by: slavash Tested by: Wafa Hamzah <wafah@nvidia.com> Sponsored by: NVidia networking MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/netipsec/'
Reviewed by: slavash Tested by: Wafa Hamzah <wafah@nvidia.com> Sponsored by: NVidia networking MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/netipsec/'
Before this change, netlink only shows nexthop expire value if route is not multipath. Now it can set expire time during route creation. Also, show expire time of multipath nexthops. Reviewed by: glebius MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D55442
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
Reviewed by: glebius MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D55440
debug: classified in
03-filenames_plain1 by
'usr.bin/netstat/'
These opaque IDs are used by netisr to distribute work among threads. The mapping function is simply SourceID % numthreads, so using socket addresses as source IDs isn't going to distribute packets well due to alignment. Use the divert socket's generation number instead, as that suits this purpose much better. Reviewed by: zlei, glebius MFC after: 1 week Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55537
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Only expose `dcb` when either `INET` or `INET6` is defined.
Reported by: clang (`-Wunused`)
MFC after: 1 week
Fixes 5547a7bb39 ("divert: Use a better source identifier...")
Differential Revision: https://reviews.freebsd.org/D55548
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
- Move some of the braces under their respective conditionals to make the statements more self-encapsulated and only define the `aliasreq` union in the event either INET or INET6 is defined. - Fix a copy-paste error: `in_gre_ioctl` should be `in6_gre_ioctl` in the INET6 case. Reported by: tinderbox Fixes: https://cgit.freebsd.org/src/commit/?id=e1e18cc12e68 ("if_gre: Add netlink support with tests") Differential Revision: https://reviews.freebsd.org/D55546
debug: classified in
03-filenames_plain1 by
'sys/net/'
There is no user for `rta_expires` member and it's duplicate of `rta_expire`. Reviewed By: melifaro Differential Revision: https://reviews.freebsd.org/D55445
debug: classified in
03-filenames_plain1 by
'sys/netlink/'
Some 32-bit architectures, e.g., armv7, require strict 8-byte alignment while doing atomic 64-bit access. Hence aligning to the pointer type (4-byte alignment) does not meet the requirement on those architectures. Make the space allocated by vnet_data_alloc() sufficent aligned to avoid unaligned access. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265639 Diagnosed by: markj Reviewed by: jhb, markj Co-authored-by: jhb MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D55560
debug: classified in
03-filenames_plain1 by
'sys/net/'
Current radix-based implementation of lookup tables in ipfw does not support non-contiguous prefixes while this type of lookup is needed to write CPU-effective firewall configurations. For some of the cases we can reach the goal using a masked table lookup by adding masked (e.g. zero non-significant bits) records into a table and then zero non-significant bits in lookup key prior to making a table lookup. Obtained from: Yandex LLC MFC after: 3 weeks Relnotes: yes Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D53694
debug: classified in
05-summary-prefix by 'ipfw:'
release the refcount of link-local prefix information to ensure it gets freed when the address is deleted. Reviewed By: zlei, ivy MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55593
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
Reported by: bz MFC after: 1 week Sponsored by: Netflix, Inc.
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: classified in
03-filenames_plain1 by
'sys/net/'
When net.inet.carp.preempt=1 and a physical interface goes down, the global V_carp_demotion counter is incremented. For CARP this was already reflected in outgoing advertisements via DEMOTE_ADVSKEW(), but VRRP sent the raw sc_vrrp_prio unchanged, so demotion had no effect. Add DEMOTE_VRRP_PRIO(), a macro analogous to DEMOTE_ADVSKEW(): It subtracts V_carp_demotion from the configured priority and clamps the result to [0, 254]. Priority 0 is VRRPv3's "resign" signal and causes backups to preempt immediately. Priority 255 (IP address owner) is never demoted. Reviewed by: kp Approved by: kp Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55558
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Rather than using the status != 0 check use the way more descriptive status != IEEE80211_STATUS_SUCCESS definition. This makes it a lot more clear what is checked here. While here add a comment in case aof the (Re)Assoc Resp failure as we do not update state in that case but rely on a timeout which will bounce us back to State 1 (cf. 802.11-2024, Figure 11-23) which means SCAN in our case, rather than possibly moving us back to AUTH. We will likely have to revisit this when SAE hits the tree. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55643
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
Implement RFC 4861 Section 7.2.6 and RFC 9131, which is also address one of the IPv6 deployment issues in RFC 9898 Section 3.9. GRAND should be triggered by a change in link-layer address of interface or by configuration of a new global ipv6 address after DAD completes. Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D55015
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
`nd6_ra_input()` is simplied to make it easier to add additional options. Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D55267
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
RFC4291 section 2.5.2:
The unspecified address must not be used as the destination address
of IPv6 packets or in IPv6 Routing headers. An IPv6 packet with a
source address of unspecified must never be forwarded by an IPv6
router.
We disallowed connections to IN6ADDR_ANY by default, as of commit
627e126dbb07 ("netinet6: Disallow connections to IN6ADDR_ANY"). As this
is actually disallowed by the RFC, just remove the support.
Reported by: bz (in D54306)
Reviewed by: bz, glebius
Relnotes: yes
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54942
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
Depending on the base channel ni_vht_chan2 - ni_vht_chan1 can be
negative. Apply abs() as indicated in the comments right above
| CCFS1 - CCFS0 | = 8 or > 16
in order to fix the channel width selection.
Sponsored by: The FreeBSD Foundation
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293645
Fixes: https://cgit.freebsd.org/src/commit/?id=4bf049bfeefd9
MFC after: 3 days
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D55717
debug: classified in
03-filenames_plain1 by
'sys/net80211/'
ndp: implement delayed anycast and proxy NA Reviewed by: bms Differential Revision: https://reviews.freebsd.org/D55141
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
ndp: Fix free after use and exclude delayed proxy PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293777 Fixes: https://cgit.freebsd.org/src/commit/?id=f37fbe30f559 ("ndp: implement delayed ...")
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
All supported stable branches use netlink(4) API to configure carp(4). The deleted code also has kernel stack leak vulnerability, that requires extra effort to fix. Reviewed by: pouria, kp Differential Revision: https://reviews.freebsd.org/D55804
debug: Commit manually moved from "unknown" to "network".
tcp: make sack_filter.c compilable without _WANT_TCPCB This file can be compiled as a standalone program for debugging purposes. Achieve that without exposing hack from tcp_var.h that is destined for removal.
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
tcp: fix up !VIMAGE builds The tcp_seq.h uses getmicrouptime() in an inline function, but it doesn't include <sys/time.h>. This was usually masked by having tcp_var.h always before tcp_seq.h, so restore that. Fixes: https://cgit.freebsd.org/src/commit/?id=c0462c2deafdcfe885e8d6f91b529d8cbddc6014
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
These were hacks since FreeBSD 12 that provided some transition period for utilities to migrate from reading kernel memory via kvm(3) to sysctl(3) based APIs. The transition period is over.
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
The module constructs UDP packets, but doesn't use the UDP stack.
debug: classified in
03-filenames_plain1 by
'sys/net/'
inpcb: overhaul in_pcb.h Pull up all user-visible stuff to the top of the file and isolate the rest under _KERNEL. The user visible parts are: - struct in_conninfo - struct xinpcb - defines for inp_flags bits, that are shared between xinpcb and inpcb PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293493
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
inpcb: fix up !VIMAGE builds There are some files that don't include mutex.h and rwlock.h, but use inpcb locking macros. With VIMAGE the net/vnet.h pulls half of the possible kernel includes, masking the problem. The in_pcb.h also used to mask the problem, so restore that. Fixes: https://cgit.freebsd.org/src/commit/?id=041e9eb1ae094a81e55fbcaba37eb2ac194658cc
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Reviewed by: glebius Fixes: https://cgit.freebsd.org/src/commit/?id=7f3b46fe54f1 ("ndp: Add support for Gratuitous...") Differential Revision: https://reviews.freebsd.org/D55844
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
Added optional system tunable parameter to enable 4-tuple rss udp hashing. Signed-off-by: bigJ <bigj@solanavibestation.com> Reviewed by: adrian, pouria Pull Request: https://github.com/freebsd/freebsd-src/pull/2057
debug: classified in
03-filenames_plain1 by
'sys/net/'
It should be decreased only when the interface has been successfully removed from the "active" list. This prevents vnet_if_return() from potential OOB writes to the allocated memory "pending". Reviewed by: kp, pouria Fixes: https://cgit.freebsd.org/src/commit/?id=a779388f8bb3 if: Protect V_ifnet in vnet_if_return() MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55873
debug: classified in
03-filenames_plain1 by
'sys/net/'
The ioctls SIOCSIFVNET and SIOCSIFRVNET are for userland only. For SIOCSIFVNET, if_vmove_loan(), the interface is obtained from current VNET. For SIOCSIFRVNET, if_vmove_reclaim(), a valid child prison is held before getting the interface. In both cases the VNET of the obtained interfaces is stable, so there's no need to check it. No functional change intended. Reviewed by: glebius, jamie (for #jails) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55828
debug: classified in
03-filenames_plain1 by
'sys/net/'
Stuff in man section 8 (other than networking).
This variable was named incorrectly, resulting in any specified flags being silently ignored. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292074 MFC after: 3 days Reported by: CrazyMihey@Ya.Ru Fixes: https://cgit.freebsd.org/src/commit/?id=493908c4b45c (Add a daily zfs trim script)
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Probe for UGA instead of returning early if we can't find GOP. Reviewed by: tsoome PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291935 MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54431
debug: classified in
03-filenames_plain1 by 'stand/'
gfx_state.tg_private points to a EFI_GRAPHICS_OUTPUT_PROTOCOL only when using GOP. The firmware provided Blt functions on UGA platforms have been observed to not work on old MacBooks, and are likley hit or miss anyways as UGA has been deprecated since 2006. Reviewed by: tsoome PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291935 MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54432
debug: classified in
03-filenames_plain1 by 'stand/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
03-filenames_plain1 by
'libexec/'
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
debug: classified in
03-filenames_plain1 by 'stand/'
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
debug: classified in
03-filenames_plain1 by
'libexec/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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 [...]")
debug: classified in
03-filenames_plain1 by 'stand/'
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
debug: classified in
03-filenames_plain1 by 'stand/'
Sponsored by: Netflix Reviewed by: adrian, andrew Differential Revision: https://reviews.freebsd.org/D54510
debug: classified in
03-filenames_plain1 by 'stand/'
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
debug: classified in
03-filenames_plain1 by
'libexec/'
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.
debug: classified in
03-filenames_plain1 by
'libexec/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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)
debug: classified in
03-filenames_plain1 by 'stand/'
Signed-off-by: Lakshmikanth Ayyadevara <lakshmikanth.a.ayyadevara@oracle.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1865
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
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
debug: classified in
03-filenames_plain1 by 'sbin/'
newfs: Add -u to getopt string Fixes: https://cgit.freebsd.org/src/commit/?id=68562f8145e8 ("newfs: Add an option to disable soft updates")
debug: classified in
03-filenames_plain1 by 'sbin/'
Nobody else's mac.conf(5) has any entries for jails, so they get a trivial ENOENT and we fail before we can fetch any jail parameters. Most notably, this breaks `jls -s` / `jls -n` if you do not have any loaded policy that applies jail labels. Add an entry that works for everyone, and hardcode that as an ENOENT fallback in libjail to provide a smoother transition. This is probably not harmful to leave in long-term, since mac.conf(5) will override it. This unearthed one additional issue, in that mac_get_prison() in the MAC framework handled the no-label-policies bit wrong. We don't want to break jail utilities enumerating jail parameters automatically, so we must ingest the label in all cases -- we can still use it as a small optimization to avoid trying to copy out any label. We will break things if a non-optional element is specified in the copied in label, but that's expected. The APIs dedicated to jaildescs remain unphased, since they won't be used in the same way. Fixes: https://cgit.freebsd.org/src/commit/?id=db3b39f063d9f05 ("libjail: extend struct handlers [...]") Fixes: https://cgit.freebsd.org/src/commit/?id=bd55cbb50c58876 ("kern: add a mac.label jail parameter") Reported by: jlduran (on behalf of Jenkins) Reviewed by: jlduran Differential Revision: https://reviews.freebsd.org/D54786
debug: classified in
05-summary-prefix by
'jail\(3\):'
Prefer to use NANO_DEF_UNAME and NANO_DEF_GNAME instead of a fixed "root/wheel". Fixes: https://cgit.freebsd.org/src/commit/?id=61ac7309c366 ("nanobsd: Add a provisional populate_part function") MFC after: 3 days
debug: classified in
05-summary-prefix by 'nanobsd:'
Mimic c99bb5747f5e ("nanobsd: minor formatting cleanup") and cleanup
_create_code_slice(), somehow I missed it when rebasing.
No functional change intended.
Fixes: https://cgit.freebsd.org/src/commit/?id=ecc039be7fdd ("nanobsd: Add a NO_ROOT build option")
MFC after: 3 days
debug: classified in
05-summary-prefix by 'nanobsd:'
Extend PAM integration beyond account checks to include credential establishment and session management, allowing PAM modules to configure the execution environment for user cron jobs. Previously, cron only called pam_acct_mgmt() to verify account validity but immediately terminated the PAM handle before job execution. This prevented PAM modules from establishing sessions, setting credentials (e.g., Kerberos tickets), or exporting environment variables needed by jobs. The PAM handle now persists in the intermediate process throughout the job execution, enabling proper session open/close pairing. Credentials are established and sessions opened while still running as root, before dropping privileges in the grandchild. PAM environment variables are exported in the job process with user crontab variables taking precedence. A session rule (pam_permit.so) is added to /etc/pam.d/cron to enable session support without changing default behavior. Administrators can replace this with other modules as needed. System crontab entries continue to bypass all PAM operations. PR: bin/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244844 Reviewed by: des MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54415
debug: Commit manually moved from "unknown" to "admin".
Now that newfs(8) has a command-line argument to disable soft updates, use that instead of running tunefs(8) after the fact to turn them off. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: mckusick, imp Differential Revision: https://reviews.freebsd.org/D54783
debug: classified in
03-filenames_plain1 by 'sbin/'
Prefer an mtree -C output, which is guaranteed to be mtree-compatible. Add "gname", "uname", and "tags" to the default keyword set, while removing "size" and "time", the latter being set on kernel file entries and taking precedence over makefs -T (when paired with -F). As a side effect, this produces a cleaner file with sorted keywords. Note that passing "-u" to sort in order to pipe to mtree is no longer necessary, but we'll do it out of habit. Reviewed by: imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54854
debug: classified in
05-summary-prefix by 'nanobsd:'
For unclear reasons, we used to print two warnings about not having a
DTB: First,
printf("No valid device tree blob found!\n");
and immediately later a second,
printf("WARNING! Trying to fire up the kernel, but no "
"device tree blob found!\n");
A previous commit silenced the second warning in the event that the
acpi.revision environment variable was set, on the theory that systems
which have ACPI might not need a DTB; this commit silences the first
of the two warnings under the same condition.
Reviewed by: andrew
Fixes: https://cgit.freebsd.org/src/commit/?id=3989a3d81701 ("loader: Only warn when we have neither FDT nor ACPI")
Sponsored by: Amazon
Differential Revision: https://reviews.freebsd.org/D54772
debug: classified in
03-filenames_plain1 by 'stand/'
- Avoid unnecessary subshell execution - Fix removing the temporary and empty /cfg directory - Do not remove the generated metalog file for /cfg or /data partitions Fixes: https://cgit.freebsd.org/src/commit/?id=61ac7309c366 ("nanobsd: Add a provisional populate_part function") MFC after: 3 days
debug: classified in
05-summary-prefix by 'nanobsd:'
pci_host_read_config() requires write access to /dev/pci so cannot be used with unprivileged bhyve. The lpc init code uses it to find the host system's LPC bridge device and so was generating warnings with bhyve running as a non-root user. Refactor the implementation to use PCIOCGETCONF instead, which doesn't require any special privileges. This isn't formally necessary, as we only care about copying the host system's identifiers in order to support Intel GPU passthrough (see commit f4ceaff56ddaa), but it's straightforward and lets an unprivileged user run bhyve without seeing warnings about failing to open /dev/pci with write permissions. Reviewed by: corvink, rew MFC after: 3 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54851
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Sponsored by: NVidia networking MFC after: 1 week
debug: classified in
03-filenames_plain1 by 'sbin/'
Need to check argument 'path', not just allocated struct member.
debug: classified in
03-filenames_plain1 by 'stand/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292595 Approved by: ziaee, dab, imp, tsoome MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54843
debug: classified in
03-filenames_plain1 by 'stand/'
lposix is the last holdout of modules built into flua until we can fix the module design to have the right parts require()able. Address a valid bug in lua_read() found at a higher WARNS and drop the override entirely. Some of the modules could possibly be re-evaluated. Fixes: https://cgit.freebsd.org/src/commit/?id=c2caf3b3313 ("flua: lposix: add more useful functions [...]") Reported by: des Reviewed by: des Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc.
debug: classified in
03-filenames_plain1 by
'libexec/'
Previously, setting an interface FIB to some invalid value would result in a warning being printed, but the ifconfig command would exit with status 0, but this is wrong. Add a little regression test. Reviewed by: pouria, zlei, melifaro MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54918
debug: classified in
03-filenames_plain1 by 'sbin/'
Avoid truncating 32-bit values. This would have saved me a bit of time when I was looking at a cpuid leaf on my system and typed 0x80000001f instead of 0x8000001f. Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54919
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
This prevents 'service -e' from emitting (/var/log/messages): /usr/sbin/service: WARNING: $virtual_oss_enable is not set properly - see rc.conf(5) Pull Request: https://github.com/freebsd/freebsd-src/pull/1987 Reviewed by: christos Signed-off-by: eborisch@gmail.com MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'libexec/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292595 Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54923
debug: Commit manually moved from "unknown" to "admin".
On some environement a VM can be connected to multiple ifaces but only one will respond to dhcp and able to fetch the metadata. Launch the early dhclient on all available ifaces and as soon as one dhcp has successfully configured an iface, proceed with fetching the metadata. MFC After: 1 week Reported by: mateusz.klejn@ovhcloud.com Tested by: mateusz.klejn@ovhcloud.com Sponsored by: OVHcloud
debug: classified in
03-filenames_plain1 by
'libexec/'
Stub out both experimental functions introduced in ecc039be7fdd when doing embedded builds. Fixes: https://cgit.freebsd.org/src/commit/?id=ecc039be7fdd ("nanobsd: Add a NO_ROOT build option") MFC after: 3 days
debug: classified in
05-summary-prefix by 'nanobsd:'
This fixes the build with GCC 14 on stable/14 which raises fatal -Wimplicit-function-declaration warnings. Reviewed by: rmacklem, cy Fixes: https://cgit.freebsd.org/src/commit/?id=5000d023a446 ("heimdal-kadmin: Add support for the -f dump option") Differential Revision: https://reviews.freebsd.org/D54931
debug: classified in
05-summary-prefix by 'heimdal:'
This fixes a warning reported by GCC 14 on stable/14:
crypto/heimdal/lib/hdb/keys.c:241:13: warning: 'free' called on pointer 'ext' with nonzero offset 16 [-Wfree-nonheap-object]
241 | free(hist_keys);
| ^~~~~~~~~~~~~~~
crypto/heimdal/lib/hdb/keys.c:234:15: note: returned from 'calloc'
234 | ext = calloc(1, sizeof (*ext));
| ^~~~~~~~~~~~~~~~~~~~~~~~
Reviewed by: rmacklem, cy
Fixes: https://cgit.freebsd.org/src/commit/?id=5000d023a446 ("heimdal-kadmin: Add support for the -f dump option")
Differential Revision: https://reviews.freebsd.org/D54932
debug: classified in
05-summary-prefix by 'heimdal:'
Compare to the OUTPUT_ARCH in sys/conf/ldscript.riscv. Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54962
debug: classified in
03-filenames_plain1 by 'stand/'
nvmecontrol: Always set the RAE bit on telemetry-log requests nvme-cli, as well as some vendor scripts, always set the RAE bit of the GET LOG PAGE request when retrieving telemetry logs to avoid the log getting reset to something new. Adopt that praactice here (nvme-cli telemetry-log does have a --rae option, but that just turns on the rae bit which defaults to being on: there's no way to turn it off). Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55017
debug: classified in
03-filenames_plain1 by 'sbin/'
nvmecontrol: telemetry-log don't sanity check host generation number Don't sanity check the host initiated generation number. It's not necessarily constant between the two log page fetches. nvme-cli doesn't do this stanity check and it generates a lot of false positives. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55018
debug: classified in
03-filenames_plain1 by 'sbin/'
nvmecontrol: telemetry-log --verbose Add -v / --verbose to report status report since these things can take minutes to retrieve. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55019
debug: classified in
03-filenames_plain1 by 'sbin/'
The realloc in my_fgetln was trying to grow the pointer to the string
buffer, not the string buffer itself.
In function 'my_fgetln',
inlined from 'mit_prop_dump' at crypto/heimdal/kdc/mit_dump.c:156:19:
crypto/heimdal/kdc/mit_dump.c:119:13: error: 'realloc' called on unallocated object 'line' [-Werror=free-nonheap-object]
119 | n = realloc(buf, *sz + (*sz >> 1));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/heimdal/kdc/mit_dump.c: In function 'mit_prop_dump':
crypto/heimdal/kdc/mit_dump.c:139:11: note: declared here
139 | char *line = NULL;
| ^~~~
Reviewed by: rmacklem, cy
Fixes: https://cgit.freebsd.org/src/commit/?id=a93e1b731ae4 ("heimdal-kadmin: Add support for the -f dump option")
Differential Revision: https://reviews.freebsd.org/D54933
debug: classified in
05-summary-prefix by 'heimdal:'
The tmp rc script has much the same problem that the var does: it wants to test if /tmp is writable, and mount a tmpfs if it's not. This means that we actually want our zfs datasets mounted first, because we might have a /tmp dataset that changes the story. The ordering problem is particularly noticable with a r/o zfs root, since the write test will fail and we'll mount a tmpfs that later gets covered by our /tmp dataset. If that /tmp dataset inherited readonly, then we're still in trouble. This also fixes `tmpmfs=yes`, which would again get covered by a zfs dataset with the existing ordering. Reviewed by: des Differential Revision: https://reviews.freebsd.org/D54995
debug: classified in
03-filenames_plain1 by
'libexec/'
The rae arg is uint8_t (which we then shift over to the right bit. Pass '1' instead of 'true' here to match the interface. While true is promoted to (uint8_t)1, we don't use it as a bool in read_logpage(). Fixes: https://cgit.freebsd.org/src/commit/?id=5322eec86ae4 ("nvmecontrol: Always set the RAE bit on telemetry-log requests") Sponsored by: Netflix Reviewed by: chs Differential Revision: https://reviews.freebsd.org/D55060
debug: classified in
03-filenames_plain1 by 'sbin/'
Set `ifr->ifr_name` to display gre options for the interface. Reviewed by: glebius, zlei Approved by: glebius (mentor) MFC after: 1 day Differential Revision: https://reviews.freebsd.org/D55099
debug: classified in
03-filenames_plain1 by 'sbin/'
PR: bin/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292773 Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54935
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Signed-off-by: Pavel Knoblokh <info@software-advisory.com.au> Reviewed by: emaste, imp, kevans Fixes: https://cgit.freebsd.org/src/commit/?id=dc4581589a3 ("pkg: clean support for repositories") Closes: https://github.com/freebsd/freebsd-src/pull/1989
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
vq_getchain() erroneously checked vc_hv_caps for indirect descriptor support when it encountered an indirect descriptor. vc_hv_caps is used in feature negotiation to advertise what features our device emulation supports, but we should really check what features we have negotiated with the driver. Reviewed by: corvink Differential Revision: https://reviews.freebsd.org/D53465
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Support for indirect registers is actually part of the common virtio code, the virtio-scsi code doesn't actually care or even know anything about it. Advertising the features greatly improves performance with some guest operating systems. Reviewed by: corvink Differential Revision: https://reviews.freebsd.org/D53467
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
The old default of 2 for max_sectors limits performance significantly with guest systems where the virtio-scsi driver actually honors this value. As CTL doesn't seem to have any limit of the maximum size of a single transfer, set this to INT32_MAX by default. Reviewed by: corvink Differential Revision: https://reviews.freebsd.org/D53466
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
It can use the passthru_mmio_map() helper function. Make that change, and also make passthru_mmio_map() use EPRINTLN to fix formatting when the guest console is stdio. Reviewed by: corvink, jhb MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55067
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
The daemon utility has always created its output file with a fixed mode of 0600. This causes issues for log collection setups where the collector does not run as root but instead relies on group access to the watched daemon’s log file. Introduce a new option that allows specifying the output file mode using install(1)-style semantics. This enables non-root log collectors to access the file as intended and improves compatibility with log rotation tools. Reviewed by: kevans MFC after: 1 week Relnotes: yes Differential Revision: https://reviews.freebsd.org/D54930
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55100
debug: classified in
03-filenames_plain1 by
'share/examples/bhyve/'
The VM image creation scripts have a copy of this list of datasets which
should be kept in sync, which can otherwise be easily missed, as was the
case in the now-reverted 3e8619e535b6 ("bsdinstall: Create separate
datasets for directories in /usr/ports").
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
When lua_chown is used to call chown(2) internally, it first resolves the user and/or group by calling the getpwnam_r(3) and getgrnam_r(3) functions, respectively. However, although it checks for errors, it does not check when entries are not found (which is not an error), which means that the buffer will be set to NULL, and since lua_chown attempts to access the NULL structure, it will receive a SIGSEGV signal. Reviewed by: imp@ Approved by: imp@ Differential Revision: https://reviews.freebsd.org/D55172
debug: classified in
03-filenames_plain1 by
'libexec/'
Signed-off-by: Thibault Payet <contact@thibaultpayet.fr> Reviewed by: imp,mhorne Pull Request: https://github.com/freebsd/freebsd-src/pull/2001
debug: classified in
03-filenames_plain1 by
'libexec/'
Currentlu, the traceroute[6] utility does not check for possible networking errors while talking to as_server in case of "traceroute -a". Meantime, there is a common case when trace is long and it has many non-responding hops (shown as '* * *'), so as_server aborts our connection, hence no AS numbers shown for the rest of trace. Somewhat artifical way to reproduce the problem: traceroute to 57.144.244.1 (57.144.244.1), 80 hops max, 48 byte packets 5 [AS174] be2950.ccr42.fra05.atlas.cogentco.com (154.54.72.42) 74.277 ms 9.605 ms 9.599 ms 6 [AS174] 149.11.228.19 (149.11.228.19) 9.506 ms 9.466 ms 9.420 ms 7 [AS33182] po172.asw02.fra5.tfbnw.net (129.134.108.146) 9.725 ms 9.874 ms 9.696 ms 8 [AS32934] psw04.fra5.tfbnw.net (157.240.59.85) 8.718 ms 8.691 ms 8.618 ms 9 * * * 10 [AS0] edge-star-mini-shv-01-fra5.facebook.com (57.144.244.1) 9.747 ms 9.815 ms 9.699 ms Note what due to increased timeout (-w10) we get [AS0] for 10th hop because as_server closed our connection. Same problem occurs with default -w3 when there are lots of '* * *' hops in a trace. Fix it with some additional error checking and a reconnection. This patch was in my use for many years and after traceroute(8) moved from contrib/ to usr.sbin/ it's nice to have it in the tree. MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
In base 68ad2b0d7af2a the ncurses html documentation was removed, and entries added to ObsoleteFiles.inc to get rid of /usr/share/doc/ncurses, but the directory was still being re-created via BSD.usr.dist. Remove it from there too. Fixes: https://cgit.freebsd.org/src/commit/?id=68ad2b0d7af2a MFC after: 1 month
debug: classified in
03-filenames_plain1 by 'etc/'
and use libc daemon() instead of private rfork-based copy.
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
freebsd-update sets the currently running release from UNAME -r, which can be overridden via the --currently-running commandline option (or by setting UNAME_r in the environment). This may be invalid if -b is used to specify a basedir other than /, so error out if -b is specified without setting the currently running version. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283229 Reviewed by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48016
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
ngctl: Modernize code somewhat * Replace fgets(3) with getline(3) * Replace select(2) with poll(2) * Avoid needlessly copying text around * Correct use of getopt(3) * Pick some style and whitespace nits MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55257
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
ngctl: Check hook name length Check the length of the hook name when copying it into the sockaddr. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55258
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
ngctl: Fix buffer overflow in config command Keep track of our buffer length when assembling the argument list. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293075 MFC after: 1 week Reviewed by: zlei, markj Differential Revision: https://reviews.freebsd.org/D55259
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
The ioctl might fail because it's run in a jail which doesn't have permission to invoke ppt ioctls. Reviewed by: jhb MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55070
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Make parse_selector() print a warning to stderr and continue parsing the config if it encounters an invalid facility or priority. Note that because the parsing is done from a casper service, there isn't a good mechanism to log errors; the warnings are visible only when syslogd is started in debug mode. Reported by: Doug Hardie <bc979@lafn.org> MFC after: 1 week Fixes: https://cgit.freebsd.org/src/commit/?id=f4b4a10abb26 ("syslogd: Move selector parsing into its own function") Reviewed by: jfree, jlduran, eugen, delphij Differential Revision: https://reviews.freebsd.org/D55033
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Update rfb_recv_* functions to return -1 on failure and 0 on success. Update rfb_handle to check these return values and drop the connection if an error occurs. Signed-off-by: Hayzam Sherif <hayzam@gmail.com> Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
debug: classified in
03-filenames_plain1 by 'sbin/'
Not expecting it to turn into yak-shaving: kevans
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55269
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55274
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55270
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55273
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55275
debug: classified in
03-filenames_plain1 by 'sbin/'
The mdts value is in terms of the nvme page size, not the host page size. On many architectures these are both 4k, however on arm64 it is possible to build a system with the host page size of 16k. Use NVME_MPS_SHIFT to get the correct nvme page shift. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55334
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55271
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55272
debug: classified in
03-filenames_plain1 by 'sbin/'
Reported by: olce
debug: classified in
03-filenames_plain1 by 'etc/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Convert rfb_send_* helpers to return status codes and check their results. Add missing checks for stream_read() and stream_write() returns during the handshake in rfb_handle() to avoid acting on failed I/O. Signed-off-by: Hayzam Sherif <hayzam@gmail.com> Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55343
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
USB HCI requests may not include HCI transfer block structures (i.e., xfer->data[] == NULL), but in several places, the USB mouse emulation code assumes one will exist. This can lead to a NULL pointer dereference and a SEGV in the bhyve process as observed via experiments with an Ubuntu guest and PyUSB code. Note that many of the cases processing other request types already checked for data == NULL. While in the neighborhood, fix a typo in the loop iterating over the usb_data_xfer_block array which used the wrong variable to check for valid data (idx vs. i). Reported by: danmcd@edgecast.io Obtained from: SmartOS MFC after: 1 week Relnotes: yes Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54661
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: emaste Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
since sd_lobase is 24 bits, we would need to shift 24 bits, not 16. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55178
debug: classified in
03-filenames_plain1 by 'stand/'
we check and reset loader_gdt_pa, but use FreePages(tss_pa). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55179
debug: classified in
03-filenames_plain1 by 'stand/'
loader_idt.rd_base is not set when we are attempting to bcopy(), resulting to data stored to page 0 and therefore corrupting it. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55180
debug: classified in
03-filenames_plain1 by 'stand/'
The status field also accepts onifconsole and onifexists, so it looks crusty saying that it only accepts on and off. Reviewed by: imp Closes: https://github.com/freebsd/freebsd-src/pull/2042
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: christos MFC after: 1 week Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Sponsored by: Defenso PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293130 Pull Request: https://github.com/freebsd/freebsd-src/pull/2043
debug: classified in
03-filenames_plain1 by
'libexec/'
I misremembered when I wrote this code: getline() returns -1 on EOF, not zero, so the loop condition and the error check are both incorrect (though in practice getline() will never return 0). MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=3cbdcabf714d ("ngctl: Modernize code somewhat") Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55487
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
As described in Serial ATA Revision 3.5a Reviewed by: mav Pull Request: https://github.com/freebsd/freebsd-src/pull/2044
debug: classified in
03-filenames_plain1 by 'sbin/'
The implementation was simply wrong. It would always just return the first entry in the iovec, even if the requested length is larger than that first entry. Note, this function will be removed soon, see D53468. Reported by: Vinod p n <vinod272@gmail.com> Reviewed by: des, emaste, Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org> MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55438
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
update_uefi_bootentry assumes that the caller sets FREEBSD_BOOTNAME and mntpt, which isn't the case anymore. The result is that there is no "FreeBSD" boot entry created/updated after install. Most machines manage to boot from the removable media path (if the loader is installed there too), but some don't. Take the loader's path as an argument and rename the variable used in the ZFS mirror loop so mntpt can be reused below. Also mark nentries as a local variable so it doesn't leak out of the function. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293385 Fixes: https://cgit.freebsd.org/src/commit/?id=494de51bc0074472d1b01604f085daea0844f240 MFC after: 2 days Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55469
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
* Check for integer overflow when receiving file sizes. * Check for buffer overflow when receiving file names, and fully validate the names. * Check for integer overflow when checking for available disk space. * Check for I/O errors when sending status codes. * Enforce one job per connection and one control file per job (see code comments for additional details). * Simplify readfile(), avoiding constructs vulnerable to integer overflow. * Don't delete files we didn't create. * Rename read_number() to read_minfree() since that's all it's used for, and move all the minfree logic into it. * Fix a few style issues. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293278 MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55399
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Set a 120-second receive timeout on all client connections, and add a command-line option to change that value. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55400
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Also fixes nexthop expire value on route get using netlink. Reviewed by: glebius MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D55444
debug: classified in
03-filenames_plain1 by 'sbin/'
Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D55514
debug: classified in
03-filenames_plain1 by 'sbin/'
Remove global uint64_t pool_guid and instead iterate over all pools that efizfs_get_zfsinfo_list() provides. The global pool_guid used to mark that we have constructed a ZFS pool and the pool label that was used for that was stored on a partition that is the EFI image device handle. First problem here is that it is too restrictive. If the very first device to probe is a spare member of a pool, it will be used to instantiate a pool but (pd->pd_handle == boot_img->DeviceHandle) won't be true, thus global pool_guid won't be populated and ZFS boot won't be tried. Second problem is that potentially we may find several pools, and all should be tried to boot. Note that the code for that is already here - efizfs_get_zfsinfo_list() is imported by efizfs.h but was not used until now. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55094
debug: classified in
03-filenames_plain1 by 'stand/'
The RELAXED boot policy will automatically search for any root filesystem (currently zfs only) on any device. STRICT policy only searches on the boot device. RELEAXED will still prefer the device we booted from, which is the smallest behavior change we should do. STRICT may be needed for releases, though. Sponsored by: Netflix Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D55107
debug: classified in
03-filenames_plain1 by 'stand/'
After ~13 years of running the ftp.at.freebsd.org community mirror is shutting down at the end of March. Remove it from the mirrorselect script. Reported by: Klaus P. Ohrhallinger <k@7he.at>
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
It's not at all clear why I wrote it like this, but we can do better. I wouldn't think this really has any meaningful security implications since the hierarchy in question can't really be modified by the guest scripts, but it would seem to make it a little more robust. Fixes: https://cgit.freebsd.org/src/commit/?id=6779d44bd878e3c ("bhyveload: use a dirfd to support -h") Reviewed by: bnovkov, markj Differential Revision: https://reviews.freebsd.org/D55379
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Move them to the usr.bin section. Fixes: https://cgit.freebsd.org/src/commit/?id=de5663609e4c ("This is the new crunch utility for making...")
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
% pfctl -F ethernet Ethernet rules cleared % pfctl -s ethernet pfctl: Unknown show modifier 'ethernet' pfctl accepts 'ethernet' (or any prefix of it) in the -F flag but accepts only 'ether' (or any prefix of it) in the -s flag, which seems inconsistent. This change brings the two to parity while remaining backwards compatible. Reviewed by: kp MFC after: 2 weeks Signed-off-by: Seth Hoffert <seth.hoffert@gmail.com>
debug: classified in
03-filenames_plain1 by 'sbin/'
Add check_iov_len() to check whether an iovec array covers a certain length without the need to call count_iov() on the whole array first. Garbage-collect the 'seek' argument to buf_to_iov(), used only by virtio-scsi control request handling. The apparent benefit of using it to copy only the final status byte instead of the whole TMF or AN request (25 and 21 bytes, respectively) is dubious at best, given that the extra code to handle this in buf_to_iov() allocates and frees a new iovec array and uses seek_iov(), which traverses the whole array and copies iovecs around. Replace seek_iov() and truncate_iov(), used only by virtio-scsi, with a single function split_iov() which combines the functionality of both in a more efficient way: While seek_iov() always copies all iovecs past the seek offset into a new iovec array, split_iov() works in place and doesn't copy iovecs unless actually necessary. By using split_iov(), we can avoid almost all copying of iovecs in I/O handling code paths of virtio-scsi. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53468
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
By preallocating all I/O requests on all queues, we can take most allocations out of the hot I/O code paths and simplify the code significantly. While here, make sure we check all allocations for success and make sure to handle failures gracefully. Additionally, check for I/O request validity as early as possible, and return illegal requests immediately. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53469
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Instead of blindly trusting the guest OS driver that it sends us well- formed LUN addresses, check the LUN address for validity and fail the request if it is invalid. While here, constify the members of the virtio requests which aren't device-writable anyway. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53470
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293582 Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'libexec/'
Add support for multi pref64 in rtadvd and rtadvctl Reviewed By: zlei, bz Differential Revision: https://reviews.freebsd.org/D54636
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
When matching on a name of a device, match on ACPI handles and PCI selectors in addition to device names. This can be useful for matching on devices without an attached driver. For example: devinfo -p pci0:0:31:0 Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55673
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
When dentry flag is ATTR_VOLUME because of 1 bit flip(from 0x10 to 0x18), removede function will delete all dentry from invalid dentry postion, so some normal dentries will be deleted in the same cluster.Unfortunately, these normal directories and files will not be visible to the user after wo do fsck_msdos Signed-off-by: YangWen <anmuxixixi@gmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1694
debug: classified in
03-filenames_plain1 by 'sbin/'
ZFS script runs different startup seqneces depending on where it runs: on the host (`zfs_start_main()`) or in a jail (`zfs_start_jail()`): - `zfs_start_main()` mounts ZFS datasets in verbose mode `zfs mount -va` - `zfs_start_jail()` mounts ZFS datasets silently `zfs mount -a`. This change aligns the verbose levels. NO_ISSUE Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2030
debug: classified in
03-filenames_plain1 by
'libexec/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276099 MFC after: 3 days Reported by: michaelo Co-authored-by: Alexander Ziaee <ziaee@FreeBSD.org>
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
They are all doing almost the same thing so it makes sense to have one common routine. The new routine supports non-regular files too. eg. # cxgbetool chnex0 loadfw <(fetch -qo - http://srv/t7fw.bin) MFC after: 1 week Sponsored by: Chelsio Communications Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D55747
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
These are non-standard and specific to the version used in loader. We have some desire to recognize symlinks to avoid filtering out kernel symlinks in the autodetection bits when they would be perfectly fine to `load`. This won't be usable right away, so any impending use will need to be careful to account for nil. Reported by: leres
debug: classified in
03-filenames_plain1 by
'libexec/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293654 Reviewed by: kevans Approved by: kevans Differential Revision: https://reviews.freebsd.org/D55713
debug: classified in
03-filenames_plain1 by 'stand/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55671
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
The new fetch_devs function fetches the entire list of PCI devices into a single list, retrying if the list changes while it is being fetched. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55768
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55769
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55772
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
This lists PCI devices in a hierarchy showing the parent/child relationship of PCI devices and bridges. While this is inspired by lspci -t output, the format is closer to ps -d and also prefers using new-bus device names when possible. If a device does not have a driver, the PCI selector is output in place of the device name. When the -v flag is given, the vendor and device ID strings are output after the device name. If a string for an ID isn't found, the hex ID values are output instead. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55774
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Jail name is optional, thus don't try setenv(NULL). Fixes: https://cgit.freebsd.org/src/commit/?id=d8f021add40c321c4578da55dae52fb93c7ccb5f
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
pcap-int.h now references SIZEOF_TIME_T from libpcap's config.h, which is not available to consumers of the internal header outside of the libpcap build. Switch to the public <pcap.h> header and replace the direct FILE* casts and ferror()/fflush() calls with pcap_dump_flush(3), which is the correct public API for flushing a pcap dump file. Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
libgeom: Fix segfault in 32-on-64 case We were using strtoul() to parse object identifiers, which are kernel pointers. This works fine as long as the kernel and userland match, but in a 32-bit libgeom on a 64-bit kernel this will return ULONG_MAX for all objects, resulting in memory corruption when we later pick the wrong object while resolving consumer-producer references. MFC after: 1 week PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292127 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54452
debug: classified in
04-filenames_plain2 by 'lib/'
libgeom: Clean up xml2tree code MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54453
debug: classified in
04-filenames_plain2 by 'lib/'
libgeom: Improve type safety of xml2tree code When resolving references, assert that the type of the object we find is what we expect. This will help prevent memory corruption if two objects of different types somehow end up with the same identifier. MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54454
debug: classified in
04-filenames_plain2 by 'lib/'
libgeom: Fix 32-bit gcc build MFC after: 1 week Fixes: https://cgit.freebsd.org/src/commit/?id=27894e20f140 ("libgeom: Fix segfault in 32-on-64 case")
debug: classified in
04-filenames_plain2 by 'lib/'
The previous fix introduced a regression on machines without the BMI1 instruction set extension. The TZCNT instruction used in this function behaves different on old machines when the source operand is zero, but the code was originally designed to never trigger this case. The bug fix caused this case to be possible, leading to a regression on sufficiently old hardware. Fix the code by messing with things such that the source operand is never zero. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291720 Fixes: https://cgit.freebsd.org/src/commit/?id=66eb78377bf109af1d9e25626bf254b4369436ec Tested by: cy Approved by: markj (mentor) Differential Revision: https://reviews.freebsd.org/D54303
debug: classified in
04-filenames_plain2 by 'lib/'
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
debug: classified in
03-filenames_plain1 by
'include/'
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
debug: classified in
05-summary-prefix by 'lib.*:'
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)
debug: classified in
04-filenames_plain2 by 'lib/'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766
debug: classified in
04-filenames_plain2 by 'lib/'
Similar to the same glibc function. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766
debug: classified in
05-summary-prefix by 'lib.*:'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766
debug: classified in
04-filenames_plain2 by 'lib/'
Currently, fetchTimeout works for non-SSL connections only, so does fetch -T. Fix it applying specified timeout to SSL_read(). MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'lib/'
MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'lib/'
The type of xdrproc_t is clearly defined in the comments as a function
with two arguments, an XDR * and a void * (sometimes spelled caddr_t).
It was initialy defined as:
typedef bool_t (*xdrproc_t)();
At some point people started giving it a non-empty argument list.
Unfortunatly, there has been widespread disagreement about how arguments
are passed. There seems to have been a widespread view that it should
be allowed to pass three argument function pointer to xdrproc_t. Most
notable is xdr_string which takes a maximum length parameter. This lead
to all sorts of prototypes (all of which have been present in the
FreeBSD source tree):
FreeBSD userspace (nominally from tirpc, but seemingly local):
typedef bool_t (*xdrproc_t)(XDR *, ...);
FreeBSD kernel, glibc:
typedef bool_t (*xdrproc_t)(XDR *, void *, ...);
rcp/xdr.h with _KERNEL defined (not used?):
typedef bool_t (*xdrproc_t)(XDR *, void *, u_int);
gssrpc (in krb5) and Linux kernel:
typedef bool_t (*xdrproc_t)(XDR *, void *);
For two argument functions on current ABIs, these all equivalent as
these arguments are passed in registers regardless of decleration and
definition, but we end up with two problems:
- xdr_free((xdrproc_t)xdr_string, ...) calls xdr_string with no third
argument and (at least on FreeBSD) may fail to free memory if the
string is shorter than the value lying around in the third argument
register. There are no instance of this in tree, but I found some
with Debian code search, in particular in OpenAFS.
- Under CheriABI, variadic arguments are passed in a separate,
bounded array so theses prototypes aren't equilvalent to the
non-variadic calling convention of the functions.
The reality is that that xdr_string should not be cast to xdrproc_t and
xdr_wrapstring should be used instead so we do not need to support this
case. Instances of the former behavior are now extremely rare.
With this change we bring FreeBSD in line with gssrpc and the Linux
Kernel. Warnings about casts should now be correct and should be fixed.
Bump __FreeBSD_version as some software required adaptation if it is
declaring functions to cast to xdrproc_t. Update OpenZFS's workaround
of this historic mess accordingly.
Effort: CHERI upstreaming
Sponsored by: Innovate UK
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D54824
debug: Commit manually moved from "unknown" to "libs".
Historically (and in a small amount of older software such as OpenAFS),
developers would attempt to free XDR strings with
xdr_free((xdrproc_t)xdr_string, &string)
This resulted in xdr_free calling xdr_string with only two intentional
arguments and whatever was left in the third argument register. If the
register held a sufficently small number, xdr_string would return FALSE
and not free the string (no one checks the return values).
Software should instead free strings with:
xdr_free((xdrproc_t)xdr_wrapstring, &string)
Because buggy software exists in the wild, act as though xdr_wrapstring
was used in the XDR_FREE case and plug these leaks.
Reviewed by: kib
MFC after: 3 days
Effort: CHERI upstreaming
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D54825
debug: Commit manually moved from "unknown" to "libs".
Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
05-summary-prefix by 'lib.*:'
Make pdwait(2) cancellable, same as all other wait*(2) syscalls wrappers. Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
05-summary-prefix by 'lib.*:'
debug: classified in
04-filenames_plain2 by 'lib/'
If execfd is set, the fexecve(2) is used by posix_spawn() instead of the provided path. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54862
debug: classified in
05-summary-prefix by 'lib.*:'
Reviewed by: asomers Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54879
debug: classified in
05-summary-prefix by 'lib.*:'
Reviewed by: asomers Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54879
debug: classified in
05-summary-prefix by 'lib.*:'
Sponsored by: Klara, Inc.
debug: classified in
04-filenames_plain2 by 'lib/'
This change fixes two NULL pointer dereferences caused by the __bt_first function. The first was caused by returning 0 (i.e., RET_SUCCESS) when a key was not found, causing the caller to dereference an uninitalized or NULL pointer. The second one was caused by an if statment clobbering a local variable with a function call result that might be NULL. Reported by: clang-tidy Sponsored by: Klara, Inc. Reviewed by: markj Obtained from: https://github.com/apple-oss-distributions/libc (partially) Differential Revision: https://reviews.freebsd.org/D54905
debug: classified in
04-filenames_plain2 by 'lib/'
If net is all-zero, the loop to extract all leading non-zero octets will iterate zero times and leave nn with the value 4, which the following switch statement to initialise qbuf does not handle. As a result, _dns_getnetbyaddr will look up the PTR record for this uninitialised string, which will leak the pre-existing contents of that stack memory to the DNS resolver and, if remote and not otherwise protected, network. Note that _dns_getnetbyaddr is only used if nsswitch.conf is configured to enable the "dns" source for the "networks" database, which is not the default configuration in FreeBSD. For glibc this same bug, in code also derived from BIND's, was issued CVE-2026-0915. This commit adopts the same behaviour as glibc's fix, which is to regard a net of 0 as being for 0.0.0.0. Apparently NetBSD will return NS_UNAVAIL instead, which may or may not make more sense, but in general glibc compatibility tends to cause less friction when there's not a good reason to avoid it. Reviewed by: markj (secteam) Fixes: https://cgit.freebsd.org/src/commit/?id=1363f04ce1b8 ("get* rework and new bind code") MFC after: 1 day Security: Same bug as glibc's CVE-2026-0915
debug: classified in
04-filenames_plain2 by 'lib/'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54898
debug: classified in
04-filenames_plain2 by 'lib/'
Do not allocate or switch to the custom stack on non-x86. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54898
debug: classified in
04-filenames_plain2 by 'lib/'
If no resolver configuration was found, we would fall back to INADDR_ANY and IN6ADDR_ANY. This made sense when it was first written thirty or forty years ago but not today, especially since connecting to INADDR_ANY or IN6ADDR_ANY is no longer supported. Switch to the loopback address and simplify the code. Note that (as the pre-existing comment in the code states) running without a resolver configuration is not really supported. Still, if we're going to have a hardcoded fallback, it might as well work. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291790 MFC after: 1 week Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55011
debug: classified in
04-filenames_plain2 by 'lib/'
Fix style nits (mostly whitespace issues) and clean up the manual page. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55024
debug: classified in
04-filenames_plain2 by 'lib/'
libc: Improve POSIX conformance of dirfd() POSIX states that dirfd() should set errno to EINVAL and return -1 if dirp does not refer to a valid directory stream. Our interpretation is that this applies if dirp is null or the file descriptor associated with it is negative. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55025
debug: classified in
04-filenames_plain2 by 'lib/'
libc: Fix missing include Although not needed on FreeBSD due to namespace pollution, we should technically #include <stddef.h> to secure a definition of NULL. Fixes: https://cgit.freebsd.org/src/commit/?id=5074d5c9845e ("libc: Improve POSIX conformance of dirfd()")
debug: classified in
04-filenames_plain2 by 'lib/'
Replace use of thr_getspecific/thr_setspecific to stash the function pointer we're smuggling between clnt_broadcast and rpc_wrap_bcast with a simple thread local variable. Clear it after use so the reference doesn't linger. In the relatively unlikely event clnt_broadcast was called from threads that exited prior to program termination, the previous code called free on a function pointer, which is undefined and might corrupted allocator state. Effort: CHERI upstreaming Reviewed by: glebius, jhb Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D54939
debug: classified in
04-filenames_plain2 by 'lib/'
The `eachresult` argument is documented to take a function pointer of
type:
bool_t (*)(caddr_t, struct sockaddr_in *)
It was declared to take a resultproc_t which has historically been
declared to be:
bool_t (*resultproc_t)(caddr_t, ...);
This overlapped well enough for currently supported ABIs where variadic
arguments are passed in registers, but this declaration is misaligned
with the documentation (resultproc_t takes three arguments) and will be
fixed in a followup commit.
Fix the type to be non-variadic, matching callbacks, and define a
convenience type of as most callbacks take something other than a char *
as their first argument and need to be cast.
Effort: CHERI upstreaming
Reviewed by: ngie, glebius, jhb
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D54940
debug: Commit manually moved from "unknown" to "libs".
It takes exactly three arguments of known type. Tweak the types of various resultproc_t functions to match the type (mostly added const to struct pointers) allowing us to drop casts. Effort: CHERI upstreaming Reviewed by: vangyzen, glebius Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D54941
debug: Commit manually moved from "unknown" to "libs".
This allows static binaries to only include the functions they reference. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54775
debug: classified in
04-filenames_plain2 by 'lib/'
On arm64 we can use the "dc zva" instruction to zero memory. The CPU tells software if the instruction is implemented, and if so the size and alignment it will use. When the size is 64-bytes the Arm Optimized Routines implementation of memset can use dc zva to zero memory, and has a build flag to skip checking. Use this flag to build a version of memset that will be used when this assumption is true. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54776
debug: classified in
04-filenames_plain2 by 'lib/'
* Adjust the comment to reflect the fact that SIGBUS can occur not only if the file is truncated, but also if an I/O error occurs while paging in any part of it. * Instead of setting a flag, just return EIO. * Adjust the unit test accordingly. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj, kevans Differential Revision: https://reviews.freebsd.org/D55108
debug: classified in
05-summary-prefix by 'lib.*:'
* Drop the ssl_meth member, there is no reason to hang on to it. * Replace deprecated SSLv23_client_method() with TLS_client_method(). * Check the return value from SSL_CTX_new(). MFC after: 1 week PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292903 Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55098
debug: classified in
04-filenames_plain2 by 'lib/'
GNU as does not accept bics with two register operands but instead requires three register operands. However, clang assembles the bics instruction to ands anyway, so just use ands directly. Reviewed by: fuz Differential Revision: https://reviews.freebsd.org/D55155
debug: classified in
04-filenames_plain2 by 'lib/'
These comments refer to a comment in div.c which doesn't exist anymore. Fixes: https://cgit.freebsd.org/src/commit/?id=7c7299df76e2 ("libc: Remove support for pre-C99 C standards") Sponsored by: Klara, Inc.
debug: classified in
04-filenames_plain2 by 'lib/'
Mainly rename numerator parameter of div(3) and ldiv(3) from num to numer, and explicitly specify what "numer", "denom", and "rem" mean in the manpages. MFC after: 3 days Obtained from: https://github.com/apple-oss-distributions/libc (partially) Sponsored by: Klara, Inc.
debug: classified in
04-filenames_plain2 by 'lib/'
The test passes consistently for 1000+ consecutive iterations. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260891 Reviewed by: oshogbo Approved by: lwhsu (mentor) Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55223
debug: classified in
04-filenames_plain2 by 'lib/'
snl atttribute parsers must be sorted by type, so PF_GS_BCOUNTERS (16) must follow PF_GF_PCOUNTERS (15). Fix ordering and add a call to SNL_VERIFY_PARSERS. Without this fix, byte counters reported by 'pfctl -s info' with a loginterface are always zero. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291763 MFC after: 1 week Reviewed by: kp Signed-off-by: eborisch@gmail.com
debug: classified in
04-filenames_plain2 by 'lib/'
List all currently defined parsers in 'all_parsers', and pass them to
SNL_VERIFY_PARSERS(). This will detect incorrect odering in parsers,
which will help us detect otherwise subtle bugs.
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
04-filenames_plain2 by 'lib/'
This avoids a dependency on the abort symbol in libsys. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292539 Reviewed by: mmel Approved by: markj (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55255
debug: classified in
04-filenames_plain2 by 'lib/'
MFC After: 2 days Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55291
debug: classified in
04-filenames_plain2 by 'lib/'
The transfer proxy callbacks (bulk/interrupt, control, isochronous) only called libusb10_submit_transfer_sub() in the START path to pipeline the second kernel transfer slot. On completion or error, no attempt was made to dequeue the next pending transfer from tr_head onto the now-free slot. When more than two async transfers were submitted on the same endpoint, the third (and subsequent) transfers would remain stuck on tr_head indefinitely, since no completion ever triggered their submission. This caused a protocol-level deadlock in applications like adb that submit header + payload + zero-length terminator as three separate bulk transfers in sequence. Fix by calling libusb10_submit_transfer_sub() after every libusb10_complete_transfer() in all three proxy callbacks. MFC After: 2 weeks Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55289
debug: classified in
04-filenames_plain2 by 'lib/'
Noted and reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55327
debug: classified in
04-filenames_plain2 by 'lib/'
Include sys/types.h by exterr.h, since size_t is used. Drop include of sys/exterr_cat.h, it is useless for the only prototype provided. Reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55337
debug: classified in
05-summary-prefix by 'lib.*:'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293124 MFC after: 1 week Fixes: https://cgit.freebsd.org/src/commit/?id=792ef1ae7b94 ("Refactor fetch_connect() and fetch_bind() to improve readability and avoid repeating the same DNS lookups.") Reverts: 8f8a7f6fffd7 ("libfetch: apply timeout to SSL_read()") Reviewed by: eugen, imp Differential Revision: https://reviews.freebsd.org/D55293
debug: classified in
04-filenames_plain2 by 'lib/'
I'd missed that stddef.h is standalone and isn't a copy of sys/stddef.h in my initial merge. Effort: CHERI upstreaming Reviewed by: kib Sponsored by: Innovate UK Fixes: https://cgit.freebsd.org/src/commit/?id=dca634d1544b ("new type: ptraddr_t") Differential Revision: https://reviews.freebsd.org/D55305
debug: classified in
03-filenames_plain1 by
'include/'
stddef.h: centralize definition of offsetof() Move to sys/_offsetof.h and use __builtin_offsetof() instead of __offsetof to avoid reintroducing sys/cdefs.h polution in stddef.h. This has the side effect of allowing sys/stddef.h to be included after stddef.h which can happen in compatability headers. Effort: CHERI upstreaming Sponsored by: DARPA, AFRL Reviewed by: imp, kib Differential Revision: https://reviews.freebsd.org/D55307
debug: classified in
05-summary-prefix by
'stddef.h:'
types.h: use central definition of offsetof() Previously this broke if included after (sys/)stddef.h. Reported by: des Fixes: https://cgit.freebsd.org/src/commit/?id=2adc3f0db187 ("stddef.h: centralize definition of offsetof()")
debug: classified in
04-filenames_plain2 by 'sys/'
debug: moved to libs because
'Need to be grouped with
2adc3f0db1877dbe9801e6dacfa9ae8df8879549'
These compile-time assert macros are similar to `Static_assert` on FreeBSD. These macros are in use in newer versions of `contrib/netbsd-tests`. Obtained from: https://github.com/NetBSD/src (c26cc77b3a0b26b95a2) MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'lib/'
libfetch: Clean up fetch_info usage * Provide a wrapper for the common if (verbose) fetch_info(...) idiom. * Replace remaining instances of fprintf(stderr, ...) with fetch_info(). * Fix a few style nits. MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55405
debug: classified in
04-filenames_plain2 by 'lib/'
libfetch: Fail hard if interrupted while connecting This fixes an issue where the first address that DNS returns is blocked by a packet filter, so we hang for a while, then the user hits Ctrl-C, interrupting connect(2), whereupon we move on to the next address, get a connection, request the file, and return to fetch(1), which sees that SIGINT was caught and bails. Note that we make no attempt to enforce fetchTimeout in the connection phase, and never have. It's feasible, but non-trivial, so we'll leave it as an exercise for future us. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293312 MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55406
debug: classified in
04-filenames_plain2 by 'lib/'
libfetch: Gracefully skip unsupported protocols If socket() fails because the address family or protocol is unsupported, just continue with the next address. MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55407
debug: classified in
04-filenames_plain2 by 'lib/'
No need to have 4 separate manpages for these functions. Use opportunity to change parameter names in the source from j -> i to reflect the name used in POSIX. (The ISO C standard uses j but i is a better name anyway.) Reviewed by: des, rpokala Approved by: rpokala Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55361
debug: classified in
04-filenames_plain2 by 'lib/'
As written, we'll repeatedly jps_free() the first element, which is obviously bogus. Fix it to index appropriately. Fixes: https://cgit.freebsd.org/src/commit/?id=db3b39f063d9f ("libjail: extend struct handlers [...]")
debug: classified in
04-filenames_plain2 by 'lib/'
POSIX.1-2024 states that the 'free' function "shall not modify errno if ptr is a null pointer or a pointer previously returned as if by malloc() and not yet deallocated". However this is a fairly recent addition and non-compliant allocators might still clobber 'errno', causing 'mpool_get' to return the wrong error code. Fix this by saving and restoring 'errno' after calling 'free'. Sponsored by: Klara, Inc. Reviewed by: obiwac Differential Revision: https://reviews.freebsd.org/D55463 MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'lib/'
Ignore SIGINT and SIGQUIT and block SIGCHLD, as POSIX requires. To deal with the concurrency problem described in POSIX, we keep track of the count of concurrent invocations. We ignore and block signals only when the counter was zero before we incremented it, and restore them only when the counter reaches zero after we decrement it. Note that this does not address the issue of thread cancellation. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: bnovkov, sef, kevans Differential Revision: https://reviews.freebsd.org/D55471
debug: classified in
04-filenames_plain2 by 'lib/'
Our manual page states that if given a null pointer, system() returns non-zero if the shell is available and zero if it is not. This is consistent with the C standard's description of system(), but it is not what we actually do. What we actually do is always return non-zero, as required by POSIX. As the POSIX rationale explains, implementing the logic required by the C standard does not violate POSIX, since a conforming system always has a shell, therefore the logic will always return non-zero. Since our libc is commonly used in non-conforming situations such as chroots or thin jails, we should implement the full logic required by the C standard. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: obiwac, bnovkov, kevans Differential Revision: https://reviews.freebsd.org/D55484
debug: classified in
04-filenames_plain2 by 'lib/'
- `math.h`: `isinff(..)` - `sys/time.h`: `timespec*(x)` These two headers are used by tests in newer snapshots of `contrib/netbsd-tests`. MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'lib/'
When kernel external errors are available they are included in the err(3) library function messages. In addition to the extended error itself, the kernel also tracks the kernel file and line number at which the error was generated. This additional information is not included in the err(3) messages unless the EXTERROR_VERBOSE environment variable is present. Currently, when EXTERROR_VERBOSE is present, all the internal extended error information associated with the error is printed most of which is redundant with the formatted error message printed by err(3). This change will add only the kernel file and line number to the err(3) message when EXTERROR_VERBOSE is present and set to "brief". Sample output with bad protection bits to mmap: guest_16 % ./Example bigfile Example: mmap bigfile: Invalid argument (unknown PROT bits 0x8) guest_16 % setenv EXTERROR_VERBOSE guest_16 % ./Example bigfile Example: mmap bigfile: Invalid argument (unknown PROT bits 0x8 errno 22 category 1 (src sys/vm/vm_mmap.c:200) p1 0x8 p2 0) guest_16 % setenv EXTERROR_VERBOSE brief guest_16 % ./Example bigfile Example: mmap bigfile: Invalid argument (unknown PROT bits 0x8 (src sys/vm/vm_mmap.c:200)) Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55494 MFC-after: 1 week Sponsored-by: Netflix
debug: classified in
04-filenames_plain2 by 'lib/'
These macros are used by some of the NetBSD tests which calculate the size of types, e.g., `__type_max(time_t)`. This wraps up the set of macros needed in order to update to the a netbsd-tests snapshot from this past month. Obtained from: https://github.com/netbsd/src (55b4b44) MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'lib/'
MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=6378393308bc ("Add an internal libiscsiutil library.") Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55596
debug: classified in
05-summary-prefix by 'lib.*:'
These were obtained from IBM specs and actual tapes/drives.
Standard LTO-10 cartriges hold 30TB raw, 75TB with 2.5:1 compression.
Premium LTO-10 cartridges hold 40TB raw, 100TB with 2.5:1 compression.
LTO-10 tape drives are not backward compatible with previous generation
LTO tapes. (This is a change from older generation drives.)
Since the Premium tape is a new thing for LTO, we'll call this density
code LTO-10P vs. the standard LTO-10. The barcode identifier for LTO-10
tapes is "LA"; the barcode identifier for LTO-10P tapes is "PA".
LTO-10 cartridges contain 1035m of tape, while LTO-10 Premium
cartridges contain 1337m of tape and have slightly higher density.
(Obtained from MAM data on actual tape cartridges and the density
report, obtained via 'mt getdensity'.) LTO-10 cartridges use a
polyethylene naphthalate (PEN) film substrate. LTO-10 Premium
cartridges use an Aramid (aromatic polyamide) substrate that is thinner
and stronger, allowing a longer tape to fit in the same cartridge form
factor.
usr.bin/mt/mt.1:
Add density codes and specs for LTO-10 and LTO-10P.
lib/libmt/mtlib.c:
Add density codes for LTO-10 and LTO-10P.
Sponsored by: Spectra Logic
MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'lib/'
INT_MAX is already larger than a reasonable hostname might be, but size_t makes some of this easier to reason about as we do arithmetic with it. This would maybe not be worth it if we had to bump the soversion because of it, but libutil does symbol versioning now so we can provide a compat shim. While we're here, fix some inconsistencies in argument names in the manpage. Reviewed by: des Obtained from: https://github.com/apple-oss-distributions/libutil Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54622
debug: classified in
04-filenames_plain2 by 'lib/'
memchr(3) will happily believe we've passed in a valid object, but hostsize could easily exceed the bounds of fullhost. Clamp it down to the string size to be safe and avoid UB. This plugs a potential overread noted in the compat shim that was just added. Reviewed by: des Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54623
debug: classified in
04-filenames_plain2 by 'lib/'
There is no need to call execl(), which will allocate an array and copy our arguments into it, when we can use a static array and call execve() directly. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55648
debug: classified in
04-filenames_plain2 by 'lib/'
Remove a bunch of complexity at the cost of 4 bytes of storage per thread. Reviewed by: jhb Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D55310
debug: classified in
04-filenames_plain2 by 'lib/'
The alloca() interface has been a macro expanding to __builtin_alloca() since 2003 (commit 79806b4cdce0, included in FreeBSD 5.2). Even before that virtually every compiler version I was able to test replaced alloca() with compiler generated code when targeting C. Hide it to prevent future (mis)use. Reviewed by: imp, kib Differential Revision: https://reviews.freebsd.org/D51858
debug: classified in
04-filenames_plain2 by 'lib/'
lld doesn't notice, but ld.bfd complains. Reviewed by: brooks Differential Revision: https://reviews.freebsd.org/D55657
debug: classified in
04-filenames_plain2 by 'lib/'
This more closely mirrors libc/quad/Makefile.inc and is easier to read. Reviewed by: brooks Differential Revision: https://reviews.freebsd.org/D55658
debug: classified in
04-filenames_plain2 by 'lib/'
Without this lib32 libc.so.7 would be missing critical symbols, including malloc / free and all syscall wrappers.
debug: classified in
04-filenames_plain2 by 'lib/'
The thread_local variable may creates another thread_local variable inside its dtor. This new object is immediately be registered in __cxa_thread_atexit() and need to be freed before processing another variable. This fixes the libcxx test thread_local_destruction_order.pass.cpp. Reported by: kib Approved by: lwhsu (mentor) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55826
debug: classified in
04-filenames_plain2 by 'lib/'
Changes: https://raw.githubusercontent.com/the-tcpdump-group/libpcap/89e982c37c36ad0bf9f10b7ded421cb42422effa/CHANGES Reviewed by: bms, emaste Obtained from: https://www.tcpdump.org/release/libpcap-1.10.6.tar.gz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55545 Differential Revision: https://reviews.freebsd.org/D55858
debug: classified in
05-summary-prefix by 'lib.*:'
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
debug: classified in
03-filenames_plain1 by
'sys/fs/'
MFC After: 1 week Signed-off-by: CismonX <admin@cismon.net> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1470
debug: classified in
03-filenames_plain1 by
'sys/fs/'
nfscl: Fix handling of case insensitive file systems Name caching must be handled somewhat differently for case insensitive file systems. Negative name caching does not work and, for rename, all names associated with the rename'd vnode must be disabled. For a case insensitive ZFS file system that is exported, the unpatched code did work, since the change in mtime or ctime of the directory when other case names were created or rename'd would disable the false name cache hit. However, an export of an msdosfs file system breaks the NFS client, because it only works if ctime/mtime is changed whenever a name is added/removed. Depending on what the server file system is, this may not happen, due to clock resolution or lack of support for these attributes. This patch checks to see if the server file system is case insensitive and modifies the name caching to handle this. There is still a problem if a case insensitive file system is a subtree of a non-case insensitive is exported by the NFSv4 server. This can be fixed someday, when the NFSv4 client gets support for submounts within the mount. Suggested by: kib MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by
'sys/fs/'
nfscl: Fix the build Fixes: https://cgit.freebsd.org/src/commit/?id=f2155a6fb568 ("nfscl: Fix handling of case insensitive file systems")
debug: classified in
03-filenames_plain1 by
'sys/fs/'
libfuse clients may pass the "-o auto_unmount" flag to ensure that the mountpoint will get unmounted even if the server terminate abnormally. Without this flag sending KILL to a FUSE daemon leaves its mountpoint mounted. Approved by: asomers Differential Revision: https://reviews.freebsd.org/D53086
debug: classified in
05-summary-prefix by 'fusefs:'
The lock around dev_clone is unfortunate because cloner might need to take its own locks that establish the order with devfs vnodes, and then transiently participates in further VFS locks order. For instance, this way the proctree_lock or allproc_lock become involved. Unlock dvp, we can unwind if the vnode become doomed while cloner was called. Reported and tested by: pho Reviewed by: kevans, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55028
debug: classified in
03-filenames_plain1 by
'sys/fs/'
Signed-off-by: Pat Maddox <pat@patmaddox.com> Reviewed by: kevans MFC after: 1 week Closes: https://github.com/freebsd/freebsd-src/pull/1975
debug: classified in
05-summary-prefix by 'bectl:'
Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D55164
debug: classified in
03-filenames_plain1 by
'sys/fs/'
This lock was included in the original GSoC submission. Its purpose seems to have been to prevent concurrent FUSE_RENAME operations for the current mountpoint, as well as to synchronize FUSE_RENAME with fuse_vnode_setparent. But it's obsolete, now that ef6ea91593e added mnt_renamelock . MFC after: 2 weeks Sponsored by: ConnectWise Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55231
debug: classified in
03-filenames_plain1 by
'sys/fs/'
nullfs_unlink_lowervp() is called with the lower vnode locked, so the nullfs vnode is locked too. The following can occur: 1. the vunref() call decrements the usecount 2->1, 2. a different thread calls vrele() on the vnode, decrements the usecount 0->1, then blocks on the vnode lock, 3. the first thread tests vp->v_usecount == 0 and observes that it is true, 4. the first thread incorrectly unlocks the lower vnode. Fix this by testing VN_IS_DOOMED directly. Since nullfs_unlink_lowervp() holds the vnode lock, the value of the VIRF_DOOMED flag is stable. Thanks to leres@ for patiently helping to track this down. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=288345 MFC after: 1 week Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55446
debug: classified in
03-filenames_plain1 by
'sys/fs/'
If the initial no-wait vn_start_write fails, we pass the old PCATCH flag to the following sleepable vn_start_write. Following a75d1ddd74, that flag should be V_PCATCH. Sponsored by: Dell Inc. Differential Revision: https://reviews.freebsd.org/D55512
debug: classified in
03-filenames_plain1 by
'sys/ufs/'
Reviewed by: rmacklem Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55595
debug: classified in
03-filenames_plain1 by
'sys/fs/'
When an NFSv4.1/4.2 sarver upgrades a read delegation to a write delegation, it does not need to change the delegation's stateid. Without this patch, a DELEGRETURN of the stateid was done for the case where the delegation stateid had not changed. This return was bogus, since the delegation stateid now represents the new write delegation. This patch fixes the priblem by checking for "same stateid" and only doing the DELEGRETURN when it is not the same. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289711 Tested by: Peter Much <pmc@citylink.dinoex_sub.org> MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by
'sys/fs/'
If the vnode is share-locked: - Use vn_delayed_setsize() to avoid calling vnode_pager_setsize() with the vnode only shared locked. - Interlock the vnode to get exclusive mode for updating the node fields. Reciprocally, interlock the vnode in p9fs_getattr_dotl() to observe the consistent values on read. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293492 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55665
debug: classified in
03-filenames_plain1 by
'sys/fs/'
This should prevent seeing inconsistent flags values when updating it under the shared vnode lock. Noted and reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55665
debug: classified in
03-filenames_plain1 by
'sys/fs/'
fusefs: redo vnode attribute locking Previously most fields in fuse_vnode_data were protected by the vnode lock. But because DEBUG_VFS_LOCKS was never enabled by default until stable/15 the assertions were never checked, and many were wrong. Others were missing. This led to panics in stable/15 and 16.0-CURRENT, when a vnode was expected to be exclusively locked but wasn't, for fuse file systems that mount with "-o async". In some places it isn't possible to exclusively lock the vnode when accessing these fields. So protect them with a new mutex instead. This fixes panics and unprotected field accesses in VOP_READ, VOP_COPY_FILE_RANGE, VOP_GETATTR, VOP_BMAP, and FUSE_NOTIFY_INVAL_ENTRY. Add assertions everywhere the protected fields are accessed. Lock the vnode exclusively when handling FUSE_NOTIFY_INVAL_INODE. During fuse_vnode_setsize, if the vnode isn't already exclusively locked, use the vn_delayed_setsize mechanism. This fixes panics during VOP_READ or VOP_GETATTR. Also, ensure that fuse_vnop_rename locks the "from" vnode. Finally, reorder elements in struct fuse_vnode_data to reduce the structure size. Fixes: https://cgit.freebsd.org/src/commit/?id=283391 Reported by: kargl, markj, vishwin, Abdelkader Boudih, groenveld@acm.org MFC after: 2 weeks Sponsored by: ConnectWise Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55230
debug: classified in
03-filenames_plain1 by
'sys/fs/'
tests/fusefs: fix sign-compare warning on armv7 Fixes: https://cgit.freebsd.org/src/commit/?id=7e68af7ce2c1b892954df415774fe59fd2f1b62f Reviewed by: asomers Approved by: emaste (mentor) Differential Revision: https://reviews.freebsd.org/D55846
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: moved to filesystems
because 'Need to be grouped with
7e68af7ce2c1b892954df415774fe59fd2f1b62f'
zfs: merge openzfs/zfs@f8e5af53e
Notable upstream pull request merges:
#17358 4975430cf Add vdev property to disable vdev scheduler
#18031 c77f17b75 Add snapshots_changed_nsecs dataset property
#18080 dbb3f247e cmd/zfs: clone: accept `-u` to not mount newly created
datasets
#18089 -multiple Zstd: Update bundled library to version 1.5.7
#18091 2301755df Fix zfs_open() to skip zil_async_to_sync() for the
snapshot
#18093 -multiple L2ARC: Rework write throttling with DWPD rate limiting
and parallel writes
#18095 2dbd6af5e Rename several printf attributes declarations to
__printf__
#18096 8605bdfdd FreeBSD: unbreak compilation on i386
#18105 794f1587d When receiving a stream with the large block flag,
activate feature
#18115 765929cb4 DDT: Add locking for table ZAP destruction
#18118 09e4e01e9 Fix history logging for `zpool create -t`
#18119 2f1f25217 icp: emit .note.GNU-stack section for all ELF targets
#18131 3fffe4e70 Fix --enable-invariants on FreeBSD
#18133 d2f5cb3a5 Move range_tree, btree, highbit64 to common code
#18136 54b141fab FreeBSD: Remove references to DEBUG_VFS_LOCKS
#18138 cdf89f413 Flush RRD only when TXGs contain data
#18139 a157ef62a Make sure we can still write data to txg
#18140 cd895f0e5 remove thread unsafe debug code causing FreeBSD double
free panic
#18144 4f180e095 Fix activating large_microzap on receive
#18146 35b2d3970 Lock db_mtx around arc_release() in couple places
#18154 b36472052 nvpair: chase FreeBSD xdrproc_t definition
#18160 21bbe7cb6 Improve caching for dbuf prefetches
#18177 -multiple Multihost Improvements
#18179 2646bd558 Allow rewrite skip cloned and snapshotted blocks
#18180 aa29455dd Restrict cloning with different properties
#18184 040ba7a7c libzfs: improve error message for zpool create with
ENXIO
#18188 1412bdc6c zfs_vnops_os.c: Move a vput() to after
zfs_setattr_dir()
#18198 cc184fe98 Fix `send:raw` permission for send `-w -I`
#18208 ba970eb20 Cleanup allocation class selection
#18212 0f9564e85 Simplify dnode_level_is_l2cacheable()
#18214 370570890 Remove parent ZIO from dbuf_prefetch()
#18218 bfb276e55 freebsd: Fix TIMESPEC_OVERFLOW for PowerPC
#18222 d06a1d9ac Fix available space accounting for special/dedup
#18225 d48967728 ICP: AES-GCM VAES-AVX2: fix typos and document
source files
#18226 c8a72a27e ICP: AES-GCM assembly: remove unused Gmul functions
#18230 -multiple Fix zdb --key crash for unencrypted datasets, and
teach tests to understand this better
#18233 -multiple icp: add SHA-512 implementation using Intel SHA512
extension
#18245 991fc56fa Introduce dedupused/dedupsaved pool properties
#18251 6a717f31e Improve misleading error messages for
ZPOOL_STATUS_CORRUPT_POOL
#18254 7744f0496 SIMD: libspl: test the correct CPUID bit for AVX512VL
#18255 6495dafd5 range_tree: use zfs_panic_recover() for
partial-overlap remov
#18256 3408332d7 zhack: Fix importing large allocation profiles on
small pools
#18258 f8457fbdc Fix deadlock on dmu_tx_assign() from vdev_rebuild()
#18263 f8e5af53e Fix redundant declaration of dsl_pool_t
Obtained from: OpenZFS
OpenZFS commit: f8e5af53e92fa7c03393fbd4922cb9c1d0c15920
debug: classified in
05-summary-prefix by 'zfs:'
Unbreak LINT after ZFS import Fixes: https://cgit.freebsd.org/src/commit/?id=8a62a2a5659d ("zfs: merge openzfs/zfs@https://cgit.freebsd.org/src/commit/?id=f8e5af53e")
debug: classified in
04-filenames_plain2 by 'sys/'
zfs: Fix build after merge of openzfs/zfs@f8e5af53e The change causing it is the introduction of the test over __BMI2__ in 'module/zstd/lib/common/bitstream.h'. This is a stop-gap commit whose content needs to be upstreamed (after possibly having been improved). Fixes: https://cgit.freebsd.org/src/commit/?id=8a62a2a5659d ("zfs: merge openzfs/zfs@https://cgit.freebsd.org/src/commit/?id=f8e5af53e") Sponsored by: The FreeBSD Foundation
debug: classified in
02-filenames_wildcards by
'.*Makefile'
debug: moved to filesystems
because 'Need to be grouped with
8a62a2a5659d1839d8799b4274c04469d7f17c78'
ZSTD_resetDStream() is deprecated since 1.5.4: https://github.com/facebook/zstd/commit/5d8cfa6b96a6442ab1251f9de3b47a0eb12561a0 This change is needed to MFV zstd 1.5.7. Approved by: emaste (mentor) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55835
debug: classified in
03-filenames_plain1 by
'sys/fs/'
Kernel stuff (other than networking, filesystems, and drivers).
In kstrto*(), don't assign to *res until we know the conversion is successful, and address issues that may result in warnings if code that uses <linux/kstrtox.h> is compiled at high warning levels. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: bz, emaste Differential Revision: https://reviews.freebsd.org/D54440
debug: classified in
04-filenames_plain2 by 'sys/'
Implement the exact same logic as in Linux: * Accept 'e', 't', 'y', '1', "on" for true. * Accept 'd', 'f', 'n', '0', "of" for false. * Disregard any characters beyond that. * Check that the string is not null, but don't check the result pointer. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: bz, emaste Differential Revision: https://reviews.freebsd.org/D54451
debug: classified in
04-filenames_plain2 by 'sys/'
Some minor comment cleanup, add a comment about an unused value, etc. No functional change. Sponsored by: Netflix
debug: classified in
04-filenames_plain2 by 'sys/'
This will be useful in the upcoming implementation of `hex_dump_to_buffer()` which doesn't add one. Reviewed by: bz, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51844
debug: classified in
04-filenames_plain2 by 'sys/'
This function prints a single line of hex dump to the given line buffer. The implementation relies on `lkpi_hex_dump()` to format the string. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51559
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D54459
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
03-filenames_plain1 by
'sys/x86/'
debug: moved to kernel because
'Need to be grouped with
f224591746bdaf14ad5f63de4738a3146cc2f55f'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: Commit manually moved from "unknown" to "kernel".
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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)
debug: classified in
04-filenames_plain2 by 'sys/'
MFC After: 1 week Reviewed by: imp, kib Pull Request: https://github.com/freebsd/freebsd-src/pull/1934
debug: classified in
04-filenames_plain2 by 'sys/'
Signed-off-by: mothcompute <mothcompute@protonmail.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1949
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
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
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54609
debug: classified in
04-filenames_plain2 by 'sys/'
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1910
debug: classified in
04-filenames_plain2 by 'sys/'
On amd64, a hack sets td_critnest to 1 in hammer_time(), and then clear it before returning from hammer_time(), which is too early. Instead, set TDP_NOFAULTING for thread0, and clear the flag after vm_init() finished. Noted by: adrian Reviewed by: adrian (previous version), markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54768
debug: classified in
04-filenames_plain2 by 'sys/'
uint64_t is 4-byte aligned on i386, but is 8-bytes aligned on all other 32bit arches FreeBSD supports. Provide the freebsd32_uint64_t type and the FU64_CP() macro, which are intended to be used where 32bit ABI uses (u)int64_t type, and do proper layout and copying for the aggregate type. Reviewed by: des, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54663
debug: classified in
04-filenames_plain2 by 'sys/'
Do not cast and then access potentially unaligned uint64_t in the BT_CP() macro. Use freebsd32_uint64_t type and FU64_CP() for the frac member. Noted by: des Reviewed by: des, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54663
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: factor out rate logic for mandatory channels I was looking at rate work for another problem and found more flags in ath9k (which we will likely never need). The documentation then revealed the "mandatory" flags as well and with discussions about cfg80211 going on I decided to use the momentum and split our "supp_rates" setup between lkpi_lsta_alloc() and wiphy_register(). There should be no functional change. While there also initialize max_rc_amsdu_len. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: fix build for non-debug kernels lkpi_nl80211_band_name() is only available under LINUXKPI_DEBUG_80211. IMPROVE in theory should be as well or defined to nothing but we cannot do that in cfg80211.h mac80211.h where we possibly (re-)define this. Put an #ifdef around the IMPROVE call for now (untested). Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=768332d61948 Reported by: CI
debug: classified in
04-filenames_plain2 by 'sys/'
The p_ktrioparms are freed on termination of tracing. Any ktr requests added to the queue after that would hang there and leak on the struct proc recycling, or trigger an assert in the process destructor for debug builds. Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54804
debug: classified in
04-filenames_plain2 by 'sys/'
This fixes the build on CHERI architectures where the compiler warns about a direct cast between uint64_t and const void * inside of __DECONST. However, GCC would also complain about this on 32-bit kernels due to uint64_t not being the same size as a pointer. Also, a direct cast to uintptr_t to right-size the cookie value is more direct than using __DECONST given that there is no "const" pointer involved in the expression. Reviewed by: brooks, glebius Obtained from: CheriBSD Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54797
debug: classified in
04-filenames_plain2 by 'sys/'
Management MIC element (MME) can have 8 or 16 octets MIC. Add a second structure used by at least iwlwifi and update reference to latest standard version. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: add new field to struct cfg80211_bitrate_mask rtw89(4) accesses eht_mcs[]. Add the field to struct cfg80211_bitrate_mask. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: rename enum ieee80211_tx_rate_flags and move file What we used to call enum ieee80211_tx_rate_flags is now used as enum mac80211_rate_control_flags for the ieee80211_tx_rate.flags in rtw89(4). Rename the enum and move it to mac80211 as it seems to belong there. Sponsonred by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: skbuff: implement skb_queue_splice() Add skb_queue_splice() and use it in skb_queue_splice_init() which already had that functionality (plus the init bit). The new function is used by rtw89(4). Sponosred by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: set extra tx info flag for EAPOL for mt76 mt76 requires IEEE80211_TX_CTL_USE_MINRATE to be set for EAPOL, so add it. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: make sure we are scheduled before wake_tx_queue() If we are not scheduled before calling wake_tx_queue() packets may never go out, which at first will look like EAPOL fails (as wpa_supplicant suggest possibly with a wrong key). Using monitor mode it will be clear what is going on. Pass a flag down to wake_tx_queue() to call ieee80211_schedule_txq() in case (*wake_tx_queue)() is supported or not, which solves the problem for the lkpi_80211_txq_tx_one() which was failing. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: catch possible NULL pointer deref with mt76 With mt76 we, for the first time, see that txstat->skb or txstat->info may not be filled in linuxkpi_ieee80211_tx_status_ext(). Guard for these cases checking for skb and info to be not NULL and assume a TX failure in case info is NULL. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: expand dma_sync_single_for_cpu() in lkpi_dma_unmap() In case lkpi_dma_unmap() would call dma_sync_single_for_cpu() we get into a lock recursion which will trigger a panic with debug kernels. It would be hard to provide an internal "locked" version for dma_sync_single_for_cpu(). In the old days this would not have been a problem but (long before we added the missing sync calls) some locks got folded into one in a6619e8d9c1a3. Sponsored by: The FreeBSD Foundation MFC after: 3 days Observed with: iwlwifi mld Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D54841
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: pci: make sure a tailq and lock are initialized Move the initializations of the tailq and lock from linux_pci_attach_device() into lkpifill_pci_dev() so that they are initialized in all cases we create a device (see all the possible callers of lkpifill_pci_dev()). Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste, dumbbell Differential Revision: https://reviews.freebsd.org/D54861
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: move MODULE_DEVICE_TABLE from pci.h to module.h Move the MODULE_DEVICE_TABLE macro to module.h where it belongs in preparation for different bus (e.g., USB, SDIO) support. The various struct <bus>_device_id, if not elsewhere, should be defined in mod_devicetable.h. This is the next step after 2f5666c1727c. No functional changes. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste, dumbbell Differential Revision: https://reviews.freebsd.org/D54900
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: mod_devicetable, add comment about [future] LinuxKPI USB USB structures are defined with the native USB implementation. Just leave a comment why they are not here. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D54991
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: add scoped_guard(), spinlock guard support The "cleanup.h" implementation got a bit more complicated. For one we now use a macro to concatenate a prefix, the name, and a suffix for variable and function declarations. This was triggered by the fact that the "guard_" prefix we used was confusing. We now use a generic "cleanup_" which is only encoded in the single place rather than all over the file. As already indicated by the comment the DEFINE_LOCK_GUARD_0() macro got split up and a _1 version which also takes a type got implemented and is used for a spinlock variant used by rtw89(4) via the new scoped_guard() bits. Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54808
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: adjust assoc check before key deletion There is a discrepancy between the vif assoc state and the sta state (see comment in lkpi_sta_run_to_init()). Adjust the check in lkpi_iv_key_delete() and add it to lkpi_sta_del_keys() so that we can take way the keys after whatever comes first: the sta went away from AUTHORIZED (RUN) or if the vif is no longer marked assoc. This is needed as we may only take the sta down partially back to State 2 (cf. 802.11-2024, Figure 11-23) and key material is no longer valid before the vif gets cleaned up and the sta is removed entirely. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: improve crypto debug logging Add a log entry to lkpi_ieee80211_iterate_keys() in order to be able to determine if there are still keys available when a driver calls into this (e.g., iwlwifi does before removing the sta to make sure the keys are gone). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: fold the sta state machine again In and around d9f59799fc3e7 we adjusted the initial sta state machine implementation and unfolded some functions, duplicating code. This version tries to undo some of that as it seems that we can get away with doing it more cleanly these days. There are 5 main functions for the path from INIT to RUN (UP1,2,3.1,3.2,4) and 4 main functions for the path from RUN to INIT (DOWN1,2,3,4). The reason there is one more on the patch up is that we can go directly from AUTH to RUN without going through ASSOC first. In addition there are further functions relying only on these 9 base state change functions in order to implement the remaining possible state transitions net80211 can do (without CSA and SLEEP). Another change is that we no longer take a sta always through INIT/SCAN first and then back up to AUTH, that is, we are no longer deleting the sta from the firmware unless net80211 would also take us down to that state and in a follow-up back up. This is a preparation for another fix to come in order to import a newer version of iwlwifi (v6.19). I have run a few days of mlme_assoc (see tools) and some other basic regression tests. The only thing I managed was to deadlock net80211 for other reasons (ieee80211_waitfor_parent()). But this will need excessive user testing as the various options which may have an effect on the subtle details are great as we learnt in the past years. Sponsored by: The FreeBSD Foundation MFC after: 5 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: move linuxkpi_ieee80211_handle_wake_tx_queue() No functional changes. Just moved the function within the file. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: 802.11: improve prep_tx_info Over time struct ieee80211_prep_tx_info has grown further fields. One which is becoming mandatory is the subtype (of the mgmt frame). iwlwifi(mld) has a WARN for it if it does not match, so we now have to set this for proper operation. In addition we are tyring to improve the situation of setting/unsetting (prepare_tx/complete_tx) in various states and cleanup the use of other fields but link_id which we now leave as a marker for the future everywhere. The general problem we are facing is that our hook surface in this case is the state machine but likely would have to be tx/rx mgmt frames but we would alos have to driver the TX queues from there which is tricky. The long-term answer is to change net80211. Further the hardware flag DEAUTH_NEED_MGD_TX_PREP is dead and was removed again in favour of leting drivers deal with it. iwlwifi(mvm) likely being the only driver which ever used this. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: pass attrs in more places in dma-mapping.h Various macros (dma_map_sg_attrs, dma_unmap_sg_attrs, dma_map_single_attrs, and dma_unmap_single_attrs) currently supress passing on the attrs argument. Their implementation (even though at times still marked the argument __unused; we remove that) have long gained support for handling the argument. With ofed fixed (5edf24aac1d09), pass the argument through so that other drivers using these functions may hopefully work just a bit better as well. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55391
debug: classified in
04-filenames_plain2 by 'sys/'
Add more defines and a mac80211 op function pointer used by mt76(4) at Linux v6.19-rc6. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
mt76(4) is using this along with a mac80211.h functiontion pointer to resolve a path in an offload case. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
The elements we store in buffer rings are buffers, so refer to them as `buf` throughout instead of a mixture of `buf`, `ret`, and `new`, especially since the latter breaks C++ code that directly or indirectly includes this header. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: siderop1_netapp.com, markj Differential Revision: https://reviews.freebsd.org/D54827
debug: classified in
04-filenames_plain2 by 'sys/'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Notable change: license got switched from ISC to BSD-3-Clause-Clear. util.h is now imported from upstream given it is no longer GPL-only. See the upstream repository 909675fd4344f73aad5f75f123bd271ada2ab9fb and a96fed2825d8dfb068bf640419c619b5f2df4218. For us the new version should also help with page pools and DMA32. Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
Stop using struct nd_ifinfo for that, because it is an API struct for SIOCGIFINFO_IN6. The functional changes are isolated to the protocol attach and detach: in6_ifarrival(), nd6_ifattach(), in6_ifdeparture(), nd6_ifdetach(), as well as to the nd6_ioctl(), nd6_ra_input(), nd6_slowtimo() and in6_ifmtu(). The dad_failures member was just renamed to match the rest. The M_IP6NDP malloc(9) type declaration moved to files that actually use it. The rest of the changes are mechanical substitution of double pointer dereference via ND_IFINFO() to a single pointer dereference. This was achieved with a sed(1) script: s/ND_IFINFO\(([a-z0-9>_.-]+)\)->(flags|linkmtu|basereachable|reachable|retrans|chlim)/\1->if_inet6->nd_\2/g s/nd_chlim/nd_curhoplimit/g Reviewed by: tuexen, madpilot Differential Revision: https://reviews.freebsd.org/D54725
debug: classified in
04-filenames_plain2 by 'sys/'
It is a wrapper above a `char *` to track the overall available space in the buffer as well as the used space. This wrapper does not manage memory allocation. The DRM generic code started to use this in Linux 6.10. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54488
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: PTP add (*settime64) to struct ptp_clock_info While iwlwifi supportes PTP, LinuxKPI does not and we only add the definitons to avoid mangling upstream drivers. iwlwifi(4) does not even support the (*settime64) callback but only returns -EOPNOTSUPP. Sponosred by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54802
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: implement dmam_free_coherent() dmam_free_coherent() is used by an updated mt76 driver at v6.19-rc6. We need to surgically find the devres information and destroy it before calling dma_free_coherent. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54810
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: add umin() Add a version of umin() simply using MIN() assuming that the Linux upstream code properly check that the arguments are unsigned, etc. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54807
debug: classified in
04-filenames_plain2 by 'sys/'
LinuxKPI: improve hweight<n> if complie time constant rtw89(4) uses a static_assert() with hweight<n> calls. In order to avoid compile time errors, deal with the case when the arguments to hweight<n> are complie time constant. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54806
debug: classified in
04-filenames_plain2 by 'sys/'
There is some padding on non-x86. Unconditionally bzero the memory to avoid a leak. Noted by: markj Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Remove sys/cdefs.h. Remove sys/param.h. Order the sys/*.h includes alphabetically. Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Convert EINVALs in kern_fork.c into EXTERRORs. Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
kern/kern_exit.c: define the exterror category for exit/wait Convert EINVALs in kern_exit.c into EXTERRORs. Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
kern/kern_exit.c: extract some helpers from proc_to_reap() Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
kern/kern_exit.c: extract wait6_check_alive() helper Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Suggested by: asomers Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Requested by: asomers Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: asomers, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
04-filenames_plain2 by 'sys/'
debug: Commit manually moved from "unknown" to "kernel".
An eventfd file descriptor can be used by drivers such as DRM drivers through linuxkpi. A driver can hold a reference to such a file regardless of the fact it is used by userland or not. This patch introduces a refcount in `struct eventfd`, plus the `eventfd_get()` and `eventfd_put()` functions to acquire and release references. These functions will be used by DRM drivers for instance. This structure is internal to `sys/kern/sys_eventfd.c` and not used anywhere else. Thus it is safe to add a field without breaking anything. Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50849
debug: classified in
04-filenames_plain2 by 'sys/'
The `eventfd_signal()` function is the equivalent to a write to an eventfd file descriptor: it bumps the internal counter and wakes up processes waiting for it. `eventfd_signal()` is meant to be used by kernel drivers. DRM drivers will call it through linuxkpi. Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50850
debug: classified in
04-filenames_plain2 by 'sys/'
Add <linux/eventfd.h> and expose the `eventfd_*()` API. This is used by DRM drivers for some time, but the code was commented out so far. Note that Linux uses `struct eventfd_ctx`, but FreeBSD defines `struct eventfd`. We define `eventfd_ctx` as a synonym to `eventfd`. Reviewed by: christos, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50853
debug: classified in
04-filenames_plain2 by 'sys/'
This covers the commits that updated the API and the commit that exposes that API in linuxkpi for DRM drivers. Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
Allow MODULE_DEPEND to accept macros by adding an extra level of indirection. Some drivers in the tree actually depend on this being the case. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54874
debug: classified in
04-filenames_plain2 by 'sys/'
devstat: Provide 32-bit compatibility If a 32-bit process running on a 64-bit kernel requests kern.devstat.all, translate each struct devstat to its 32-bit equivalent before copying it out. Also fix a bug where an early error would be ignored if there were no devices to report. MFC after: 1 week Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D54591
debug: classified in
04-filenames_plain2 by 'sys/'
freebsd32: Fix includes The previous commit added <sys/cdefs.h>, which isn't actually needed. Conversely, <sys/event.h> is needed (and has been for a long time) but was not included. MFC after: 1 week Fixes: https://cgit.freebsd.org/src/commit/?id=a11d132f6c62 ("devstat: Provide 32-bit compatibility") Reported by: gallatin@
debug: classified in
04-filenames_plain2 by 'sys/'
When witness(4) detects lock order reversals (LORs), it prints information about the stack trace which caused the LOR. If available, it can also print information about the first stack trace which established the other lock ordering. However, it only does this for "simple" LORs where the two locks in question were directly locked in the opposite order. When the lock order was established through a more complex pattern of intermediate locks, WITNESS only prints the stack trace where it detected the LOR. This commit provides new functionality to provide more verbose information about the lock chain(s) which established the lock ordering. The new functionality can be disabled by setting the debug.witness.trace sysctl/tunable to 1. The new functionality is also available through the debug.witness.badstacks sysctl, which has been modified to always show the more verbose information. Reviewed by: markj, glebius (previous version), kib (previous version) Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D54785 MFC after: 1 month
debug: classified in
04-filenames_plain2 by 'sys/'
Mark the lock relationships defined in order_lists[] and use that information to print better messages when a LOR violates one of these relationships. Suggested by: markj Reviewed by: kib, markj MFC after: 1 month Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D54903
debug: classified in
04-filenames_plain2 by 'sys/'
The tag is used to perform lookup in a different way. New functions were introduced: * to set, check and clear a tag * to walk through a radix tree based on a given tag Furthermore, the `radix_tree_delete()` function was modified to clear tags on deletion. The amdgpu DRM driver started to use this in Linux 6.10. While here, the `radix_tree_gang_lookup()` function was added because it is very close to `radix_tree_gang_lookup_tag()`, but it is not used by the DRM drivers as of this commit. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54503
debug: classified in
04-filenames_plain2 by 'sys/'
Printing an empty netdev_features= line makes little sense even under bootverbose. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
There is no harm in having unused prototypes. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
It is not used since c72188d85a793c7610208beafb83af544de6e3b7. Noted by: jrtc27 Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
This is the infrastructure to allow scheduler implementation to be selected on boot, supported by ifuncs. The DEFINE_SHIM() macros and their usage provided by jrtc27@. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
sys: Make sched_ule a sched instance Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
sys: Move ULE sysctls under kern.sched.ule Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
sys: Make sched_4bsd a sched instance Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
sys: Move 4BSD sysctls under kern.sched.4bsd Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Reports all compiled-in schedulers. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Move the code to decide on the timer accounting into the scheduler hook. Since there were no inclusion of opt_sched.h, it is probably done unconditionally anyway. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Add sched_find_l2_neighbor(). This really should be not scheduler-depended, in does not have anything to do with scheduler at all. But for now keep the same code structure. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
It is apparently should be considered part of the ABI, and is used by the base top(1). But do not declare the ccpu variable in headers, it is needed only by 4bsd. So put the variable definition into sched_shim.c to make the kernel buildable without SCHED_4BSD. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
Globally enable both schedulers for LINT. Enable both schedulers for GENERIC on amd64. Reviewed by: olce Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
kern/sched: move duplicate preemption stat vars into sched_shim.c Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
kern/sched: deduplicate sdt probes Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
kern/sched: deduplicate dtrace hook vars Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
I have hit the case multiple times that some LinuxKPI field may not be set during driver bringup and lindebugfs would cause a panic. The backtrace goes like: strlen() at strlen+0x54 pfs_create_dir() at pfs_create_dir+0x41 debugfs_create_dir() at debugfs_create_dir+0xa1 ... While the problem is clearly in LinuxKPI or the driver, we likely should at least add an assert to pfs_create_dir() if name is NULL like we have for pfs_add_node() but for lindebugfs at least make this a graceful error and continue without creating the dir instead of panicing. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D54944
debug: classified in
04-filenames_plain2 by 'sys/'
maybe_resched() needs to schedule TDA_SCHED for curthread, but this requires taking curthread lock while owning some other thread lock. To avoid introducing the order: - Use a scheduler-private TDP flag. - Register an unconditional TDA_SCHED_PRIV for 4BSD. When an AST needs to be scheduled, i.e. the current thread must do context switch in the return to userspace path, set the flag. Then the ast handler calls ast_scheduler(), which gives the same effect as scheduling TDA_AST. The overhead is a single function call on each userspace return, for 4BSD case. Reported and tested by: pho (previous version) Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54945
debug: classified in
04-filenames_plain2 by 'sys/'
The try_binary_file() function has inverted logic for the FIRMWARE_GET_NOWARN flag. When the flag is set (meaning "don't warn"), the code sets warn=true and makes noise anyway. Invert the assignment to warn to correctly suppress warnings when FIRMWARE_GET_NOWARN is set. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D54955
debug: classified in
04-filenames_plain2 by 'sys/'
The issue is that for ktrcsw() we lock the ktrace_mtx mutex while owning the interlock from a subsystem that called msleep(). In particular, the VM subsystem might call msleep() if page allocation failed. This establishes order VM locks (e.g. domain free queue lock) -> ktrace_mtx. Calling free() while owning ktrace_mtx gives the reverse order. Worse, msleep_spin_sbt() call s ktrcsw() while the thread is put on sleep queue. Then, since the mutex might be contested, the thread needs to be put on turnstil, which cannot work. Move the ktrcsw() call for switch-out after the wakeup, when the thread does not yet re-obtained any locks. From there, we call a special version of ktrcsw(), which is passed the actual time when the context switch occured. The drawback is that the switch-out record is only written in the ktrace.out file after the switch-in occurred, but this is probably not too serious. Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54831
debug: classified in
04-filenames_plain2 by 'sys/'
clang is more tolerant and implies this extension whereas GCC is stricter and requires it to be included. Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54965
debug: classified in
04-filenames_plain2 by 'sys/'
These are needed when compiling a RISC-V kernel with GCC which does not inline __builtin_ffs*. The __ffsdi2 is adapated from the previous ffsl.c. This partially reverts commit f4db342d44198973c1c7b9005d0c5683a582707e. Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54967
debug: classified in
03-filenames_plain1 by
'sys/libkern/'
These are only needed for GCC, but it doesn't hurt to include these always. Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54968
debug: classified in
04-filenames_plain2 by 'sys/'
When calling sctp_peeloff() on a SOCK_SEQPACKET socket, the created and returned socket has the type SOCK_STREAM. This is specified in section 9.2 of RFC 6458. Reported by: Xin Long MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
Add kernel ifunc support on arm. MFC after : 3 weeks Reviewed by: kib (previous version) Differential Revision: https://reviews.freebsd.org/D54970
debug: classified in
04-filenames_plain2 by 'sys/'
This is required for GCC on RISC-V. The GCC 15 docs claim that "cc" is similar to "c" except that it "tries harder". NB: I have not yet found a way to make the DTrace probes compile on RISC-V with older versions of GCC. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54964
debug: classified in
04-filenames_plain2 by 'sys/'
Move it back from kern.sched.ule.topology_spec. Make it scheduler-agnostic. Provide trivial report for UP kernels. Apparently the MIB is used by some third-party software. Obviously it did not worked on UP or 4BSD configs. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292574 Reviewed by: olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55062
debug: classified in
04-filenames_plain2 by 'sys/'
Repprted and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'sys/'
When trying to unregister a fictitious range in `vm_phys_fictitious_unreg_range()`, the function checks the properties of the looked up segment, but it does not check if a segment was found in the first place. This can happen with the amdgpu DRM driver which could call `vm_phys_fictitious_unreg_range()` without a fictitious range registered if the initialisation of the driver failed (for example because firmwares are unavailable). The code in the DRM driver was improved to avoid that, but `vm_phys_fictitious_unreg_range()` should still check the return value of `RB_FIND()` before trying to dereference the segment pointer and panic with a page fault. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55076
debug: classified in
04-filenames_plain2 by 'sys/'
sockets: let protocols be responsible for socket buffer mutexes Sockets that implement their own socket buffers (marked with PR_SOCKBUF) are now also responsible for initialization of socket buffer mutexes in pr_attach and for destruction in pr_detach (or pr_close). This removes a big bunch of reported LORs, as now WITNESS is able to see that tcp(4) socket buffer mutex and netlink(4) socket buffer mutex are two different things. Distinct names also improve diagnostics for blocked threads. This also removes a hack from unix(4), where we used to mtx_destroy(). Also removes an innocent bug from unix(4) where for accept(2)-ed socket soreserve() was called twice. This one was innocent since first call to soreserve() was asking for 0 bytes of space. This slightly increased amount of pasted code in TCP's syncache_socket(). The problem is that while for sockets created with socket(2) it is pr_attach responsible for call to soreserve() (including !PR_SOCKBUF protocols), but for the sockets created with accept(2) it was solisten_clone() doing soreserve(), combined with the fact that for accept(2) TCP completely bypasses pr_attach. This all should improve once TCP has its own socket buffers. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54984
debug: classified in
04-filenames_plain2 by 'sys/'
sockets: repair sctp_peeloff(2) The shim function soattach() may be passed a non-listening socket by SCTP. NB: the change makes soattach() more hairy, but long term plan is that this function goes away. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293010 Fixes: https://cgit.freebsd.org/src/commit/?id=64f7e3c9c178ab35cb1f8fdf791aec74ede6f6b2
debug: classified in
04-filenames_plain2 by 'sys/'
sysctl(9): Booleans: Accept integers to ease knob conversion In sysctl_handle_bool(), if the output buffer (for the old value) has room for exactly 4 bytes (sizeof(int)), then output the current boolean value as an integer rather than a 'uint8_t'. Conversely, if 4 bytes exactly remain in the input buffer (for the new value), treat them as an integer and derive the new boolean value from it. Doing so allows to convert existing integer syscstl knobs that are interpreted as a boolean into true boolean ones while staying backwards-compatible. That brings no drawback as no code currently uses sysctl_handle_bool() as part of a series of calls to sysctl_handle_*() functions for (de)serialization of some compound structure. If that case ever materializes, it can be easily solved, e.g., by creating a sysctl_handle_bool_strict() variant. In the future, we might want to go further and generally be more liberal in the external type of integers we accept and output, by tolerating any kind of supported integers (8-bit to 64-bit), enabling integer type changes of knob's internal representations without breaking the ABI for consumers hardcoding the passed integers (instead of relying on sysctl knob type information). Reviewed by: jhb MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54925
debug: classified in
04-filenames_plain2 by 'sys/'
sysctl(9): Booleans: Fix old value length discovery When calling sysctl(3) with a null 'oldp', i.e., length discovery mode, 'oldix' can be equal to 'oldlen', and we should not fail. More generally, let SYSCTL_OUT() and SYSCTL_IN() handle corner cases, simply removing the comparisons between 'oldidx' and 'oldlen' and 'newidx' and 'newlen' done by hand as the test just after is an equality that does not require to know if 'idx' is smaller than 'len'. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292917 Reported by: cy Fixes: https://cgit.freebsd.org/src/commit/?id=406da392ef8d ("sysctl(9): Booleans: Accept integers to ease knob conversion") Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
Needed by a wireless driver. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: kib, emaste Differential Revision: https://reviews.freebsd.org/D55029
debug: classified in
04-filenames_plain2 by 'sys/'
Switch from using if () else to a direct return (?:) code. No functional changes. Suggested by: kib (D55029) Sponosred by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste (before removing more () as suggested by him) Differential Revision: https://reviews.freebsd.org/D55088
debug: classified in
04-filenames_plain2 by 'sys/'
Turn POWER_SLEEP_STATE_* defines into enum power_sstate_transition. Reviewed by: markj Approved by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52497
debug: classified in
04-filenames_plain2 by 'sys/'
This completes the set of architectures implementing this feature. Move the calls to sched_instance_select() and link_elf_ireloc() later in initriscv(), after identify_cpu(0). There will be more information available to any resolver functions at this time. Reviewed by: imp, kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55082
debug: classified in
04-filenames_plain2 by 'sys/'
Now all architectures support kernel ifunc resolvers. Therefore, the alternate implementation can be removed. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55114
debug: classified in
04-filenames_plain2 by 'sys/'
These constants are always defined by sys/sys/linker.h. Reviewed by: vexeduxr Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Sponsored by: Defenso MFC after: 2 weeks Closes: https://github.com/freebsd/freebsd-src/pull/2004
debug: classified in
04-filenames_plain2 by 'sys/'
Only keep them when used in a sentence. Reviewed by: vexeduxr Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Sponsored by: Defenso Closes: https://github.com/freebsd/freebsd-src/pull/2004
debug: classified in
04-filenames_plain2 by 'sys/'
This changes STACKALIGN to be type-preserving when operating on pointers. Reviewed by: brooks, kib Effort: CHERI upstreaming Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54920
debug: Commit manually moved from "unknown" to "kernel".
Bugzilla PR#292282 reports a problem, where a Linux binary running in the Linuxulator gets bogus entries in a readdir()/getdents() reply when the directory is an NFS mount. This appears to be caused by the NFS client including entries with d_fileno == 0, which are always ignored by BSD, but are not ignored by Linux. This patch filters out the "d_fileno == 0" entries and the reporter of the bugzilla PR notes that it fixes the problem for him. It could be argued that the NFS client should filter out the "d_fileno == 0" entries, but the NFS client readdir code is "fragile" and any change to it runs a significant risk of causing regression type problems. As such, since the LInuxulator is already broken for this case, it seems safer to filter them out there. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292282 Tested by: Jerry Williams <jwillia3@proton.me> Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54679
debug: classified in
04-filenames_plain2 by 'sys/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292463 Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2002
debug: classified in
04-filenames_plain2 by 'sys/'
This adds padconf files for the two gpio ranges on the H616 SOC and adds the SOC include. Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54915
debug: classified in
04-filenames_plain2 by 'sys/'
It now only returns true so this can be assumed and doesn't need to be checked. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55105
debug: classified in
04-filenames_plain2 by 'sys/'
to prevent sign-extension, causing unexpected flags to be passed to dounmount(). The mnt_flags and MNT_* constants are 64bit wide. Suggested and reviewed by: jah Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55197
debug: classified in
04-filenames_plain2 by 'sys/'
sys/abi_compat.h: normalize include guard name Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/abi_compat.h: move freebsd32_uint64_t and FU64_CP() there Use private names for uintXX_t types. Remove conflicting (but equal) PTR_IN() definition from dev/mfi.c. Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/abi_compat.h: add Foundation copyright for uint64_t stuff Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: Commit manually moved from "unknown" to "kernel".
sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_knote32 Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/compat/freebsd32: use freebsd32_uint64_t for struct ffclock_estimate32 Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/compat/freebsd32: use freebsd32_uint64_t for several struct stat's Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/compat/freebsd32: ki_pd is missing from struct kinfo_proc32 This is missed by the sizeof(struct kinfo_proc32) assert due to another bug: namely, the use of uint64_t type that has different alignment on i386 than on amd64 host. Fixes: https://cgit.freebsd.org/src/commit/?id=85078b8573332c2c83a79adea8a61b519fb3b6af Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
sys/compat/freebsd32: use freebsd32_uint64_t for struct kinfo_proc32 Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
The time32_t typedef leaks into openzfs compilation environment through sys/event.h. Simultaneously, openzfs provides its own definition that is only correct for amd64 on FreeBSD. Try to fix it by using sys/abi_compat.h directly. Since toolchain build from the make buildworld uses host abi_compat.h, add a preprocessor symbol __HAVE_TIME32_T to signal consumers that time32_t is typedef'ed. If not defined, fall back to old and wrong time32_t, which is enough for bootstraping toolchain. Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55135
debug: classified in
04-filenames_plain2 by 'sys/'
Split out types definitions into sys/abi_types.h, and only include abi_types.h into sys/event.h. Tested and reviewed by: bz Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55202
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: gallatin, tuexen Differential Revision: https://reviews.freebsd.org/D55196
debug: classified in
04-filenames_plain2 by 'sys/'
__builtin_memset() calls are replaced with calls to memset(), but that can't be used before ifunc relocations are processed if the implementation is selected at boot time. Meanwhile, the sanitizer may emit calls to __asan_set_shadow_*() as soon as locore jumps into C code, before ifuncs are selected. Just unconditionally use memset_early() to work around this. Reported by: andrew MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55079
debug: classified in
04-filenames_plain2 by 'sys/'
In the (improbable) cases where either: - All entries in dump_map[] are used, so there is no guard entry filled with zeros. - Some dump region has size 0. We would respectively access dump_map[] out-of-bounds or omit further dump regions when iterating. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
sys/compat/linuxkpi/common/include/linux/platform_data/brcmfmac.h is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git e5f0a698b34ed76002dc5cff3804a61c80233a7a ( tag: v6.17 ). Currently only PCIe is made to compile. It does load firmware (if needed, e.g., on arm64 with an alignment issue fixed), and starts to come up. To make it work there is a cfg80211 layer and netdevice integration to do, so do not hold your breath just yet.
debug: classified in
04-filenames_plain2 by 'sys/'
Needed by brcmfmac v6.19. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
so_state modifications must be synchronized by the socket lock. For the listening socket this probably doesn't matter but for the child socket I think it's possible that this unlocked update clobbers a state transition if the nascent connection is being disconnected for some reason. Also fix the line which potentially clears SS_NBIO in the listening socket. It is unclear whether this code is used at all. Reviewed by: glebius MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55247
debug: classified in
04-filenames_plain2 by 'sys/'
This is needed when building OpenZFS with KMSAN enabled, as the bundled zstd uses it. MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'sys/'
of the resumed timers list, so that kqtimer_proc_continue() does not iterated into the same timer again. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293141 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55264
debug: classified in
04-filenames_plain2 by 'sys/'
It must be sbinuptime(), this is how kc->next is set up. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293141 Noted and reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55264
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: mmel Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55268
debug: classified in
04-filenames_plain2 by 'sys/'
Packing 'struct ffclock_estimate32', in absence of substitution of 'ffcounter' (some 'uint64_t') by a 32-bit compatible type, was necessary on amd64 since 'uint64_t' is 8-byte aligned, which leaves a padding gap of 4-byte between fields 'update_time' and 'update_ffcount'. This gap does not exist on i386 (or amd64 32-bit mode), as 'uint64_t' there is only 4-byte aligned. Change the type of the 'update_ffcount' and 'leapsec_next' fields to the recently introduced 'freebsd32_uint64_t', and adapt copy-in and copy-out accordingly. Using `CP()` previously worked due to the '__packed__' attribute. Reviewed by: kib MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55282
debug: classified in
04-filenames_plain2 by 'sys/'
As long as 'sys/compat/freebsd32/freebsd32.h' is used unconditionally on
all platforms (in 'kern_umtx.c' at least), the rule of thumb is to
ensure that 'struct foo32' on a 32-bit arch is type-compatible with
'struct foo' on the same arch. In practice, this is very simple to
achieve: All 'foo32' types should be compatible with 'foo' on 32-bit
architectures, which is what we are supposed to do already for compat'
structures by design. The recently introduced 'freebsd32_uint64_t' type
typically supports that.
This change fixes commit 87632ddf67b0 ("openzfs sys/types32.h: use
abi_compat.h for time32_t") which was defining 'time32_t' to 'in32_t'
for all 32-bit architectures, which is wrong but on i386. By luck, this
did not change the size of whole 'struct ffclock_estimate32' (whose size
is compile-time asserted) because 'struct bintime32''s one would stay
the same, as even if its field 'sec' was incorrectly sized after that
commit, the 'frac' one is 64-bit and 64-bit aligned on all non-x86
architectures so its offset in 'struct bintime32' would stay the same.
Reviewed by: kib
Fixes: https://cgit.freebsd.org/src/commit/?id=87632ddf67b0 ("openzfs sys/types32.h: use abi_compat.h for time32_t")
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55283
debug: classified in
04-filenames_plain2 by 'sys/'
After commit e11768e94787 ("vmm: Add PRIV_DRIVER checks for passthru
ioctls"), it is not possible to use PCI passthru from jails, as
PRIV_DRIVER is not granted to jails. Apparently some users expect this
to work, understanding that jailing bhyve provides little security
benefit in this configuration.
I believe we should disable ppt access in jails even when allow.vmm is
configured. To provide an escape hatch for users, add a new
allow.vmm_ppt jail configuration knob, and check it when handling ppt
ioctls in jails. Also add a new PRIV_VMM_PPTDEV to replace the use of
PRIV_DRIVER.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292750
Reviewed by: corvink
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D55066
debug: classified in
04-filenames_plain2 by 'sys/'
when RFSPAWN is not specified, as stated in the man page. rfork(2) cannot modify non-curproc, which is why RFPROC is required, the syscall cannot act on arbitrary process descriptor. If RFPROCDESC is not specified, the syscall does not make sense, use rfork(2). Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
04-filenames_plain2 by 'sys/'
MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D52475
debug: classified in
04-filenames_plain2 by 'sys/'
Some IVAR indices are special in that they have global meaning across multiple buses where as other IVARs are always private to the local bus. Try to document this a bit and add constants for the various ranges to avoid future conflicts. This is a no-op, but IVAR indices are now generally defined as enums as that makes it easier to define them in terms of ranges. Reviewed by: imp, royger, andrew Differential Revision: https://reviews.freebsd.org/D54159
debug: classified in
04-filenames_plain2 by 'sys/'
A few bus drivers used 1 instead of 0 as the starting index of their private IVARs. Fix those drivers to start at BUS_IVARS_PRIVATE for consistency. Differential Revision: https://reviews.freebsd.org/D54934
debug: classified in
04-filenames_plain2 by 'sys/'
Suggested by: andrew Differential Revision: https://reviews.freebsd.org/D54191
debug: classified in
04-filenames_plain2 by 'sys/'
Use a more consistent scheme for allocating shared IVAR index ranges. Differential Revision: https://reviews.freebsd.org/D54161
debug: classified in
04-filenames_plain2 by 'sys/'
For PIC code, the existing assembly constraints do compile on aarch64. Some kernel modules build ok using the 'p' constraint with the 'a' operand modifier, but not all. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55166
debug: classified in
04-filenames_plain2 by 'sys/'
PR#293198 reports a hang within ZFS when exports are being updated concurrently with a VOP_SETEXTATTR(). The hang appears to be caused by mishandling of the z_teardown_lock, but fixing handling of this lock appears to be a major effort. Since the hang occurs when VFS_MOUNT() acquires a write/exclusive z_teardown_lock, which rarely occurs, except when exports are being updated, this patch avoids the VFS_MOUNT() call for this case. Avoiding a VFS_MOUNT() call fixes the hang for the case reported by PR#293198 and is also an optimization. As such, this patch avoids the VFS_MOUNT() call when only exports are being updated similar to what was already being done within vnet prisons. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293198 Reviewed by: kib, markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55318
debug: classified in
04-filenames_plain2 by 'sys/'
Previously, we iterated over all CPUs using CPU_FOREACH and checked individual bits to count valid CPUs. Refactor this to use a bitwise AND and popcount to count the number of enabled bits directly. Approved by: markj (mentor) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54474
debug: classified in
04-filenames_plain2 by 'sys/'
When interrupt vectors are first allocated, they get assigned to CPU #0; at SI_SUB_SMP / SI_ORDER_SECOND (aka once we have multiple CPUs), the intr_irq_shuffle SYSINIT clears their CPU sets with the effect of forcing them to be assigned to new CPUs later. In case where interrupt vectors were allocated *but not yet bound* this code did not run, with the effect that those interrupts would remain pinned to CPU #0 forever. This affected the ena(4) driver, which allocates interrupts for I/O when the device is attached but doesn't set them up until the interface is brought up much later in the boot process (and, crucially, long after intr_irq_shuffle runs). Adjust intr_irq_shuffle to clear the CPU set for an interrupt source even if it currently has no handlers, so that it will be properly assigned to a CPU when it is used later. Reviewed by: andrew, mhorne MFC after: 1 month Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D55284
debug: classified in
04-filenames_plain2 by 'sys/'
This is used to hold a copy of the original fflags, which is unsigned. MFC after: 3 days Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D55348
debug: classified in
04-filenames_plain2 by 'sys/'
No functional change (intended). MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
- gc unused struct kevent - sort kern_frmdirat, kern_funlinkat, kern_kexec_load, and kern_kqueue - put user_ functions in their own section Effort: CHERI upstreaming Reviewed by: kib Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D55309
debug: classified in
04-filenames_plain2 by 'sys/'
In preparation for supporting creation of VMs by unprivileged users, add some restrictions: - Disallow creation of non-transient VMs by unprivileged users. That is, if an unprivileged user creates a VM, the VM must be destroyed automatically once the last fd referencing it is gone. - Disallow destroying VMs created by a different user, unless the caller has the PRIV_VMM_DESTROY privilege. Reviewed by: bnovkov MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54740
debug: classified in
04-filenames_plain2 by 'sys/'
- Add the vmm group. - Let /dev/vmmctl belong to the vmm group by default, and give group write permissions. - When creating a VM's device files, make them owned by the creating process' effective UID. Reviewed by: bnovkov MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54741
debug: classified in
05-summary-prefix by 'vmm:'
For now, just describe the error where an unprivileged user attempts to run a VM without DESTROY_ON_CLOSE semantics, i.e., monitor mode. Reviewed by: bnovkov MFC after: 2 months Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54743
debug: classified in
05-summary-prefix by 'vmm:'
'sc->levels_buf' is initialized with malloc(M_WAITOK), so can never be NULL. Another sysctl handler function (cpufreq_curr_sysctl()) already relies on that. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in
04-filenames_plain2 by 'sys/'
PROC_REAP_KILL must guarantee that all reaper descendants are signalled. In particular, it must ensure that forked but not yet fully linked descendants cannot escape killing. Currently, proc_reap() fullfils the guarantee by single-threading stopping the target process, which moves the target to the userspace boundary, so the target cannot fork while the signal is sent. Single-threading has undesirable effect of sometimes terminating sleeps with EINTR. Since the time that the bug with PROC_REAP_KILL was fixed, we grow the pg_killsx mechanism that is similarly used by the process group signalling to ensure that no member of the process group escapes. Reuse pg_killsx for PROC_REAP_KILL as well. Besides the functional change of no longer causing spurious EINTR, not single-threading the target means that we no longer need to delegate the work to the taskqueue. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290844 Reported by: bdrewery Reviewed by: des, markj Tested by: des, pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55288
debug: classified in
04-filenames_plain2 by 'sys/'
Due to this, restart the iteration over the p_reapsiblings if the lock was dropped. Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55288
debug: classified in
04-filenames_plain2 by 'sys/'
ESRCH from cr_cansignal() means that the target process should be not visible to the initiator. So do not report pids with ESRCH result. Noted by: markj Reviewed by: markj, olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55341
debug: classified in
04-filenames_plain2 by 'sys/'
After commit 7d1d9cc440f80 we only serialize large sysctl requests for non-root users, but we should avoid calling priv_check() unless the request actually is large, as that's not the common case. In particular, priv_check() might not be cheap to evaluate if MAC hooks are installed. Reviewed by: olce, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55377
debug: classified in
04-filenames_plain2 by 'sys/'
Running out of pipe map KVA is a rare case, so reorder checks accordingly, presuming that calling priv_check() is more expensive than the calculation. In particular, priv_check() might not be cheap to evaluate if MAC hooks are installed. Reviewed by: olce, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55378
debug: classified in
04-filenames_plain2 by 'sys/'
MFC after: 3 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
The BUF_UNLOCK macro asserts that B_REMFREE is not set, as it is up to the lock owner to complete the dequeue from the free list before releasing the lock. However, if the thread has acquired the lock multiple times, then releasing the recursive lock should be ok. Modify the assertion to reflect this. This was triggered by an out-of-tree filesystem. Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55418
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: adrian (previous version) MFC after: 3 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
GCC 12 has a strict definition of identity (all characters including whitespace must be identical) when comparing "redefined" macros. Make our definition exactly match the stddef.h that comes with GCC to fix test-includes of netlink/netlink_snl.h. (Note: later versions of GCC are a bit more flexible and don't have this problem.) Reported by: des Sponsored by: DARPA, AFRL Fixes: https://cgit.freebsd.org/src/commit/?id=2adc3f0db187 ("stddef.h: centralize definition of offsetof()")
debug: classified in
04-filenames_plain2 by 'sys/'
These various definitions are meant to be kept sorted by machine prefix. Fixes: https://cgit.freebsd.org/src/commit/?id=2bb61497ca76 ("elf_common.h: Add definitions for LoongArch ELF files")
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: jrtc27 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55488
debug: classified in
04-filenames_plain2 by 'sys/'
This matches the behavior of the fallbacks for __builtin_align_up and __builtin_is_aligned. Reviewed by: arichardson, ngie, kib Differential Revision: https://reviews.freebsd.org/D55161
debug: classified in
04-filenames_plain2 by 'sys/'
Keep the dword labels as comments instead. Anonymous structs and unions don't have type names in C11+. Differential Revision: https://reviews.freebsd.org/D55144
debug: classified in
04-filenames_plain2 by 'sys/'
<varp>_has_<var> returns true if the given IVAR can be read. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55352
debug: classified in
04-filenames_plain2 by 'sys/'
This macro is similar to __BUS_ACCESSOR in that it creates three helper routines for an ivar, but the "get" wrapper returns a default value if BUS_READ_IVAR does not return a value. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55353
debug: classified in
04-filenames_plain2 by 'sys/'
ACPI_IVAR_HANDLE is the only true "global" IVAR that can be used across multiple bus drivers. The other IVARs are private to direct children of acpi0. However, they need to be numbered after ISA IVARs as ACPI mimics an ISA bus device. To ensure this remains true, add an ISA_IVAR_LAST to use in assert that the private ACPI IVARs do not overlap with ISA IVARs. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55354
debug: classified in
04-filenames_plain2 by 'sys/'
ib_verbs.h still uses struct dma_attrs *dma_attrs everywhere. It is beyond my knowledge when that struct got deprecated upstream but it is still supported by our LinuxKPI. The problem is that the functions called with that argument (dma_map_single_attrs, dma_unmap_single_attrs, dma_map_sg_attrs, dma_unmap_sg_attrs) so far are #defines in LinuxKPI and drop the last argument (attrs) so it was never a problem. In preparation to pass the attrs to the actual implementation in LinuxKPI, which has gained support for them, we now pass dma_sttrs->flags which is the expected unsigned long bit field. If anyone has serious interest in updating our ofed implementation they could look into this some more and remove the usage of struct dma_attrs entirely. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55390
debug: classified in
04-filenames_plain2 by 'sys/'
In certain cases we may tear down state of a node with 'ongoing' BA sessions. This can trigger a firmware crash with iwlwifi as reported in [1] when trying to remove the sta from the firmware. 0x2010303A | ADVANCED_SYSASSERT .. 0x00000000 | umac data1 (sta id=0) .. 0x0088030C | last host cmd (STA_RM) [1] https://lists.freebsd.org/archives/freebsd-wireless/2025-November/003901.html I hit the same problem while running regression tests after reworking some LinuxKPI 802.11 sta state machine bits. Add the missing calls to lkpi_sta_run_to_assoc() and lkpi_sta_run_to_init() to make sure (through net80211) we call (*ampdu_action) with IEEE80211_AMPDU_RX_STOP to avoid the firmware crash. Note: this specific patch was not excessively tested. The upcoming change to the state machine including this fix has seen more testing but also only needed the change in one place. The reason for putting this in upfront is to document the case well. Reported by: Mohammad Amin (the.madamin20 gmail.com) [1] Sponsored by: The FreeBSSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
Reported by: kevans Reviewed by: kevans, mhorne Fixes: https://cgit.freebsd.org/src/commit/?id=0d3652f67d246348e2c017205c6782caf4484449 Sponsored by: The FreeBSD Foundation MFC after: 1 week Differrential revision: https://reviews.freebsd.org/D55490
debug: classified in
04-filenames_plain2 by 'sys/'
Detaching the bhyve(4) ppt driver from an unsupported PCI device should not raise a "Device not configured" error. We do not expect that a new driver must take over the device in this case. Reviewed by: imp, jhb Differential Revision: https://reviews.freebsd.org/D52050
debug: classified in
04-filenames_plain2 by 'sys/'
sctp: fix so_proto when peeling off a socket Reported by: glebius Reviewed by: rrs Fixes: https://cgit.freebsd.org/src/commit/?id=d195b3783fa4 ("sctp: fix socket type created by sctp_peeloff()") Differential Revision: https://reviews.freebsd.org/D55454
debug: classified in
04-filenames_plain2 by 'sys/'
sctp: fix NOINET build Reported by: ngie Fixes: https://cgit.freebsd.org/src/commit/?id=454212b9718b ("sctp: fix so_proto when peeling off a socket") MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
debug: moved to kernel because
'Need to be grouped with
454212b9718b55b43781f81bef252658e20e0fd3'
Obtained from the Memtag ABI Extension to ELF for the Arm® 64-bit Architecture (AArch64) [1] [1] https://github.com/ARM-software/abi-aa/blob/main/memtagabielf64/memtagabielf64.rst#dynamic-section Reviewed by: andrew Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55486
debug: classified in
04-filenames_plain2 by 'sys/'
page_pool/helpers.h does exist in common/include/net/page_pool/helpers.h so we can remove the dummy header file. Sponosred by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
We retired most obsolete 10 and 10/100 Ethernet NIC drivers in 2019 --
see commits following ebcf740a32ae ("FCP-101: remove obsolete 10 and
10/100 Ethernet drivers.).
le(4) was retained with with the note "Emulated by QEMU, alternatives
don't yet work for mips64." MIPS has since been removed from the tree
and emulators and virtual machines offer many other, more suitable
devices.
Reviewed by: brooks
Relnotes: Yes
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55516
debug: classified in
05-summary-prefix by 'sys:'
Per Wikipedia, ACPI WMI support is available on all x86* platforms and ARM platforms. Add the source to `files.arm64` so code that relies on its headers (thunderbolt(4) for instance), can be built on ARM64. MFC after: 1 month Reviewed By: andrew Differential Revision: https://reviews.freebsd.org/D55535
debug: classified in
04-filenames_plain2 by 'sys/'
This change moves the thunderbolt module and other USB modules under a MK_USB != no conditional to ensure that users not desiring USB support can easily build systems without USB-specific drivers using this knob. MFC after: 1 week Reviewed By: imp Differential Revision: https://reviews.freebsd.org/D55576
debug: classified in
04-filenames_plain2 by 'sys/'
restart is a boolean. While I'm here, convert to a bool. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55518
debug: classified in
04-filenames_plain2 by 'sys/'
nda: Move ndasetgeom Move ndasetgeom up in the file. We'll need it here for future commits. Also, preserve the UNMAPPED_BIO flag since we can't observe enough data from this routine to set it directly. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55519
debug: classified in
04-filenames_plain2 by 'sys/'
nda: Rescan the drive on open SCSI and ATA drives rescan the drive on opens to catch changes to the disk. We do it here to so we catch if a drive has been FORMATed or SANITIZEd with different parameters. We don't use xpt_rescan() since we don't want to interfere with boot or keep all busses locked (this rescan won't change the bus, so we don't need the CAM topo lock). Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55520
debug: classified in
04-filenames_plain2 by 'sys/'
nda: AC_GETDEV_CHANGED calls media chanaged for sectorsize change When the sector size changes, we assume it's new media. When the mediasize changes, we'll just resize the disk (we get called for both events). When neither have changed, don't call either. Some NVMe drives (but not all) post a async event on page 4 with the sector size changes via a FORMAT command. We'll notice the new media right away, rather than the next device open. As a practical effect, this just means that certain geom operations will see it sooner. Since most drive interaction goes through open, that will catch those drives that do not post this event well enough. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55521
debug: classified in
04-filenames_plain2 by 'sys/'
The error recovery is nicer if we can wait for the tiny memory we need to send the messages when the physpath changes. Since we've moved the async handler into a sleepable context, we can wait for the allocation to complete since async events are rare enough and it's not an indefinite wait. Also add a comment about the scope of AC_ADVINFO_CHANGED for nvme drives. We could use it for broadcasting INDENTIFY changes in nvme drives. However, the underlying mechanisms in NVMe don't really allow for that (they are more fine-grained). So for namespace changes, for example, we'll send AC_GETDEV_CHANGED instead of a AC_ADVINFO_CHANGED. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D55523
debug: classified in
04-filenames_plain2 by 'sys/'
The BUILD_BUG_ON_ZERO() macro returns an (int)0 if it does not fail
at build time. LinuxKPI sort() has it as a guard for an unsupported
argument but ignores the return value.
This leads to gcc complaining:
/usr/src/sys/compat/linuxkpi/common/include/linux/build_bug.h:60:33: error: statement with no effect [-Werror=unused-value]
60 | #define BUILD_BUG_ON_ZERO(x) ((int)sizeof(struct { int:-((x) != 0); }))
| ^
/usr/src/sys/compat/linuxkpi/common/include/linux/sort.h:37:9: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
37 | BUILD_BUG_ON_ZERO(swap); \
| ^~~~~~~~~~~~~~~~~
/usr/src/sys/contrib/dev/rtw89/core.c:2575:9: note: in expansion of macro 'sort'
2575 | sort(drift, RTW89_BCN_TRACK_STAT_NR, sizeof(*drift), cmp_u16, NULL);
Change to BUILD_BUG_ON() for the statement version.
Reported by: CI
Co-authored-by: bz
Approved by: emaste (mentor)
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55634
debug: classified in
04-filenames_plain2 by 'sys/'
This hack introduced in d7955cc0ffdf and e3cbc572f154 proved to have more ill side effects than benefits. Sorry for that. Now the HPTS soft clock is called only after the LRO completion. Refactor HPTS module linkage to address that and share the pointer only between HPTS and LRO. Reviewed by: Nick Banks Differential Revision: https://reviews.freebsd.org/D55640
debug: classified in
04-filenames_plain2 by 'sys/'
With the advent of MLO some of the updates (*bss_info_changed) would have done are not per-link. This had (*vif_cfg_changed) and (*link_conf_changed) introduced which are used by iwlwifi, rtw89, select mt76 drivers, and ath12k currently it seems. A driver normally only supports on or the other set. Factor out the call to (*bss_info_changed) into an internal function. There split the options up depending on whether they are for the vif or a link and leave a fallback to (*bss_info_changed) for older drivers. Add the mac80211 ops implementations for the two new calls along with a currently unused backup option for (*bss_info_changed) for each as I assume we will eventually call the directly rather than from the internal wrapper function. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
In lkpi_sta_auth_to_scan() we remove the sta from the firmware
for everything supporting (*sta_state).
We used to run into issues here with iwlwifi in that we had to
use a specific order: set vif->cfg.assoc = false, .aid = 0,
then remove the sta, and then send the mac update as otherwise
we would either have the sta silently removed (if we run
(*bss_info_change) first and fail then or silently not have the
sta removed and upon sta add we would trigger the fw crash.
The order of events seem to have changed now and especially BE200
(iwlwifi/mld) is picky about this and would crash the firmware with
something like:
iwlwifi0: 0x20103311 | ADVANCED_SYSASSERT
iwlwifi0: 0x00000000 | umac branchlink1
iwlwifi0: 0xC00808AA | umac branchlink2
iwlwifi0: 0xD00D6E90 | umac interruptlink1
iwlwifi0: 0x0108C504 | umac interruptlink2
iwlwifi0: 0x00000000 | umac data1 (link_id? seen weird values there though)
iwlwifi0: 0x00000006 | umac data2 (fw_sta_id)
iwlwifi0: 0x00000001 | umac data3
if it would still think we were assoc.
So the new order is as one would have expected initially:
set assoc = false, aid = 0; do the remaining bss_conf (vif/link) changes
and issue the (*vif_cfg_changed) / (*link_info_changed) or for older
drivers (*bss_info_changed). That will tell the mac we are no longer
associated. And only then remove the sta from the firmware.
Update the comment there along so we do have the paper trail as to when
and why this changed.
Tested on: BE200, AX210 (11ac)
Tested on: AX200. 9260, 8265, 3165 (11a)
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
Although this is not related to locking, but seems to be the right place to catch violators, given that WITNESS_WARN is already used widely in the kernel. Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D55316
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
05-summary-prefix by 'sys:'
For msdosfs, tmpfs, and ufs. Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
04-filenames_plain2 by 'sys/'
debug: Commit manually moved from "unknown" to "kernel".
The change generalizes code that was initially developed for nfs client to handle filesystems that needs to call vnode_pager_setsize() while only owning the vnode lock shared. Since vnode pager might need to trim or extend the vnode vm_object' page queue, the vnode lock for the call must be owned exclusive. This is typical for filesystems with remote authorative source of file attributes, like nfs/p9/fuse. Handle the conflict by delaying the vnode_pager_setsize() to the next vnode locking to avoid relock. But if the next locking request is in shared mode, lock it exclusively instead, perform the delayed vnode_pager_setsize() call by doing VOP_DEFAULT_SETSIZE(), and then downgrade to shared. Filesystems that opt into the feature must provide the implementation of VOP_DELAYED_SETSIZE() that actually calls vnode_pager_setsize(), and use vn_delay_setsize() helper to mark the vnode as requiring the delay call. Reviewed by: rmacklem Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55595
debug: classified in
04-filenames_plain2 by 'sys/'
Add a new tunable/sysctl (kern.ipc.splice.num_wq) which can be used to limit the number of splice worker queues as a way to limit splice cpu use. The default (-1) keeps the current behavior of running one worker for each core in the system. An administrator can set it to 0 (either via tunable, or before the first splice call via sysctl) to effectively disable splice, or some number smaller than the number of cores to limit splice thread use. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55579 Sponsored by: Netflix
debug: classified in
04-filenames_plain2 by 'sys/'
to create the 'dir' entry in METALOG Signed-off-by: Marian Cingel <cingel.marian@gmail.com> Reviewed by: imp, kevans Pull Request: https://github.com/freebsd/freebsd-src/pull/1967
debug: classified in
04-filenames_plain2 by 'sys/'
Usually after a firmware crash, we see reports of crashes in lkpi_sta_auth_to_scan(). One of the last ones was in the PR mentioned below. These crashes are often attributed as the problem while the real problem happened before. At this point try avoid the NULL pointer and to fail graciously if lvif->iv_bss (lsta) is no longer set. This way users have a chance to possibly recover using netif restart wlan0 rather than dealing with a panic. See if this helps us to better track down the original problems rather than the follow-up crash. On a debug kernel the KASSERT should normally have caught that condition as well but we see panics on page faults were the log line was there but then the lsta->ni deref has happened, which is after the KASSERT. I have not checked if this is a reordering problem or if the people reporting had IEEE80211_DEBUG on but not INVARIANTS. Sponsored by: The FreeBSD Foundation PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286219 #chttps://bugs.freebsd.org/bugzilla/show_bug.cgi?id=11 MFC after: 3 days
debug: classified in
04-filenames_plain2 by 'sys/'
Handle doomed vnodes after LK_RETRY. Rename the flag from VI_DELAYEDSSZ to VI_DELAYED_SETSIZE. Change signature of vn_lock_delayed_setsize() to take flatten values list instead of vop args structure. __predict_true() for VI_DELAYED_SETSIZE not set. Minor editings like removing tautological assert, and sorting items. Noted by: markj Fixes: https://cgit.freebsd.org/src/commit/?id=45117ffcd533ddf995f654db60b10899ae8370ec Reviewed by: markj, rmacklem Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55681
debug: classified in
04-filenames_plain2 by 'sys/'
This exports bus information about bridges to userspace via the less-privileged PCIOCGETCONF ioctl. Previously if userspace wished to query this information, it had to use direct PCI config register access which requires higher privilege. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55771
debug: classified in
04-filenames_plain2 by 'sys/'
Explain why we bump ref counts here. Sponsored by: Netflix
debug: classified in
04-filenames_plain2 by 'sys/'
Reported by: Calif.io in collaboration with Claude and Anthropic Research Reviewed by: jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55806
debug: classified in
04-filenames_plain2 by 'sys/'
debug: classified in
04-filenames_plain2 by 'sys/'
Reported by: Adam Crosser, Praetorian Reviewed by: philip Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55811
debug: classified in
04-filenames_plain2 by 'sys/'
Reported by: Adam Crosser, Praetorian Reviewed by: philip Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55812
debug: classified in
04-filenames_plain2 by 'sys/'
debug: classified in
04-filenames_plain2 by 'sys/'
When preecise option is used, the true elapsed time should also use the precise timer. This fixes the test case sleep_for.signals.pass.cpp in libcxx. Reviewed by: kib, imp Approved by: lwhsu (mentor) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55824
debug: classified in
04-filenames_plain2 by 'sys/'
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Similar to base 63d1c3c43690, suppress -Wc++20-extensions for gcc. Otherwise libc++ headers will lead to many -Werror warnings, due to our use of -Wsystem-headers, which is not officially supported upstream. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'share/mk/'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Signed-off-by: Marian Cingel <cingel.marian@gmail.com> Reviewed by: emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1947
debug: classified in
03-filenames_plain1 by
'share/mk/'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
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
debug: classified in
02-filenames_wildcards by '['.*Makefile',
'release/.*']'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
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
debug: classified in
02-filenames_wildcards by '['.*Makefile',
'release/.*']'
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
debug: classified in
02-filenames_wildcards by
'release/.*'
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
debug: classified in
02-filenames_wildcards by
'release/.*'
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
debug: classified in
02-filenames_wildcards by
'release/.*'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
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
debug: classified in
02-filenames_wildcards by
'release/.*'
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
debug: Commit manually moved from "unknown" to "build".
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: jhibbits, emaste Pull request: https://github.com/freebsd/freebsd-src/pull/1914
debug: classified in
02-filenames_wildcards by
'release/.*'
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.
debug: classified in
03-filenames_plain1 by
'share/mk/'
We actually only need the high level targets stage_files and stage_links meta.stage.mk will take care of the details.
debug: classified in
03-filenames_plain1 by
'share/mk/'
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
debug: classified in
02-filenames_wildcards by
'release/.*'
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
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766
debug: classified in
02-filenames_wildcards by
'.*Makefile'
When compiling SCTP as a module, don't compile sctp_crc32.c into the module. This avoids code and variable duplication since sctp_crc32.c is compiled into the kernel. In particular, the variable system_base_info is not duplicated. This fixes the handling of the statistic counters sctps_sendhwcrc and sctps_sendswcrc when using sctp_delayed_cksum. MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Binaries require the runtime loader to use shared libraries, and removing the runtime loader in `make delete-old` while leaving the libraries around makes it impossible to use those shared libraries. Treat rtld as a de facto dependency of shared libraries to ensure it is not removed until the corresponding shared libraries are removed. Differential Revision: https://reviews.freebsd.org/D52210
debug: classified in
03-filenames_plain1 by
'tools/build/'
Fixes: https://cgit.freebsd.org/src/commit/?id=f74f891581bc ("src.opts: Introduce MK_SOUND") Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'tools/build/'
When building VM and Cloud images with a packaged base system, install the pkg package; this makes it possible for the base system to be updated without installing pkg from the FreeBSD-ports repository. Sponsored by: Amazon
debug: classified in
02-filenames_wildcards by
'release/.*'
This testcase does not function unless the /dev/ctl/... node exists, which is created by the ctl(4) module. Require the ctl(4) module to be loaded so the test can be executed. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54518
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: asomers, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54862
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Set the MK_LLVM_LINK_STATIC_LIBRARIES knob to "yes" when building the native-xtools target. This reverts to the behaviour prior to 2e47f35be5dc. This avoids a build failure that occurs otherwise, where compilation fails looking for a libllvmprivate.so that was not built. It is unclear if this addresses the issue in all instances---some replies in the PRs indicate otherwise. Still, some report success, and in my own testing this fixed creation of a cross-compiled poudriere jail. Commit this while we continue to investigate... PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286710, https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291409 Tested by: marck, rdunkle@smallcatbrain.com Reviewed by: emaste MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=2e47f35be5dc ("Convert libllvm, libclang and liblldb into private shared libraries"). Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54815
debug: classified in
02-filenames_wildcards by
'.*Makefile'
To facilitate comparison with mtree -C generated output, keep the keywords ordered. No functional change intended. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54872
debug: Commit manually moved from "unknown" to "build".
Reviewed by: asomers Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54899
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Build fails with BHYVE_SNAPSHOT enabled on non-amd64, so add it to BROKEN_OPTIONS for these arches. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292686 Reviewed by: emaste, markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54873
debug: classified in
03-filenames_plain1 by
'share/mk/'
These warnings were already marked with -Wno-error=, but they trigger so many false positives in libc++ headers to be utterly useless for C++ code, so disable them entirely for C++. Reviewed by: imp, dim Differential Revision: https://reviews.freebsd.org/D54867
debug: classified in
03-filenames_plain1 by
'share/mk/'
GCC 15 does not like a push_back() invocation in utils::find_core()
and incorrectly believes libc++ will free a non-heap pointer. Disable
the warning to pacify GCC.
In function 'void std::__1::__libcpp_operator_delete(_Args ...) [with _Args = {void*, long unsigned int}]',
inlined from 'void std::__1::__do_deallocate_handle_size(void*, size_t, _Args ...) [with _Args = {}]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/new:298:39,
inlined from 'void std::__1::__libcpp_deallocate(void*, size_t, size_t)' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/new:311:39,
inlined from 'void std::__1::allocator<_Tp>::deallocate(_Tp*, size_t) [with _Tp = utils::fs::path]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__memory/allocator.h:132:31,
inlined from 'static void std::__1::allocator_traits<_Alloc>::deallocate(allocator_type&, pointer, size_type) [with _Alloc = std::__1::allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__memory/allocator_traits.h:314:19,
inlined from 'std::__1::__split_buffer<_Tp, _Allocator>::~__split_buffer() [with _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>&]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__split_buffer:365:31,
inlined from 'std::__1::vector<_Tp, _Alloc>::pointer std::__1::vector<_Tp, _Alloc>::__push_back_slow_path(_Up&&) [with _Up = utils::fs::path; _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/vector:1504:1,
inlined from 'void std::__1::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/vector:1526:34,
inlined from 'utils::optional<utils::fs::path> utils::find_core(const fs::path&, const process::status&, const fs::path&)' at contrib/kyua/utils/stacktrace.cpp:217:25:
/usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/new:274:38: error: 'void operator delete(void*, size_t)' called on pointer '<unknown>' with nonzero offset [24, 9223372036854775807] [-Werror=free-nonheap-object]
274 | __builtin_operator_delete(__args...);
| ^
In function 'void* std::__1::__libcpp_operator_new(_Args ...) [with _Args = {long unsigned int}]',
inlined from 'void* std::__1::__libcpp_allocate(size_t, size_t)' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/new:289:31,
inlined from '_Tp* std::__1::allocator<_Tp>::allocate(size_t) [with _Tp = utils::fs::path]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__memory/allocator.h:118:54,
inlined from 'constexpr std::__1::__allocation_result<typename std::__1::allocator_traits<_Alloc>::pointer> std::__1::__allocate_at_least(_Alloc&, size_t) [with _Alloc = allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__memory/allocate_at_least.h:41:27,
inlined from 'std::__1::__split_buffer<_Tp, _Allocator>::__split_buffer(size_type, size_type, __alloc_rr&) [with _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>&]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/__split_buffer:353:49,
inlined from 'std::__1::vector<_Tp, _Alloc>::pointer std::__1::vector<_Tp, _Alloc>::__push_back_slow_path(_Up&&) [with _Up = utils::fs::path; _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/vector:1498:47,
inlined from 'void std::__1::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = utils::fs::path; _Allocator = std::__1::allocator<utils::fs::path>]' at /usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/vector:1526:34,
inlined from 'utils::optional<utils::fs::path> utils::find_core(const fs::path&, const process::status&, const fs::path&)' at contrib/kyua/utils/stacktrace.cpp:216:25:
/usr/obj/.../amd64.amd64/tmp/usr/include/c++/v1/new:265:42: note: returned from 'void* operator new(size_t)'
265 | return __builtin_operator_new(__args...);
| ^
Reviewed by: imp, dim
Differential Revision: https://reviews.freebsd.org/D54868
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Instructions in /etc/pkg/FreeBSD.conf and elsewhere recommend putting changes in /usr/local/etc/pkg/repos/FreeBSD.conf so bring OCI containers into line as well. Reviewed by: dfr, ivy Differential Revision: https://reviews.freebsd.org/D54090 MFC after: 5 days Sponsored by: SkunkWerks, GmbH
debug: classified in
02-filenames_wildcards by
'release/.*'
We always use NO_ROOT for release artifact builds, so remove the alternate code paths. For the first step we set NO_ROOT unconditionally in cases that invoke submakes, and turn NO_ROOT being unset into an error in lover-level targets so that we can catch potential out-of-tree build scripts (or missed in-tree cases) that expect to run not-NO_ROOT builds. The second step will be to remove those entirely. Reviewed by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54179
debug: classified in
02-filenames_wildcards by
'release/.*'
Reviewed by: emaste, ziaee Differential Revision: https://reviews.freebsd.org/D54688
debug: classified in
03-filenames_plain1 by
'tools/build/'
Fixes: https://cgit.freebsd.org/src/commit/?id=f74f891581bc ("src.opts: Introduce MK_SOUND") PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291853 Sponsored by: The FreeBSD Foundation MFC after: 4 days
debug: classified in
03-filenames_plain1 by
'share/mk/'
Fixes: https://cgit.freebsd.org/src/commit/?id=d78291b0e973 ("lib/virtual_oss: don't (over)link to libsamplerate") Reported by: pkg-fallout Sponsored by: The FreeBSD Foundation MFC after: 2 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
The packages for X.Y-RELEASE are a snapshot of the quarterly branch for stable/X, i.e. typically built on X.(Y-1)-RELEASE. (The case of Y=0 is an exception for obvious reasons.) This works for most ports but not for kernel modules, which may need to be built on the release in question; this is why we have a separate "kmods" repository. Make sure that we put the packages from the kmods repository onto the mini-pkg-repo on the DVD rather than shipping unusable firmware. Reviewed by: bz MFC after: 1 week Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D52581
debug: classified in
02-filenames_wildcards by
'release/.*'
Skip this test if mqueuefs isn't loaded. Unfortunately, that will skip the entire googletest test program, including test cases that don't require mqueuefs. But the test's own skipping logic doesn't work, and we don't yet have a googletest-compatible require_kmods() function. MFC after: 2 weeks Sponsored by: ConnectWise Reviewed by: emaste, ngie Differential Revision: https://reviews.freebsd.org/D54902
debug: classified in
02-filenames_wildcards by
'.*Makefile'
No functional change, but downstream in CheriBSD this was causing a link error as the Makefile was overriding CFLAGS set via a side effect of bsd.compiler.mk. Reviewed by: bz, brooks, emaste Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54894
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54963
debug: classified in
02-filenames_wildcards by
'.*Makefile'
This change cleans up example tests for atf, googletest, plain, and TAP when MK_EXAMPLES=no. Not having this in results `kyua test -k /usr/tests/share/examples/Kyuafile` being broken on a host where the content in that directory tree is stale. I ran into that case because at some point in time in the past I had specified `MK_GOOGLETEST=no` one of my dev instances. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'tools/build/'
Having *-jail metapackage variants on the installation media allows convenient offline jail creation. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1991
debug: classified in
02-filenames_wildcards by
'release/.*'
- Add *-jail-dbg variant to dvd1 to match the non-jail variant; - Remove assertion introduced in the previous commit for consistency with existing code. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1991
debug: classified in
02-filenames_wildcards by
'release/.*'
MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'tools/build/'
MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'tools/build/'
factor(1) is only installed when MK_GAMES != no. Ergo, remove the tests when that's not true. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'tools/build/'
These tests require the tftp client, which is not installed when `MK_TFTP=no`. Remove them when that's not true. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'tools/build/'
Reviewed by: mhorne Differential Revision: https://reviews.freebsd.org/D54969
debug: classified in
02-filenames_wildcards by
'.*Makefile'
If we update Makefile.inc it may be to change the contents of these files. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54774
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Remove additional libtpool and libuutil-related files This change removes additional library files and tests orphaned in the commit referenced below. MFC with: 8b78d412a Fixes: https://cgit.freebsd.org/src/commit/?id=8b78d412a ("zfs: world changes after https://cgit.freebsd.org/src/commit/?id=89f729dcc merge")
debug: Commit manually moved from "unknown" to "build".
Remove the tpool Kyuafile as well as the test This was accidentally missed in b78806b156f78733f8d6f1e0d. Reported by: des Fixes: https://cgit.freebsd.org/src/commit/?id=b78806b15 ("Remove additional libtpool and libuutil-related files")
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
debug: moved to build because
'Need to be grouped with
b78806b156f78733f8d6f1e0d593845e5e55221e'
If the world is built and installed with WITHOUT_ZFS, then make -DBATCH_DELETE_OLD_FILES delete-old-dirs will give the error: > rmdir: /etc/zfs: Directory not empty because /etc/zfs/compatibility.d is still there. While we're here, clean out /usr/share/zfs as well. Co-authored-by: kevans Differential Revision: https://reviews.freebsd.org/D54758
debug: classified in
03-filenames_plain1 by
'tools/build/'
+ link to return(1) like the other exclusive builtins + fix alphabetical sorting of list in rendered manual MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Add opt_acpi.h to SRCS as it is required by the hyper-v pcib sources. Reviewed by: imp Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D48166
debug: classified in
02-filenames_wildcards by
'.*Makefile'
It links fine with newer binutils 2.44 (and GCC 15), so the workaround can be dropped. Reviewed by: emaste PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242109 MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55083
debug: classified in
02-filenames_wildcards by
'.*Makefile'
`make vm-image` calls mk-vmimage.sh, which supports
`-c CONFFILE`. This file gets sourced before building the image.
One example of how to use it is to define
vm_extra_filter_base_packages() to filter the list of packages
installed into the VM image:
# vm-nodbg32.conf
vm_extra_filter_base_packages() {
grep -v -E '(-dbg|lib32)'
}
$ make VM_IMAGE_CONFIG=path/to/vm-nodbg32.conf \
VMFORMATS=raw \
-DWITH_VMIMAGES \
vm-image
Signed-off-by: Pat Maddox <pat@patmaddox.com>
Reviewed by: cperciva
Closes: https://github.com/freebsd/freebsd-src/pull/1993
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: lwhsu, emaste Differential Revision: https://reviews.freebsd.org/D55085
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Since the change [1], this is not required anymore. This change partially reverts commit 8a847947153e. [1] 4012b63889e4 qlnxe: Let ether_ioctl() handle SIOCSIFADDR ioctl Reviewed by: kbowling MFC after: 5 days Differential Revision: https://reviews.freebsd.org/D54889
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Running `pkg -d` in pkg-stage.sh results in multiple GB of network
traffic being written into the log files, which is less than helpful
when it comes to tracking down build failures. Remove the -d flag.
MFC after: 5 days
X-MFC-note: The code in 15 has diverged from 14, but the flag is
there, just in a different place.
debug: classified in
02-filenames_wildcards by
'release/.*'
With PCI enabled and USB still disabled add knobs to (i) enabled them manually in the common Makefile.inc and (ii) add bus attachment depend knobs where needed to enable them in individual drivers. For now the focus is in 7921 and 7925. Sponsored by: The FreeBSD Foundation MFC atfer: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
The common Makefile.inc had the .PATH set for the common code. That .PATH is only needed for the mt76_core module, which shares code for all other drivers. We leave the COMMONDIR variable defined in Makefile.inc as we need it for CFLAGS+= -I for each driver but migrate the .PATH to avoid drivers picking up the wrong files. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
This is required for GCC which uses libcalls for outlined atomics. Reviewed by: dim Differential Revision: https://reviews.freebsd.org/D55157
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Given USB in theory compiles add it to the Makefile. The upstream support was never finished and I see little chances it ever will be so keep USB disabled by default. MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
In addition to PCIe we will support USB and also prepare for SDIO (still disabled locally). The module SRCS are split up into a common part, which we always add. All three bus parts are guarded by a local variable in the Makefile. In addition the PCI parts require PCI to be compiled into the kernel. We add that check in case of, e.g., SoCs with SDIO but no PCI, which may not have PCI in the kernel config and thus the module would fail to attach. USB has no additional check as it is fully loadable and does not have to be in a kernel config. SDIO depends on an MMCCAM-enabled kernel but is otherwise loadable. While we could, we are not splitting the various bus attachments into individual modules as we generally do not do that in FreeBSD. [1] Sponsored by: The FreeBSD Foundation MFC after: 3 days Discussed with: imp and jhb (2022, 2024), see also 17732dd8f01b [1] OKed by: imp (KERN_OPTS checks initially suggested by jhb) Differential Revision: https://reviews.freebsd.org/D55022
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
As with LinuxKPI-based wireless drivers, e.g., rtw88, PCI depends on PCI being compiled into the kernel, SDIO will depend on MMCCAM in the kernel once supported, and USB can always be loaded. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
libsys required ARM EABI unwind symbols like __aeabi_unwind_cpp_pr0. These symbols are normally provided by libc, but if a binary does not link libc, the symbol ends up not being resolved. Among other problems, this prevented gcc14 and newer from building on arm. Add the relevant symbols as hidden symbols into libsys to avoid this problem. (this patch was posted by jrtc27 who has asked me to move it along) PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292539 Tested by: fuz, Mark Millard <marklmi26-fbsd@yahoo.com> Reviewed by: mmel Approved by: markj (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55255
debug: classified in
02-filenames_wildcards by
'.*Makefile'
debug: classified in
03-filenames_plain1 by
'share/mk/'
A separate EVP_CIPHER_CTX_get_app_data.3 was added in the OpenSSL 3.5.5 import, but the link to EVP_EncryptInit.3 was still being installed which stomped on the file and created inconsistent entries in the METALOG. Reviewed by: emaste Found by: package_check script in Cirrus-CI Fixes: https://cgit.freebsd.org/src/commit/?id=1731fc70f734 ("OpenSSL: update vendor sources to match 3.5.5 content") Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D55332
debug: classified in
02-filenames_wildcards by
'.*Makefile'
OptionalObsoleteFiles: Add figpar to dialog section MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=15d781b53233 ("lib: Gate libfigpar under MK_DIALOG") Reviewed by: jhb, emaste Differential Revision: https://reviews.freebsd.org/D55330
debug: classified in
03-filenames_plain1 by
'tools/build/'
OptionalObsoleteFiles: Add missing figpar MLINKS MFC after: 3 days Fixes: https://cgit.freebsd.org/src/commit/?id=bc6c827078b7 ("OptionalObsoleteFiles: Add figpar to dialog section")
debug: classified in
03-filenames_plain1 by
'tools/build/'
Reviewed by: mckusick Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D55336
debug: classified in
02-filenames_wildcards by
'.*Makefile'
MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'tools/build/'
MFC After: 1 week
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Effort: CHERI upstreaming Sponsored by: Innovate UK Reviewed by: kib Co-authored-by: Alfredo Mazzinghi <am2419@cl.cam.ac.uk> Co-authored-by: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk> Differential Revision: https://reviews.freebsd.org/D55308
debug: classified in
03-filenames_plain1 by
'tools/build/'
The intent of the currect code is to ignore anything under /usr/lib/debug/boot/*. But we also should make sure that /usr/lib/debug/boot directory is also ignored and is not marked obsolete. If we don't do that, `make DBATCH_DELETE_OLD_FILES delete-old` will try to rmdir(1) this directory, which will cause an error, since /usr/lib/debug/boot may have nested directories like kernel/ and modules/. Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55077
debug: classified in
03-filenames_plain1 by
'tools/build/'
If a package plist only contains directories, but no files, do not create the package. This fixes an issue where setting "package=foo" in mtree causes the "foo" package to always be created, even if nothing else installs in that package, because the mtree entry is always added to the plist. This most often happens: * With architecture-specific directories, because mtree can't install a directory conditionally based on architecture, and * With packages that are completely empty when a particular src.conf knob is disabled, because mtree will still create the directories. Although it's theoretically possible that we might want to create a package that only contains directories, there are no such packages today. MFC after: 2 weeks (stable/15 only) Reviewed by: manu, des Differential Revision: https://reviews.freebsd.org/D55412 Sponsored by: https://www.patreon.com/bsdivy
debug: classified in
02-filenames_wildcards by
'.*Makefile'
* Tag related directories with package=lp * Make the examples/printing directory conditional on MK_LPR * Make the hosts.lpd(5) manual page conditional on MK_LPR MFC after: 3 days
debug: Commit manually moved from "unknown" to "build".
No need to have 4 separate manpages for these functions. Reviewed by: ziaee, rpokala, des Approved by: rpokala, des Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55360
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Having these packages available on release media may help users who need to sneakernet other packages (e.g. firmware) from systems running Linux or Windows. Suggested by: vladlen, ziaee MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'release/.*'
MFC after: 3 weeks
debug: classified in
02-filenames_wildcards by
'.*Makefile'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293423 MFC after: 3 days Requested by: bms
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Both clang and gcc's stddef.h are designed to be included multiple times with different combinations of __need_* macros defined (e.g __need_size_t). Remove the #pragma once to accommodate this, ptraddr_t is guarded by _PTRADDR_T_DECLARED anyways. Also use __SIZE_TYPE__ instead of size_t since it's not guaranteed to be defined. Reviewed by: brooks, imp, kib Differential Revision: https://reviews.freebsd.org/D55453
debug: classified in
03-filenames_plain1 by
'tools/build/'
NO_SHARED is the proper way to declare linking a program without shared libraries. Obtained from: Hewlett Packard Enterprise MFC after: 1 week Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D44761
debug: classified in
02-filenames_wildcards by
'.*Makefile'
This was part of review D44761. It was separated into another commit for better clarity. Obtained from: Hewlett Packard Enterprise MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D44761
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reported by: wosch
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Make it consistent with the other lifecycle scripts, thus making it more findable. Reviewed by: ziaee Signed-off-by: Pat Maddox <pat@patmaddox.com> Closes: https://github.com/freebsd/freebsd-src/pull/2047
debug: classified in
02-filenames_wildcards by
'.*Makefile'
This matches non-pkgbase behavior as installworld/installkernel skip the debug bits if these knobs are set. MFC after: 1 week Sponsored by: Chelsio Communications Reviewed by: cperciva Differential Revision: https://reviews.freebsd.org/D55572
debug: classified in
02-filenames_wildcards by
'release/.*'
Requested by: des Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55598
debug: classified in
03-filenames_plain1 by
'share/mk/'
Before this change, `make test-includes` (run as part of buildworld)
would place test files in the current directory, which would clutter up
git clones. Run `make obj` beforehand to ensure that the files are put
in `${.OBJDIR}` instead of `${.CURDIR}`. This helps cut down on the
noise significantly when running commands like `git status`.
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D55499
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Prior to commit 6973701a00e3 ("1. Make the BSD version of cpio the
default [1]") GNU cpio was installed unconditionally. The BSD_CPIO
option was added when we introduced the BSD licensed, libarchive-based
cpio, to support installation of GNU cpio, libarchive cpio, or both.
GNU cpio was removed long ago and there is no longer a need for this
option. We can just install BSD cpio unconditionally.
Reviewed by: des
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55467
debug: classified in
05-summary-prefix by
'src\..*\.mk:'
MFC after: 1 week
debug: classified in
02-filenames_wildcards by
'.*Makefile'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293545 Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Because of this setting we were still using ELF Tool Chain tools for
buildworld. The sets of binary utilities are largely equivalent and
this went unnoticed after commit 1cae7121c667 ("Enable LLVM_BINUTILS
by default").
This was discovered recently because ELF Tool Chain objcopy produces
standalone debug files without phdrs and this caused an issue with a
3rd party ELF parser [1]. Remove the forced setting so that we use
LLVM's binutils to build the system.
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=33876
Reviewed by: imp, jhb
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55650
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Liveness is often more important than minor packaging glitches (which might well be the fault of a prior commit.) Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D55481
debug: classified in
03-filenames_plain1 by
'.cirrus.yml'
build: Retire LLVM_CXXFILT option
The LLVM_CXXFILT option was added when we used ELF Tool Chain tools by
default. ELF Tool Chain's c++filt failed to demangle some symbols, so
we added a special case to install LLVM's version and enabled it by
default.
The rest of the LLVM tools are now used by default, as of commit
9fa94e1c099d ("Turn on WITH_LLVM_CXXFILT by default"). Simplify the
build logic by removing a special case and just include llvm-cxxfilt
with the rest of the LLVM utilities.
Reviewed by: dim
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55654
debug: classified in
05-summary-prefix by 'build:'
usr.bin: Exclude ELF Tool Chain cxxfilt build when LLVM_BINUTILS is enabled (which is the default). PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293610 Fixes: https://cgit.freebsd.org/src/commit/?id=5d757312ad59 ("build: Retire LLVM_CXXFILT option") Sponsored by: The FreeBSD Foundation
debug: classified in
02-filenames_wildcards by
'.*Makefile'
llvm-cxxfilt: Install as c++filt only with LLVM_BINUTILS When building WITHOUT_LLVM_BINUTILS /usr/bin/c++filt is the one from ELF Tool Chain. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293610 Fixes: https://cgit.freebsd.org/src/commit/?id=5d757312ad59 ("build: Retire LLVM_CXXFILT option") Sponsored by: The FreeBSD Foundation
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D55655
debug: classified in
03-filenames_plain1 by
'share/mk/'
Reindent the features as well to be friendly to long feature names. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D55656
debug: classified in
03-filenames_plain1 by
'share/mk/'
GNU binutils 2.17.50 is the last GPLv2 version, and we retained support
in FreeBSD while it was part of the in-tree toolchain. The last parts
of binutils 2.17.50 were removed in commit 74e8d41e0ac8 ("Retire
BINUTILS and BINUTILS_BOOTSTRAP options") and there is no longer a need
for the build infrastructure.
We retain build-id and ifunc in LINKER_FEATURES unconditionally for now,
as they may be tested by 3rd-party Makefiles. We can however stop
testing for them in the tree.
Reviewed by: imp
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55674
debug: classified in
03-filenames_plain1 by
'share/mk/'
Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Signed-off-by: Perdixky <3293789706@qq.com> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2063
debug: classified in
03-filenames_plain1 by
'tools/build/'
strnlen() doesn't seem to cope well with a length argument such that string pointer plus length overflows past the end of the address space. Reviewed by: fuz MFC after: 1 week PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293353, https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293296 Differential Revision: https://reviews.freebsd.org/D55714
debug: classified in
02-filenames_wildcards by
'.*Makefile'
We have to switch back to the previous rule once the temporary build fix has been replaced with a permanent fix. MFC after: 1 week See also: 2a4e3112c811b9892e14e15cfd23538e7e47329c PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293353, https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293296
debug: classified in
03-filenames_plain1 by
'tools/build/'
This fixes recursed builds not having meta mode enabled for them which disabled dependency and and command change tracking. We only want common objects marked .NOMETA when recursing, not non-common objects. The common code expects _PROGS_COMMON_SRCS does not contain the prog source or else it will be marked .NOMETA. Add comments explaining the intent and cases being covered. Fixes: https://cgit.freebsd.org/src/commit/?id=4ea5e107b1 ("<bsd.progs.mk>: Allow using SRCS for common sources") Differential Revision: https://reviews.freebsd.org/D55711 Reviewed by: vexeduxr, sjg
debug: classified in
03-filenames_plain1 by
'share/mk/'
Fixes: https://cgit.freebsd.org/src/commit/?id=9a44e42a2b8f ("Retire GNU diff3") Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D55423
debug: classified in
02-filenames_wildcards by
'.*Makefile'
These features are available in all supported linkers, and we can expect that they'll be supported by any GNU-compatible linker that we'd use to link FreeBSD. Reviewed by: imp, kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55676
debug: classified in
05-summary-prefix by 'build:'
Previously they were hard links. This change will support future packaging changes by decoupling the prefixed (e.g. llvm-ar) and unprefixed (e.g. ar) names. Reviewed by: dim, ivy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55693
debug: classified in
02-filenames_wildcards by
'.*Makefile'
EC2: Don't use unicode in boot loader The boot loader menu is disabled by default in EC2, but if it is ever turned on, the default (unicode) output breaks EC2's web interface to the serial console. Set loader_menu_frame="ascii" instead. MFC after: 3 days Sponsored by: Amazon
debug: classified in
02-filenames_wildcards by
'release/.*'
EC2: Fix comment re avoiding unicode We're avoiding *unicode*, not avoiding *ascii*. Reported by: marck Fixes: https://cgit.freebsd.org/src/commit/?id=277830b4d3ae ("EC2: Don't use unicode in boot loader") MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'release/.*'
We are now one quarter into the 21st century.
debug: classified in
05-summary-prefix by
'copyright:'
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
debug: classified in
03-filenames_plain1 by
'tools/tools/git/'
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
debug: classified in
03-filenames_plain1 by
'tools/tools/git/'
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
debug: classified in
03-filenames_plain1 by '['.github/',
'MAINTAINERS']'
Reviewed by: imp Obtained from: CheriBSD Sponsored by: AFRL, DARPA Pull Request: https://github.com/freebsd/freebsd-src/pull/1973
debug: classified in
03-filenames_plain1 by
'.github/'
debug: classified in
03-filenames_plain1 by
'MAINTAINERS'
debug: classified in
03-filenames_plain1 by
'.github/'
Add a few tweaks to clarify the author and signed-off-by lines. Add clarifying note about the style checker. Refine the AI statements for clarity, but these will need to be revised once the AI policy has been completed. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'CONTRIBUTING.md'
Remove some stale entries, preen some others. Longer term, we need a better format. Also, if there's mistakes, let us know: we want it to be useful to people seeking review, not be perscriptive about who can do what. Reviewed by: srcmgr@
debug: classified in
03-filenames_plain1 by
'MAINTAINERS'
debug: classified in
03-filenames_plain1 by
'.github/'
debug: classified in
03-filenames_plain1 by
'.github/'
debug: classified in
03-filenames_plain1 by
'.github/'
Fixes: https://cgit.freebsd.org/src/commit/?id=1f9da4793cb1, https://cgit.freebsd.org/src/commit/?id=dd0ec030f8fd MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54780
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292962 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'share/misc/committers-ports.dot'
Fixes: https://cgit.freebsd.org/src/commit/?id=670b568ec1c3 ("capsicum-test: Move out of contrib") Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by '['.github/',
'MAINTAINERS']'
debug: classified in
03-filenames_plain1 by '['.github/',
'MAINTAINERS']'
Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Sponsored by: The FreeBSD Foundation Pull Request: https://github.com/freebsd/freebsd-src/pull/2010
debug: classified in
03-filenames_plain1 by
'CONTRIBUTING.md'
Fixes: https://cgit.freebsd.org/src/commit/?id=3fde39073c ("shar: remove from the tree [...]")
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
Make the guidelines more prescriptive (while remaining clear that Pull Requests are merely one, not-preferred method for submitting changes). Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55089
debug: classified in
03-filenames_plain1 by
'CONTRIBUTING.md'
It needs the .gz suffix. Fixes: https://cgit.freebsd.org/src/commit/?id=2ace05b65a2c9 ("pfind(9): follow-up fixes and improvements")
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
These were moved out of man/man4/arm into man/man4. Add entries to catch the stale copies. Fixes: https://cgit.freebsd.org/src/commit/?id=15c79c6fa608 ("man4: move allwinner pages and logic to a standard place")
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
When I removed the Realtek rtww8x firmware from base I missed to add rtw88fw.4 to ObsoleteFiles.inc [1]. While adding this, also remove a leftover reference in rtw88.4. Reported by: Herbert J. Skuhra (herbert gojira.at) [1] Fixes: https://cgit.freebsd.org/src/commit/?id=cf94672363d6 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
Add `Discussed with:`, `Closes:`, `MFC to:`, and `Co-authored-by:` to the commit message template from the committer's guide. While here, wordsmith these to fit on standard console. Reported by: lwhsu Discussed with: emaste, jlduran Reviewed by: vexeduxr Differential Revision: https://reviews.freebsd.org/D54707
debug: classified in
03-filenames_plain1 by
'tools/tools/git/'
Following up ziaee's pattern, and add andy's line. I'm not sure whether the original commit bit creation date should be used, and use commit bit re-activation date for now. MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'share/misc/committers-doc.dot'
Since we dropped support for profile libraries, all optional entries for them are now non-optional. Most of them were already duplicated there, a few were not. MFC after: 3 days Reviewed by: jhb, emaste Differential Revision: https://reviews.freebsd.org/D55329
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
Sponsored by: Arm Ltd
debug: classified in
03-filenames_plain1 by
'.github/'
Fixes: https://cgit.freebsd.org/src/commit/?id=b78806b156f7 ("Remove additional libtpool and libuutil-related files")
debug: classified in
03-filenames_plain1 by
'ObsoleteFiles.inc'
In the email address heuristic, assume guest-* are external contributors. It's a new convention, apparently. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'tools/tools/git/'
If this eventually poses a problem for unsupported branches we can fix them directly. Sponsored by: Innovate UK Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D53838
debug: classified in
03-filenames_plain1 by
'.github/'
When moving from Github to Phabricator, request that the original github pull request be closed with the URL of the Phab. This cuts down on clutter and helps us track things better. Sponsored by: Netflix
debug: classified in
03-filenames_plain1 by
'CONTRIBUTING.md'
Ignore more files generated by toolchains, e.g., `.pico`, etc. Ignore the `.DS_Store` produced by macOS as well because all they provide is additional file metadata that shouldn't be committed to `git`. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55096
debug: Commit manually moved from "unknown" to "internal".
Update Mentor and Mentee Information to follow step 5 of the Committers Guide. Reviewed by: osa, vvd (mentors) Approved by: osa (mentor) Differential Revision: https://reviews.freebsd.org/D55457
debug: classified in
03-filenames_plain1 by
'share/misc/committers-ports.dot'
This is a simple too to remove all comments, extra whitespace and other unnecessary things that may have creative content. What remains can be just the minimal interface described by the header file. When used with care, this can mechanically sanitize files, like some device tree bindings file, that are only #defines that are meant to be used in multiple context (the dts files and in C code to interpret the resulting dtb). Sponsored by: Netflix Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55087
debug: classified in
03-filenames_plain1 by
'tools/tools/git/'
FreeBSD developers use different text editors or sometimes use GUI editors such as VSCode or Zed on different platforms for convinence. However, there is lack of unified config for those editors to follow style(9) including indent rules. Although most "modern" editors support .editorconfig out of box, basic editors such as vim needs a plugin for autoloading .editorconfig file. Sponsored by: The FreeBSD Foundation Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2024
debug: Commit manually moved from "unknown" to "internal".
debug: classified in
03-filenames_plain1 by
'share/misc/bsd-family-tree'
This adds my date and place of birth to FreeBSD's calendar file, so I can let the system(tm) remind me when that counter increments. Confirmed to be working with the following command: ``` $ calendar -f usr.bin/calendar/calendars/calendar.freebsd -t 18.08 Aug 18 Pierre Pronchery <khorben@FreeBSD.org> born in Nantes, France, 1982 [...] ``` Reviewed by: philip (mentor) Approved by: philip (mentor) Differential Revision: https://reviews.freebsd.org/D55825
debug: classified in
03-filenames_plain1 by
'usr.bin/calendar/calendars/calendar.freebsd'
Update Mentor and Mentee Information. Reviewed by: osa, fluffy (mentors) Approved by: fluffy (mentor) Differential Revision: https://reviews.freebsd.org/D55839
debug: classified in
03-filenames_plain1 by
'share/misc/committers-ports.dot'
Update Mentor (thierry) and Mentee (laurent) Information. Reviewed by: thierry (mentor) Approved by: thierry (mentor) Differential Revision: https://reviews.freebsd.org/D55856
debug: classified in
03-filenames_plain1 by
'share/misc/committers-ports.dot'
SPDX. Update to use argparse rather than OptionParser (now deprecated).
debug: classified in
03-filenames_plain1 by
'tools/test/'
In exercise mode we collect data for every available counter on a program and keep all of that in a directory in /tmp.
debug: classified in
03-filenames_plain1 by
'tools/test/'
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
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
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
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
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
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
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
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
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
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
debug: classified in
03-filenames_plain1 by
'tools/test/'
debug: classified in
03-filenames_plain1 by
'tools/test/'
Reported by: Jenkins Reviewed by: kp, ngie MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54549
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
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
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
While we're at it, switch to simple waiting from communicate() calls.
debug: classified in
03-filenames_plain1 by
'tools/test/'
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
debug: Commit manually moved from "unknown" to "tests".
syslogd/tests: Use a helper function to log from within a jail This is just for consistency with all other logger(1) invocations, which happen from the syslogd_log() function. No functional change intended. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54778
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
syslogd/tests: Address races I occasionally see failures in the syslogd test suite. The problem is that the tests are racy: they send a message using logger(1), then immediately check whether the message was logged to a log file. If the syslogd instance under test doesn't get a chance to run before the second step, the test fails. This change reworks things to avoid the race while minimizing the amount of time sleeping. 1) Each test uses a single logfile, so have them use a new common variable, SYSLOGD_LOGFILE, instead of something test-specific. 2) In syslogd_start(), if the configuration references SYSLOGD_LOGFILE, wait for it to be created by syslogd before returning. 3) Add a helper syslogd_check_log(), to check for a given log entry in the last line of SYSLOGD_LOGFILE, instead of using atf_check directly. 4) In syslogd_check_log(), poll the logfile until the desired log entry appears, or the test times out. With this change, I was able to run the tests 1000 times in a loop with 4-way parallelism without seeing any test failures. Without the change I usually get a failure within 10 loops. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54779
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
syslogd/tests: Improve loopback interface initialization - In syslogd_start(), assign the lo0 address in the specified jail. - Use the correct netmask. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54799
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
syslogd/tests: Fix flakiness in forwarding tests syslogd_start() waits for the local log socket to appear before returning, to ensure that the daemon is ready to handle log messages. Some tests start two daemons, so by default the socket already exists when the second daemon is started, so syslogd_start() returns early. The test subsequently sends a message to this second daemon, which sometimes isn't ready. Define a separate log socket for the second daemon. Add a check to syslogd_start() to help catch this type of bug. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54800
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: classified in
03-filenames_plain1 by
'tools/test/'
debug: classified in
03-filenames_plain1 by
'tools/test/'
Add tests for mount_fusefs's new -o auto_unmount feature, recently added by arrowd. MFC with: 10037d0978f "fusefs: Implement support for the auto_unmount"
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Most of these tests create a md(4) device backed by a makefs-generated image, then import the pool, using the md device as a pool vdev. When a test finishes, it destroys the pool, then destroys the md device. Once in a while md device destruction fails with EBUSY. This happens when a GEOM consumer is holding the device open; kern_mddetach_locked() simply fails if any consumers are present. zpool destruction is synchronous so ZFS is innocent, rather, the problem seems to be that GEOM re-tastes the device after the zpool reference goes away. This operation creates a transient reference that causes the spurious failure. Use "mdconfig -o force" to work around this. MFC after: 2 weeks
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
MFC With: 09984871d8caff9263b955a94bb9fb5354af1b4c Sponsored by: ConnectWise
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
MFC With: 5c2ee618d5ec21f110c4da40e9f17833b2ab8b76 Sponsored by: ConnectWise
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
MFC With: 4d707825bf62ee73a32b615846eff9c4a9bda538 Sponsored by: ConnectWise
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Tests should declare their dependencies rather than testing for them at runtime. Reviewed by: igoro, kp, glebius MFC after: 2 weeks Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54846
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
First problem is a trivial race that the client thread doesn't see updated c.sbytes. Second problem applies only to the truncate test. On a machine with huge default buffer sizes, there is a chance that sendfile(2) will fill both buffers with amount of data that is larger than the size we plan to truncate. To minimise chances for this scenario, increase file size and truncate it less aggressively, also try to decrease buffer sizes.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Google developed the Capsicum unit test suite[1] as part of the Capsicum-Linux[2] project, based on unit tests that existed in FreeBSD and unit tests developed as part of the initial Capsicum-Linux port. Capsicum-Linux was archived as of October 31, 2022 and is no longer being maintained. FreeBSD is currently the only consumer of and contributor to the test suite. Move the src into tests/sys/capsicum to simplify ongoing maintenance. The makefiles were deleted as we (continue to) use the existing bespoke FreeBSD Makefile, and CONTRIBUTING.md was removed as the Google CLA is no longer applicable. [1] https://github.com/google/capsicum-test [2] https://github.com/google/capsicum-linux Reviewed by: asomers, oshogbo Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54917
debug: Commit manually moved from "unknown" to "tests".
touch: Tests for -h flag Reviewed by: kevans Approved by: kevans Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54836
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
touch: Test for -a flag Reviewed by: kevans Approved by: kevans Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54852
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
touch: Test for -m flag Reviewed by: kevans Approved by: kevans Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54853
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
No functional change intended. MFC after: 1 week Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
When kyua runs a test, it creates a temp directory and sets $HOME to point to it. Tests are run with the cwd set to that temp directory. When a process attaches to a jail, its cwd is set to the root of the jail. Modify atf_python to cd to $HOME instead, so that it's easier for tests to share files. Reviewed by: zlei, ngie MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54971
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Mainly, avoid reusing the name of one of the functions we should be testing (but aren't) for local variables. Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55054
debug: classified in
03-filenames_plain1 by
'lib/libc/tests/'
MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55115
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55153
debug: Commit manually moved from "unknown" to "tests".
debug: classified in
03-filenames_plain1 by
'tools/test/'
debug: classified in
03-filenames_plain1 by
'tools/test/'
Reviewed by: christos Approved by: lwhsu (mentor) Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55221
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
Also check the IPv6 pass/block numbers. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291763 MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
The ATF tests work by first running the test program with an invalid flag, which causes it to print an error message, a summary of options, and a list of available test cases. Switch to the new -l option which simply prints the list, and simplify the awk script used to parse the output. No functional change. MFC after: 1 week
debug: Commit manually moved from "unknown" to "tests".
Reviewed by: zlei, ngie MFC after: 1 week Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54972
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
The -r flag is not required to compare two directories; it is only required to compare them recursively, i.e. descend into their common subdirectories. Adjust tests that use -r needlessly, and adjust the dirloop test to verify that these two cases remain distinct. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55262
debug: classified in
02b-filenames_wildcards2 by
'usr.bin/.*/tests/.*'
pdrfork(2) tests: RFPROCDESC|RFPROC are required Tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
pdrfork(2) tests: do not rely on (int *)-1 being invalid address Explicitly mmap guard and use it as the invalid address instead. Tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
pdrfork(2) tests: catch runaway child for EFAULT test Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
pdrfork(2) tests: split basic_usage into pdrfork(2) call itself, and basic_usage_tail() that checks the pdrfork(2) results. Tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
pdrfork(2) tests: should wait for the child to exit Tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
pdrfork(2) tests: enable on x86 Use pfrfork_thread(3) instead of pdrfork(RFSPAWN) to make tests working on x86. Tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55306
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Explicitly mmap guard and use it as the invalid address instead. MFC after: 1 week
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Explicitly mmap guard and use it as the invalid address instead. MFC after: 1 week
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Now that this project is part of freebsd-src, it no longer needs to be portable. Remove Linux-only tests, cross-os compatibility code, and compatibility with older FreeBSD versions. Leave in place some originally Linux-only tests that could now be ported to FreeBSD, like the pipe2 tests. Sponsored by: ConnectWise Reviewed by: oshogbo Differential Revision: https://reviews.freebsd.org/D54985
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Here we have two interface addresses sharing a v6 prefix with finite lifetime. The intent was to make sure that adding the second address didn't cause the prefix's valid lifetime to drop from 20s to 10s, but of course, while the test is running it may drop from 20s to 19s, causing the test to fail spuriously. Relax the check a bit to avoid this. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293152 Fixes: https://cgit.freebsd.org/src/commit/?id=74999aac5eff ("in6: Modify address prefix lifetimes when updating address lifetimes") MFC after: 1 week Sponsored by: Klara, Inc.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
The test sends RAs in order to test SLAAC handling in another host. The router needs to also set net.inet6.ip6.forwarding=1, otherwise NAs sent from it have the ROUTER flag clear, and upon receiving such an NA the host will automatically delete routes learned from the router. Fixes: https://cgit.freebsd.org/src/commit/?id=feda329622bc ("netinet6 tests: Add a regression test for default router handling") MFC after: 1 week Sponsored by: Klara, Inc.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
There were several problems: o Using 'netstat -B' is not a reliable way to make sure that all tcpdumps have attached to bpf(4). The problem is that tcpdump (via libpcap) does several ioctl(2)s after the attach including two BIOCSETF. Each of them flushes the input buffer. So we can see tcpdump attached in 'netstat -B' and start sending packets and the packet will be captured by bpf(4) before BIOCSETF and freed and tcpdump won't read anything. Instead of using netstat(1), use ps(1) and make sure each tcpdump is blocked on the "bpf" wait channel, which guarantees it is done with ioctl(2)s and is now blocked in read(2). o Using 'nc -w 0' sets timeout not only on the connect(2) (as documented) but also on poll(2), which is not documented. There is a race in shell that will make stdin not yet filled by 'echo foo' when nc(1) does poll(2). With zero timeout, this poll(2) will immediately return and nc will exit. o The waiting loop had two errors: using wrong variable name as well as invoking a subshell, that actually can't wait on the pid. o The reading tcpdump was lacking '-q' option, that prevents any protocol interpretations. Sometimes, when random port chosen by nc(1) would match some well-known (to tcpdump) port, the output would differ from the expected. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293241
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
This fixes INET feature detection with kernel configs that do not include the kern.conftxt sysctl, such as riscv64 currently[0]. [0] https://ci.freebsd.org/view/Test/job/FreeBSD-main-riscv64-test/16514/testReport/usr.sbin.syslogd/syslogd_forwarded_format_test/O_flag_bsd_forwarded_legacy/ Reviewed by: markj Approved by: emaste (mentor) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55383
debug: classified in
02b-filenames_wildcards2 by
'usr.sbin/.*/tests/.*'
Replace the somewhat perfunctory NetBSD tests with our own. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: bnovkov, kevans Differential Revision: https://reviews.freebsd.org/D55482
debug: classified in
03-filenames_plain1 by
'lib/libc/tests/'
Including examples in Cyrillic suggested by kib@ Differential Revusion: https://reviews.freebsd.org/D55364
debug: classified in
02b-filenames_wildcards2 by
'bin/.*/tests/.*'
debug: classified in
03-filenames_plain1 by
'tools/test/'
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
With RSS the epair(4) may reorder packets making the test flaky. See net/if_epair.c:epair_select_queue().
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
debug: classified in
03-filenames_plain1 by
'tools/test/'
debug: classified in
03-filenames_plain1 by
'tools/test/'
system(3): Address test robustness issue Don't assume that SIGINT and SIGQUIT are set to SIG_DFL at the start of the test. Instead, retrieve their current dispositions and verify that they are restored at the end of the test. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55709
debug: classified in
03-filenames_plain1 by
'lib/libc/tests/'
system(3): Fix brain glitch in previous commit We were saving SIGINT twice instead of SIGINT and SIGQUIT. Also restore original order of operations (SIGINT then SIGQUIT), which matches the order in which they're discussed in the POSIX description of system(3). MFC after: 1 week Sponsored by: Klara, Inc. Fixes: https://cgit.freebsd.org/src/commit/?id=48368f702423 ("system(3): Address test robustness issue")
debug: classified in
03-filenames_plain1 by
'lib/libc/tests/'
Provide sendme_locked_wait() for a common pattern. Not functional change.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
The read of c.sbytes needs to be synchronized with mutex. The problem was fixed for 'truncate' and 'grow' with 8a9508563542, but these two suffer from the same problem. Provide require_sbytes(), a locked wrapper around ATF_REQUIRE() to reduce copy and paste. Submitted by: olivier Differential Revision: https://reviews.freebsd.org/D55781
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55802
debug: Commit manually moved from "unknown" to "tests".
These could go in other categories, but it's more clear if they're here instead.
We use the return value of the callback to track the number of bytes written. We use it to determine if a group of characters should be prepended with a whitespace. This way, we never add a trailing whitespace. We need to pay attention to the return value of the callback: if it is negative, it's an error and we return immediately. Otherwise, we would decrease the number of written bytes and possibly make it negative. Reviewed by: bz, christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51558
debug: classified in 01-style
by '[wW]hitespace'
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
debug: classified in 01-style
by '[wW]hitespace'
MFC after: 1 week
debug: classified in 01-style
by '[tT]ypo'
Fixes: https://cgit.freebsd.org/src/commit/?id=a37825313f62 (Fix mdoc typos for emails, tag spdx) MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
debug: classified in 01-style
by '[sS]tyle'
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
debug: classified in
03-filenames_plain1 by 'bin/'
debug: Commit manually moved from "userland" to "style".
debug: classified in 01-style
by '[tT]ypo'
Reorder macro definitions.
debug: classified in 01-style
by '[sS]tyle'
Reviewed by: asomers, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54592
debug: classified in 01-style
by '[sS]tyle'
No functional change intended. MFC after: 1 week Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in 01-style
by '[tT]ypo'
Some out of order chars.
debug: classified in 01-style
by '[tT]ypo'
No functional change. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in 01-style
by '[wW]hitespace'
Also fix some bogus libxo format strings in mroute6.c, and close a couple of lists instead of opening them twice. Fixes: https://cgit.freebsd.org/src/commit/?id=ade9ccfe211a ("Convert netstat to use libxo.") MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc.
debug: classified in 01-style
by '[wW]hitespace'
Many standard C++ headers do not have the .h file extension: some, such as `iostream`, lack it; others have a .hpp file extension. Moreover, some projects (like ATF/Kyua) also contain .ipp files, which are C++ "interface" files. Relax the regular expression to ensure that non-traditional C "system" headers, C++ headers, etc, with angle brackets are sorted before "local" headers. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54401
debug: classified in 01-style
by '[sS]tyle'
- s/arithmatic/arithmetic/ MFC after: 5 days
debug: classified in 01-style
by '[tT]ypo'
- s/transcation/transaction/ MFC after: 5 days
debug: classified in 01-style
by '[tT]ypo'
No functional change intended. MFC after: 1 week
debug: classified in 01-style
by '[wW]hitespace'
re-wrap the function calls in a couple of ifs in get_zfs_root so they are more readable. They really didn't need to be wrapped like this in the first place. Sponsored by: Netflix
debug: classified in 01-style
by '[sS]tyle'
No functional change. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
debug: classified in 01-style
by '[tT]ypo'
No functional change intended. Reviewed by: aokblast, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55003
debug: classified in 01-style
by '[sS]tyle'
- s/crypo/crypto/ MFC after: 5 days
debug: classified in 01-style
by '[tT]ypo'
Reported by: pouria Reviewed by: pouria, ziaee, glebius Approved by: glebius Fixes: https://cgit.freebsd.org/src/commit/?id=31ec8b6407fdd5a87d70265762457c67ce618283 Differential Revision: https://reviews.freebsd.org/D55136
debug: classified in 01-style
by '[sS]tyle'
- s/preceeded/preceded/ MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
- s/segement/segment/ MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
- s/segement/segment/ MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
- s/segements/segments/ MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
- s/preceeded/preceded/ MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
chore: asmc: additional style(9) cleanup Pick out non-gratuitous style(9) changes suggested by `clang-format` on the driver. This helps eliminate minor stylistic issues with spaces, braces, line lengths, etc, so future functional changes in the driver will be easier to pick out. Many of the other `clang-format` suggested changes were not taken because they were considerably more gratuitous. No functional change intended. MFC after: 1 week
debug: classified in 01-style
by '[sS]tyle'
asmc: unbreak build: add missing curly brace Fixes: https://cgit.freebsd.org/src/commit/?id=d76bb14e022 ("chore: asmc: additional style(9) cleanup")
debug: classified in
03-filenames_plain1 by
'sys/dev/'
debug: moved to style because
'Need to be grouped with
d76bb14e0224e235209d8c07ec132d602b18648b'
MFC after: 1 month
debug: classified in 01-style
by '[sS]tyle'
Signed-off-by: Kalevi Kolttonen <kalevi@kolttonen.fi> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2009
debug: classified in 01-style
by '[tT]ypo'
This is being done to aid with future potential updates of this file. MFC after: 1 week
debug: classified in 01-style
by '[wW]hitespace'
Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr> Reviewed by: emaste Sponsored by: Defenso Pull Request: https://github.com/freebsd/freebsd-src/pull/2011
debug: classified in 01-style
by '[tT]ypo'
Finishing up the libxo conversion of geom by switching err(3) to their libxo equivalents. While here, fix some style(9) issues. There are still a few left, but at least they're fewer now. Reviewed by: asomers Approved by: asomers (mentor) MFC after: 2 weeks Sponsored by: ConnectWise Differential Revision: https://reviews.freebsd.org/D54938
debug: classified in 01-style
by '[sS]tyle'
And separate includes from the rest with an additional newline. Sponsored by: The FreeBSD Foundation
debug: classified in 01-style
by '[sS]tyle'
Align it like the rest. No functional change (intended). Sponsored by: The FreeBSD Foundation
debug: classified in 01-style
by '[sS]tyle'
debug: classified in 01-style
by '[tT]ypo'
MFC after: 3 days Reviewed by: ziaee Signed-off-by: Christos Longros <chris.longros@gmail.com> Closes: https://github.com/freebsd/freebsd-src/pull/2035
debug: classified in 01-style
by '[tT]ypo'
- Allow `ASMC_DEBUG` to be treated as a variadic macro. - Add ellipses around `sizeof(..)` calls. - Reindent some of the lines to better follow style(9) with line wrapping. A number of other clang-format changes were not taken as they are not compatible with style(9). MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55394
debug: classified in 01-style
by '[sS]tyle'
Rename grap_faults to grab_faults Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55177
debug: classified in 01-style
by '[tT]ypo'
This doesn't lengthen or shorten any configuration, only comments, so merging the configuration will be safe. Reviewed by: imp Closes: https://github.com/freebsd/freebsd-src/pull/2042
debug: classified in 01-style
by '[wW]hitespace'
MFC after: 3 days Reviewed by: emaste, guest-seuros, sjg, ziaee Differential Revision: https://reviews.freebsd.org/D55416
debug: classified in 01-style
by '[tT]ypo'
This is the OG meat and potatoes. MFC after: 3 days Reviewed by: 0mp, carlavilla Differential Revision: https://reviews.freebsd.org/D55301
debug: classified in 01-style
by '[sS]tyle'
No functional changes.
debug: classified in 01-style
by '[sS]tyle'
style.mdoc: Li macro is undeprecated for some time Previously, the mdoc linter warned against using Li as it was deprecated upstream. However, upstream undeprecated it since last year. As usual when it comes to style, the best thing to do is to follow the existing style of the page. We have many manuals which prefer double quotes. MFC after: 3 days Citation: https://cvsweb.bsd.lv/mandoc/mdoc.7?rev=1.297 Differential Revision: https://reviews.freebsd.org/D55297
debug: classified in 01-style
by '[sS]tyle'
style.mdoc: Remove synopsis formatting advice Remove incorrect advice. The first rule was no spaces padding pipes when showing alternates. Almost universally we not do this, and third party manuals do not either. The second was using Cm to mark up symbols. This advice is in conflict with mdoc(7), and the extended documentation on mdoc linked below, which is also linked at the bottom of mdoc(7). Conflicting information in our docs is a natural result of documentation proliferation. The most important thing we can do to reduce technical debt in the documentation is reduce the amount of doc overlap. Excessive technical debt and conflicting rules is a barrier to new contributors. This type of work requires thorough expertise, is not glamorous at all, and to add insult to injury, is socially unsafe. To get new contributors to the docs project, we must deduplicate documentation. We have the mdoc manual, examples/mdoc, style.mdoc, and the fdp chapter on manual pages. With this many, they will inevitably come to contain conflicting information, and people will learn not to read them or work on them. MFC after: 3 days Ref: https://mandoc.bsd.lv/mdoc/style/commands.html Differential Revision: https://reviews.freebsd.org/D55298
debug: classified in 01-style
by '[sS]tyle'
style.mdoc: Left angle bracket is not less-than MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55300
debug: classified in 01-style
by '[sS]tyle'
debug: classified in 01-style
by '[tT]ypo'
Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
Reviewed by: olce Approved by: olce Fixes: https://cgit.freebsd.org/src/commit/?id=4c4392e791b7 ("Add doxygen doc comments for most of newbus and the BUS interface.") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D48721
debug: classified in 01-style
by '[tT]ypo'
From GitHub pull request #2035; the change needs to be applied to the source file for the option description, not the generated src.conf.5.
debug: classified in 01-style
by '[tT]ypo'
MFC after: 3 days Reviewed by: ziaee Signed-off-by: Christos Longros <chris.longros@gmail.com> Closes: https://github.com/freebsd/freebsd-src/pull/2035
debug: classified in 01-style
by '[tT]ypo'
Reviewed by: wulf, obiwac Approved by: wulf, obiwac Fixes: https://cgit.freebsd.org/src/commit/?id=d97d5c0ce89d ("hid: Import hidmap-based drivers written by Greg V") Differential Revision: https://reviews.freebsd.org/D55626
debug: classified in 01-style
by '[tT]ypo'
Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in 01-style
by '[tT]ypo'
The rule of allowing style changes when about half or more of a file (or group of files), coupled with the advice of avoiding stylistic changes, could be interpreted as forbidding most style changes, even in heavily modified functions. In order to rule out that interpretation and ease transition towards our prescribed style: 1. Clarify that avoiding stylistic changes concerns only "standalone" ones. 2. Actually encourage changing the style, and extend the cases where it is explicitly allowed to do so to any single logical unit as little as a function, keeping the existing "about half" of modified code as a rule of thumb. When point 2 above applies, encourage to commit pure style changes separately, and to add style-only commits to '.git-blame-ignore-revs'. Add a specific note ruling out "horizontal" style changes spanning unrelated directories in the whole tree, which make the merge (MFC) process more difficult. While here, be slightly more stringent on new kernel code. While here, regroup the paragraphs talking about style, and put them at the end (before the recent C++ section). While here, rephrase the requirement on third-party maintained code to be slightly less stringent. Reviewed by: jhb, imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52885
debug: classified in 01-style
by '[sS]tyle'
Signed-off-by: Kalevi Kolttonen <kalevi@kolttonen.fi> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2013
debug: classified in 01-style
by '[tT]ypo'
Signed-off-by: Kalevi Kolttonen <kalevi@kolttonen.fi> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2012
debug: classified in 01-style
by '[tT]ypo'
bpf.4: accomodate -> accommodate hier.7: compatability -> compatibility namei.9: succesfull -> successful Signed-off-by: Christos Longros <chris.longros@gmail.com> Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D55746
debug: classified in 01-style
by '[tT]ypo'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293659 Fixes: https://cgit.freebsd.org/src/commit/?id=e49b6ead4114 ("Add a number of five letter words to the dictionary")
debug: Commit manually moved from "unknown" to "style".
It's not clear why this is here. It's existed since the very first version of rtld-elf for aarch64 but has never been used, and anything actually using exit or _exit should be using rtld_libc.h's #define that aliases them to __sys_exit. Fixes: https://cgit.freebsd.org/src/commit/?id=047c6e3ae6ab ("Add the arm64 code to the runtime linker. It's not able to be built as we still need libc_pic for a few things, but this is expected to be ready soon.")
debug: classified in 01-style
by '[rR]emove stray'
Increment and decrement where swapped. Signed-off-by: Salman Sarray <salman@sarray.de> Reviewed by: ziaee, Christos Longros <chris.longros@gmail.com> Pull Request: https://github.com/freebsd/freebsd-src/pull/2072
debug: classified in 01-style
by '[tT]ypo'
FreeBSD style(9) mandates C style comments. The initial import from OpenBSD left several C++ style // comments in if_rge.c and if_rgevar.h. Replace them with proper /* */ comments. Also fix a malformed comment that mixed // with a closing */. Signed-off-by: Christos Longros <chris.longros@gmail.com> Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55743
debug: classified in 01-style
by '[sS]tyle'
The function signature of `crypto_initreq()` was incorrectly documented. Signed-off-by: Zixu Wu <zx@bv3.dev> Reviewed by: ziaee, pouria Pull Request: https://github.com/freebsd/freebsd-src/pull/2077
debug: classified in 01-style
by '[tT]ypo'
This change fills out the requirements for doing vendor updates, documents the new vendor update process, and guides whoever needs to do the next version update a bit better than the documentation did prior to this change so everyone can pitch in with version updates a bit better. Convert the document to Markdown while here to make it easier to render/print out the directions in a structured format. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D53190
debug: classified in
03-filenames_plain1 by
'crypto/openssl/'
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
debug: classified in
03-filenames_plain1 by
'contrib/'
Sponsored by: Netflix Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54471
debug: classified in
05-summary-prefix by 'dtrace:'
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
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Reviewed by: imp, kevans Pull Request: https://github.com/freebsd/freebsd-src/pull/1442
debug: classified in
03-filenames_plain1 by
'contrib/'
With execenv=jail specified, the "cmd" runs inside the test's jail. Reviewed by: ngie, markj Differential Revision: https://reviews.freebsd.org/D52642
debug: classified in
03-filenames_plain1 by
'contrib/'
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
debug: classified in
03-filenames_plain1 by
'contrib/'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Before transitively including the base version of inttypes.h, define __STDC_CONSTANT_MACROS and __STDC_LIMIT_MACROS, because the base inttypes.h directly includes sys/stdint.h, instead of going through the 'regular' stdint.h. The libc++ version of the latter does define those macros, to ensure things like UINT64_C() and SIZE_MAX are defined even in C++98 or C++03. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'contrib/'
It's necessary for auditd to be able to log its events. Note that the recently added pdwait() syscall is only auditable because an audit event of that name was preemptively added back in 2012. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292739 MFC after: 1 week Fixes: https://cgit.freebsd.org/src/commit/?id=5c2ee618d5e "sys: add pdrfork(2)" Sponsored by: ConnectWise Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D54897
debug: classified in
03-filenames_plain1 by
'contrib/'
[libc++] Work around new GCC 15 type_traits builtins that can't be
used as Clang's can (#137871)
GCC 15 has added builtins for various C++ type traits that Clang
already had. Since `__has_builtin(...)` now finds these, the #if
branches previously only used for Clang are now used for GCC 15.
However, GCC 15 requires that these builtins only be used in type
aliases, not in template aliases.
For now, just don't use the `__has_builtin(...)` branches under newer
GCC versions, so both 14 and 15 work during the transition. This
can be cleaned up later to use all the GCC 15 builtins available.
Fixed: #137704
Fixed: #117319
Reviewed by: dim
Differential Revision: https://reviews.freebsd.org/D54865
debug: classified in
03-filenames_plain1 by
'contrib/'
Fixes the following warning from GCC 15:
contrib/netbsd-tests/lib/libc/regex/t_regex_att.c:54:30: error: initializer-string for array of 'char' truncates NUL terminator but destination lacks 'nonstring' attribute (4 chars into 3 available) [-Werror=unterminated-string-initialization]
54 | static const char delim[3] = "\\\\\0";
| ^~~~~~~~
Reviewed by: ngie, imp, dim
Differential Revision: https://reviews.freebsd.org/D54866
debug: classified in
03-filenames_plain1 by
'contrib/'
This is a rollup commit from upstream to fix: Improper validation of PBMAC1 parameters in PKCS#12 MAC verification (CVE-2025-11187) Stack buffer overflow in CMS AuthEnvelopedData parsing (CVE-2025-15467) NULL dereference in SSL_CIPHER_find() function on unknown cipher ID (CVE-2025-15468) "openssl dgst" one-shot codepath silently truncates inputs >16MB (CVE-2025-15469) TLS 1.3 CompressedCertificate excessive memory allocation (CVE-2025-66199) Heap out-of-bounds write in BIO_f_linebuffer on short writes (CVE-2025-68160) Unauthenticated/unencrypted trailing bytes with low-level OCB function calls (CVE-2025-69418) Out of bounds write in PKCS12_get_friendlyname() UTF-8 conversion (CVE-2025-69419) Missing ASN1_TYPE validation in TS_RESP_verify_response() function (CVE-2025-69420) NULL Pointer Dereference in PKCS12_item_decrypt_d2i_ex function (CVE-2025-69421) Missing ASN1_TYPE validation in PKCS#12 parsing (CVE-2026-22795) ASN1_TYPE Type Confusion in the PKCS7_digest_from_attributes() function (CVE-2026-22796) See https://openssl-library.org/news/secadv/ for additional details. Approved by: so Obtained from: OpenSSL Security: FreeBSD-SA-26:01.openssl Security: CVE-2025-11187 Security: CVE-2025-15467 Security: CVE-2025-15468 Security: CVE-2025-15469 Security: CVE-2025-66199 Security: CVE-2025-68160 Security: CVE-2025-69418 Security: CVE-2025-69419 Security: CVE-2025-69420 Security: CVE-2025-69421 Security: CVE-2026-22795 Security: CVE-2026-22796
debug: classified in
03-filenames_plain1 by
'crypto/openssl/'
The test sometimes crashes with ASLR enabled. This seems to happen when regcomp() grows the process stack and happens to run into the virtual memory limit set at the beginning of the test. ASLR triggers the problem since it introduces a bit of fragmentation and thus introduces cases where stack allocation can be the trigger of virtual memory exhaustion, rather than dynamic memory allocation in regcomp(). Make the test stable by priming the stack before doing anything else. This effectively reserves 16MB of virtual memory for the stack, which in practice is enough to make the test stable on amd64. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259971 Reviewed by: ngie, emaste MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54880
debug: classified in
03-filenames_plain1 by
'contrib/'
The changes between the two versions can be found in this diff of the two release tags: https://github.com/google/googletest/compare/v1.15.2...v1.17.0 One notable change is that GoogleTest 1.17.0 now requires C++-17 to build. MFC after: 1 week Merge commit '3a4c29b5bed4ea20266ad9371fbfdc6bca088f92'
debug: classified in
03-filenames_plain1 by
'contrib/'
Clang's -Wmissing-variable-declarations flags this as an issue since the flag is only used in `gtest.cc`. Declare the flag beforehand to ensure that the variable scope is properly limited to `gtest.cc`. MFC after: 1 week MFC with: 46333229c6a0187ebf231805682ee0bceed704d1 Ref: https://github.com/google/googletest/pull/4898
debug: classified in
03-filenames_plain1 by
'contrib/'
This change adds OpenSSL 3.5.5 from upstream [1]. The 3.5.5 artifact was been verified via PGP key [2] and by SHA256 checksum [3]. This is a security release, but also contains several bugfixes. All of the CVE-worthy issues have already been addressed on the target branch(es), so the net-result is that this is a bugfix release. More information about the release (from a high level) can be found in the release notes [4]. MFC after: 1 week 1. https://github.com/openssl/openssl/releases/download/openssl-3.5.5/openssl-3.5.5.tar.gz 2. https://github.com/openssl/openssl/releases/download/openssl-3.5.5/openssl-3.5.5.tar.gz.asc 3. https://github.com/openssl/openssl/releases/download/openssl-3.5.5/openssl-3.5.5.tar.gz.sha256 4. https://github.com/openssl/openssl/blob/openssl-3.5.5/NEWS.md Merge commit '808413da28df9fb93e1f304e6016b15e660f54c8'
debug: classified in
03-filenames_plain1 by
'crypto/openssl/'
OpenSSL: update vendor sources to match 3.5.5 content MFC with: f25b8c9fb4f58cf61adb47d7570abe7caa6d385d MFC after: 1 week
debug: classified in
05-summary-prefix by 'OpenSSL:'
OpenSSL: commit sys/crypto changes for 3.5.5 These files were changed as part of the 3.5.4 -> 3.5.5 upgrade. Please see the upstream release notes linked in 1731fc70f7344af08db49b06c63c963fa12ee354, et al, for more details. MFC after: 6 days MFC with: 1731fc70f7344af08db49b06c63c963fa12ee354 Fixes: https://cgit.freebsd.org/src/commit/?id=1731fc70f7344af08d ("OpenSSL: update vendor sources to match 3.5.5 content")
debug: classified in
04-filenames_plain2 by 'sys/'
debug: moved to contrib because
'Need to be grouped with
1731fc70f7344af08db49b06c63c963fa12ee354'
This release adds several new characters critical to the manual pages that were previously missing on high-dpi displays: em-dash, en-dash, hyphen, angle brackets, white square, dagger, and double dagger. It also features improved alignment for numerous characters in different sizes. Thanks: Fredric Cambus MFC after: 3 days Discussed with: emaste
debug: classified in
03-filenames_plain1 by
'contrib/'
Relnotes: yes MFC after: 2 weeks
debug: Commit manually moved from "unknown" to "contrib".
mt76: sort out MODULE_DEPEND for PCI and USB It is not enough to depend on mt76_core which then depends on linuxkpi and linuxkpi_wlan. Given each mt76 driver is its own module, each also needs to depend on these linuxkpi modules. In addition the core module usb part also has to depend on linuxkpi_usb. This in addition to the previously sorted PCI drivers, allows (or will allow) the individual chipsets (drivers) to load on systems with USB, if compiled in, as well. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
mt76: make USB compile This is the mt76-specific changes to make the USB driver targets for 7921 and 7925 compile. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
mt76: mt7925: add missing LINUXKPI_PARAM_PREFIX There is a module_param_named() in the file so we need to set LINUXKPI_PARAM_PREFIX to get it a uniq sysctl name. mt7921 has the exact same option. Without their individual prefixes the names would clash on systems with both chipsets and not work for both. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
mt76: fix a check wrongly giving us random ether addresses all the time Do not cover the is_valid_ether_addr() check under CONFIG_OF. Unclear if this is an initial porting or a merging error before the driver hit the FreeBSD src tree. The end result was that we always got a random link-layer address, while the individual drivers may have setup phy->macaddr and this function would only overwride if given in device tree. Only if both, driver and and the OF backup, fail then go and use the random link-layer address. While here adjust printing the random link-layer address using a FreeBSD format specifier and not the unsupported Linux one. Fixes: https://cgit.freebsd.org/src/commit/?id=6c92544d7c97 Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Merge commit 'a39ba5e2935176fe982235556e46ba3f51178187' Changes: https://github.com/zoulasc/blocklist/compare/8a4b011...10a907f MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'contrib/'
MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'contrib/'
We use the FreeBSD-specifc bsddriver.name to get the device name; set it everywere consistently. Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55020
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath10k: fix a schedule() call Using kern_yield does not seem ideal either for polling here; use a schedule_timeout() call from LinuxKPI instead and use about 100 iterations per second. Improve an error message to include the error code so we have a better idea of what happens. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath10k: add sysctl to turn on/off fwlog FWLOG, if compiled in, was on by default without a way to stop it from printing everything to the console. Add a modparam to enable it with it being disabled by default if available. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath10k: cleanup some bits no longer FreeBSD-specific We have since I did this port in 2023 added ACPI support to LinuxKPI, so we can use it. Also there is a linux/of.h header so we no longer need to guard the #include. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath10k: harmonize all MODULE_DEPEND to ath10k With theoretically multiple bus attachements (unclear if we will ever support anything but PCI) rename the module name to "ath10k" and use it consistently. Move the common depends to core.c and lindebugfs and usb to their respective files. MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath10k: usb: make compile using [a future] linuxkpi_usb Make ath10k usb code compile just to gather more USB bits. Currently (and likely forever) it is useless as the ath10k USB implementation never got finished. At the moment it lacks an entry for the USB bus attachment in core.c ath10k_hw_params_list[]. ath10k_usb0 on uhub1 ath10k_usb0: <Qualcomm Atheros USBWLAN, rev 2.01/92.10, addr 6> on usbus0 ath10k_usb0: Warning: ath10k USB support is incomplete, don't expect anything to work! ath10k_usb0: Unsupported hardware version: 0x5020001 ath10k_usb0: could not get hw params (-22) ath10k_usb0: could not probe fw (-22) There is another possible hardware [1] which was also never merged upstream. [1] https://lists.infradead.org/pipermail/ath10k/2024-August/016037.html "[PATCH] wifi: ath10k: add USB device ID for Atheros QCA9377-7" MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=285228
debug: classified in
03-filenames_plain1 by
'sys/contrib'
From the time I used to split up the driver into a core part and bus attachment sub-drivers the various bus attachments had their own module name but all is "rtw88" now. Core functionality depends on linuxkpi, linuxkpi_wlan, and for debug.c lindebugfs. Each bus attachment then depends on its own parent layer if needed: PCI gets pull in through linuxkpi, USB: depends on [the future] linuxkpi_usb, and SDIO: depends on [the future] linuxkpi_sdio. Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55021
debug: classified in
03-filenames_plain1 by
'sys/contrib'
These days we can use static_assert() without trouble so remove the FreeBSD-specific rtw89_static_assert implementation. This reduces the diff to upstream and will ease future driver updates. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
rtw89 came like rtw88 was done. Given rtw88 once was split up rtw89 got modelled the same way. Clean this up too. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git e5f0a698b34ed76002dc5cff3804a61c80233a7a ( tag: v6.17 ). We are likely only going to use the brcmfmac driver but given they come nicely packaged in a directory structure and bwn(9) still uses GPL-only phy files we could use some of the information from brcmsmac and fix that (should it ever still be relevant). git-subtree-dir: sys/contrib/dev/broadcom/brcm80211 git-subtree-mainline: 69c64e3fb575e0db0e2f0c1fc56f466624940ded git-subtree-split: 1eabd3ed89eb4bb5c69e90eeaeda1a6dd31e8bab
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Fix casts and consts and add one extra error check for a NULL pointer. This will require [a future] linuxkpi_usb. There are very few dongles I know off: - the original Raspberry PI USB dongle [1] - Cisco Linksys AE1200 The reason for making USB compile despite the limited 11n 150/300 Mbit/s adapters is that it is the simplest way to work on cfg80211 while on the road, not requiring a full PCIe slot or another SoC for SDIO. Sponsored by: The FreeBSD Foundation Hardware donated by: Martin Husemann (martin NetBSD.org) [1] MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
And bump WARNS to 2
debug: Commit manually moved from "unknown" to "contrib".
- Add native support for unicode everywhere. - Remove Big5 specific code (and the menu entry) PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291279 MFC After: 1 month Tested by: Marek Zarychta Differential Revision: https://reviews.freebsd.org/D55303
debug: classified in
03-filenames_plain1 by
'contrib/'
Change the function definition to map the declaration and consistently
return an enum value. This fixes the following error reported by GCC:
sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c:322:1: error: conflicting types for 'vchiq_copy_from_user' due to enum/integer mismatch; have 'int(void *, const void *, int)' [-Werror=enum-int-mismatch]
322 | vchiq_copy_from_user(void *dst, const void *src, int size)
| ^~~~~~~~~~~~~~~~~~~~
In file included from sys/contrib/vchiq/interface/vchiq_arm/vchiq_arm.h:38,
from sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c:61:
sys/contrib/vchiq/interface/vchiq_arm/vchiq_core.h:647:1: note: previous declaration of 'vchiq_copy_from_user' with type 'VCHIQ_STATUS_T(void *, const void *, int)'
647 | vchiq_copy_from_user(void *dst, const void *src, int size);
| ^~~~~~~~~~~~~~~~~~~~
Differential Revision: https://reviews.freebsd.org/D55163
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Once upon a time, 32-bit PowerPC did indeed have a 32-bit time_t, but FreeBSD 12.0 switched to a 64-bit time_t for PowerPC as an ABI break, which predates the addition of FreeBSD support to OpenZFS. Moreover, 64-bit PowerPC has existed since FreeBSD 9.0, where __powerpc__ is also defined (alongside __powerpc64__ to disambiguate), which has always had a 64-bit time_t. This code has therefore always been wrong for all PowerPC variants. Fix this by limiting the 32-bit case to just i386, which is the only architecture in FreeBSD to have a 32-bit time_t and not have broken ABI, due to its special legacy compatibility status. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Alexander Motin <alexander.motin@TrueNAS.com> Signed-off-by: Jessica Clarke <jrtc27@jrtc27.com> Closes #18217 Closes #18218 Reported by: fuz MFC after: 1 day
debug: classified in
03-filenames_plain1 by
'sys/contrib'
debug: classified in
03-filenames_plain1 by
'contrib/'
We added the option to build BSD diff3 in commit 2201f7c49f11 ("Build
BSD diff3 if GNU diff3 is disabled.") and made it the default in
4d5c434ed16e ("diff3: use bsd diff3 by default") after resolving
deficiencies relative to GNU diff3. Thus, we can now remove the GNU
diff3 build infrastructure and source.
Reviewed by: bapt, ziaee
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46878
debug: Commit manually moved from "unknown" to "contrib".
Changes: https://github.com/eggert/tz/blob/2026a/NEWS MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'contrib/'
MFC After: 1 week
debug: classified in
03-filenames_plain1 by
'contrib/'
In iwl_mvm_mld_vif_cfg_changed_station() if we do not do MLO (which we do not do yet at all), dtim_period is not yet set but asssoc is (our common case) the link_id can become -1 as active_links is always 0 for the non-MLO case. This leads to logging of a WARN; Invalid link ID for session protection: 4294967295 Fixup the link_id if it is -1 to be 0. This is the deflink link_id so that should always be fine in this case. For Linux 7.0-rc2 that code is already gone so this is a local temporary stopgap measure for the mvm-mld devices (e.g., some AX210). Sponosred by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
debug: classified in
03-filenames_plain1 by
'contrib/'
Reported and tested by: arrowd Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Reviewed by: markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55539
debug: classified in
03-filenames_plain1 by
'sys/contrib'
iwlwifi: mld: move module_init() to SI_ORDER_SECOND In FreeBSD the iwlwifi driver is a single kernel module. As for iwlwifi/mvm we need to make sure the common "iwlwifi drv" code is initialized before trying to register the mld sub-driver in order for lists, etc. in the registration code to be initialized. We do this by using an extended (FreeBSD specific) version of module_init which overrides the order parameter of the SYSINIT. Otherwise we can randomly (depending on SYSINIT run order) run into a NULL pointer deref panic. Sponsored by: The FreeBSD Foundation PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291120 MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
iwlwifi: adjust driver description Adjust the module driver descriptions for mvm and mld to make it clear that this is not a driver for Linux but a Linux-based driver for FreeBSD. Cleanup surroundings. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
iwlwifi: mld: add LINUXKPI_PARAM_PREFIX Add a LINUXKPI_PARAM_PREFIX to mld to properly export the power_scheme module_param (sysctl). This is especially needed given mvm has the same parameter and we need to avoid a clash. Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
Fixes: https://cgit.freebsd.org/src/commit/?id=967a49a21a27 ("Update tzcode to 2025b")
debug: Commit manually moved from "unknown" to "contrib".
realloc() and rallocx() shares path, and realloc() should set errno to ENOMEM upon OOM failures. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291677 Obtained from: jemalloc (commit 38056fea64c34ca4fef0a16212776eaa4de80b78) Fixes: https://cgit.freebsd.org/src/commit/?id=c43cad871720 ("jemalloc: Merge from jemalloc 5.3.0 vendor branch") MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/2059
debug: classified in
03-filenames_plain1 by
'contrib/'
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291677 Obtained from: jemalloc (commit 83b075789b4239035931c1ee212576d00153bbf0) Fixes: https://cgit.freebsd.org/src/commit/?id=c43cad871720 ("jemalloc: Merge from jemalloc 5.3.0 vendor branch") MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/2059
debug: classified in
03-filenames_plain1 by
'contrib/'
Many thanks to Paul Eggert for adopting most of our adaptations as optional features upstream in the previous release (2025c). MFC after: 1 week Reviewed by: philip Differential Revision: https://reviews.freebsd.org/D55741
debug: classified in
03-filenames_plain1 by
'contrib/'
Update Intel irdma driver to version 1.3.56-k Notable changes: - adding E830 support - adding E835 support Signed-off-by: Sobczak, Bartosz <bartosz.sobczak@intel.com> Reviewed by: Andrew Zhu <anzhu@netapp.com> Tested by: Mateusz Moga <mateusz.moga@intel.com> MFC after: 2 weeks Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D55479
debug: Commit manually moved from "unknown" to "contrib".
debug: classified in
03-filenames_plain1 by
'contrib/'
Relnotes: yes MFC after: 2 weeks
debug: Commit manually moved from "unknown" to "contrib".
Changes: https://github.com/the-tcpdump-group/tcpdump/blob/tcpdump-4.99/CHANGES Obtained from: https://www.tcpdump.org/release/tcpdump-4.99.6.tar.xz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55578 Differential Revision: https://reviews.freebsd.org/D55871
debug: Commit manually moved from "unknown" to "contrib".
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
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
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
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
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
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
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.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
src.opts.mk: Enable LLDB by default globally Previously it was enabled for all architectures except but RISC-V. Upstream made significant progress on RISC-V support over the last year[1], and although there's still some FreeBSD-specific work to do we can start building it now. [1] https://jonasdevlieghere.com/post/lldb-2025/ Sponsored by: The FreeBSD Foundation
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "src.opts.mk: Enable LLDB by default globally" This breaks the riscv64 build; clearly the version we have in-tree is not new enough to work. That or our build system needs tweaking. Either way, we're not ready for this, and enabling it without testing was misguided. This reverts commit c59a47dc6c016dff74466cecb160459980a5d782.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
The problem will be avoided in a different way. This reverts commit e769bc77184312b6137a9b180c97b87c0760b849.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
This change causes some ACPI problems, such as power button events being processed even if just used for resume. This reverts commit c0df8f6f0e6a5f77ec9140e8075d09c55fe4c3c7.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
reloc_nonplt_object, and thus reloc_non_plt, only ever handles data relocations, so this paranoia is completely unfounded and only has the effect of significantly slowing down program startup for binaries with large amounts of code, like Clang. If this breaks any systems, that would likely be due to insufficient flushing in the pmap implementation for executable mappings, as this existing rtld behaviour would mask any such bugs. This reverts commit 4b51c69976fd84e93ec7695858375c8150c4fe61. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D54221
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
This reverts commit 3e8619e535b61c99f0dc50cc6c7e237eb82a8be7. While it's generally a good idea to have separate datasets for things like this, it breaks git clone with: fatal: destination path 'ports' already exists and is not an empty directory. Signed-off-by: Ricardo Branco <rbranco@suse.de> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2006
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
pcb.h: mark struct pcb to be preserved There are programs that depend on this structure (e.g. kernel debuggers) that breaks when the ABI changes. Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55149
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "pcb.h: mark struct pcb to be preserved" kgdb only uses the marked fields from dumppcb for initial frame reconstruction. This reverts commit 8f23665fed2fbaf4481359b4d2fcdd7b9feb40e3.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
fortune: fix netstat tip netstati <mumble> 8 reports in bytes per second (averaged over 8 seconds) rather than bits per second because it reports the total in bits over the 8 seconds... Sponsored by: Netflix
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "fortune: fix netstat tip" This reverts commit 8e593a1f143203cace2e14bd6629a8ebdf9b47dc. I was totally wrong, so just revert and get on with it. Sponsored by: Netflix
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
We now have devd rules in snd.conf that achieve this in a much cleaner way. This reverts commit 9aac27599acaffa21ff69c5be8a2d71d29cc3d6b. Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55532
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
virtio: Restore mb() calls Until an issue seen on amd64 can be investigated restore two mb() calls to virtio. Reviewed by: andrew Fixes: https://cgit.freebsd.org/src/commit/?id=c499ad6f997c ("virtio: Use bus_dma for ring and indirect buffer allocations") Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55766
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "virtio: Restore mb() calls" This reverts commit d99e725c26a7745aa349eab01ae56ca630b6d0f5.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
This reverts commit 858f53dd43ecb84cf2597229e9dbda2f242d9dd6. It is not clear to me why building from Linux or MacOS fails to build the toolchain, so reintroduce the long-standing slightly-broken toolchain until that can be determined. Reported by: vexeduxr, jrtc27
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
bsd.own.mk: Deorbit compat include of bsd.compiler.mk
Commit b946bedd09d3bd1 ("Previous versions of bsd.own.mk [...]")
mentions that bsd.own.mk included bsd.compiler.mk as a temporary
workaround and was destined to be removed in FreeBSD 12. Do that now.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=203540
Reviewed by: bnovkov, imp
Approved by: bnovkov (mentor)
Differential Revision: https://reviews.freebsd.org/D55867
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "bsd.own.mk: Deorbit compat include of bsd.compiler.mk" This reverts commit 0bebad8d072bb7abef1cea0d8c8d04d500913adf. It might be that all that's needed to fix this is to add ".include <bsd.compiler.mk>" to some Makefiles. I'll look into it soon but for now let's unbreak HEAD. Approved by: bnovkov (mentor) Differential Revision: https://reviews.freebsd.org/D55869
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
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-03-16 19:39:16+00:00.
This work is supported by Tarsnap Backup Inc.
Alternate version: 2026-01-01 (release)