Merged
Conversation
Follow interrupt-map properties until either an interrupt controller or invalid node is found. In the former case return the translated details for the interrupt controller driver to decode. In the latter case return 0 as an error. Tested on the Arm DTS files that use interrupt-maps and with a userspace test. Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D51257
Allow building OCI images if the source tree is not /usr/src. This also removes the copy of /etc/pkg/FreeBSD.conf which is not needed for the OCI image build. MFC after: 3 days
The patch was originally written by hrs [1], and later modified by meta to use named flags instead of generic link-layer flags. [1] https://reviews.freebsd.org/D45854 PR: 280736 Co-authored-by: Hiroki Sato <hrs@FreeBSD.org> Reviewed by: ae, ziaee, zlei, pauamma Reported by: Kazuki Shimizu <kazubu@jtime.net> Approved by: pauamma (manpages) Approved by: ae MFC after: 2 weeks Sponsored by: Cybertrust Japan Differential Revision: https://reviews.freebsd.org/D51297
Set WITH_MITKRB5=yes as the default. Rebuild all USES=gssapi ports is recommended. A clean buildworld is required. Relnotes: yes
This adds support for a new `print_delay` environment variable, which inserts a delay in microseconds when `putchar` encounters a newline character. This can be useful when debugging. Reviewed by: markj, imp, ziaee, mckusick (mentor) Approved by: markj, imp, ziaee, mckusick (mentor) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50832
It does not appear to get much, if any, testing, and doesn't seem to be worth the maintenance overhead. Virtually all amd64 hardware has multiple cores. The CPU and memory usage overhead of the SMP option in single-vCPU VMs is quite marginal and not worth maintaining. Reviewed by: alc (pmap.c), kib Differential Revision: https://reviews.freebsd.org/D51403 Differential Revision: https://reviews.freebsd.org/D51345
Also merge two printf()s. No functional change intended. Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D51452
Also make the array const. No functional change intended. MFC after: 1 week
Symbols defined using assembler directives lack type info, but in this
case one ought to be able to cast a pointer to the symbol and
dereference the pointer to get a value. Without this change, D
disallows this trick since it requires all identifiers to have a type.
Relax the rules slightly and allow an identifier to have type "void" if
we know we're just taking its address.
As a result, the following dtrace invocation works:
dtrace -n 'tick-1s {printf("%d", *(int *)&`ticks);}'
In particular, since commit b2b974f ("clock: Simplify subr_ticks
and rename"), "ticks" does not have any type info associated with it, so
its value couldn't be printed. This trick provides a workaround and is
probably generally useful.
Add a regression test which exercises this functionality.
PR: 287752
Reviewed by: avg
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D51417
makefs currently does not implement compression for ZFS datasets, as doing so seems somewhat fraught with compatibility issues. As a result, the root dataset has compression disabled, and all others inherit from that. However, it may be useful to enable compression for new files once the generated pool is actually imported. Thus, implement a per-data compression option. By default, compression is inherited from the parent dataset and disabled on the root dataset. Add a regression test. PR: 288241 MFC after: 1 month
This will be used by the test suite to enable running makefs/zfs tests in parallel. MFC after: 1 month
Use the script PID as a pool GUID. This way, tests running in parallel will have pool GUIDs that won't collide, and the tests no longer need to be serialized. MFC after: 1 month
Use the correct variable in the correct way. The app limited period is cleared when gp_seq is greater than or equal to cleared_app_ack_seq. Reviewed by: rrs, tuexen, Nick Banks MFC after: 1 week Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D51441
For DIRDEPS_BUILD we want to ignore _SUBDIR regardless of .MAKE.LEVEL Reviewed by: stevek Differential Revision: https://reviews.freebsd.org/D51454
[Clang][NFCI] Cleanup the fix for default function argument substitution (#104911) (This is one step towards tweaking `getTemplateInstantiationArgs()` as discussed in llvm/llvm-project#102922) We don't always substitute into default arguments while transforming a function parameter. In that case, we would preserve the uninstantiated expression until after, e.g. building up a CXXDefaultArgExpr and instantiate the expression there. For member function instantiation, this algorithm used to cause a problem in that the default argument of an out-of-line member function specialization couldn't get properly instantiated. This is because, in `getTemplateInstantiationArgs()`, we would give up visiting a function's declaration context if the function is a specialization of a member template. For example, ```cpp template <class T> struct S { template <class U> void f(T = sizeof(T)); }; template <> template <class U> void S<int>::f(int) {} ``` The default argument `sizeof(U)` that lexically appears inside the declaration would be copied to the function declaration in the class template specialization `S<int>`, as well as to the function's out-of-line definition. We use template arguments collected from the out-of-line function definition when substituting into the default arguments. We would therefore give up the traversal after the function, resulting in a single-level template argument of the `f` itself. However the default argument here could still reference the template parameters of the primary template, hence the error. In fact, this is similar to constraint checking in some respects: we actually want the "whole" template arguments relative to the primary template, not those relative to the function definition. So this patch adds another flag to indicate `getTemplateInstantiationArgs()` for that. This patch also consolidates the tests for default arguments and removes some unnecessary tests. This fixes a crash or assertion failure while building tests for the devel/hpx port. PR: 288352 MFC after: 3 days
The metatags file informs install of kernel and modules to load, allow it to also case variables to be set in env. Reviewed by: imp Sponsored by: Juniper Networks, Inc Differential Revision: https://reviews.freebsd.org/D51446
Currently bsdinstall does not install FreeBSD-base.conf when performing an offline pkgbase installation. This commit fixes that. PR: 287821 Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51101
Remove the failed request queue, it's been unused since bc85cd3 when we removed the last function that referenced it. Also adjust the comment for the reset taskqueue. We still start 2 threads. Sponsored by: Netflix
Move the AER processing into the taskqueue thread. We do memory allocations and such burried deep in things we call, so this just makes all that simpler and doesn't stall the completion thread. It fixes a few panics if you get a reliability failure from the drive at the wrong time. Sponsored by: Netflix MFC After: 2 weeks
Fetch vm_guest on startup in case we're running under a hypervisor. Co-authored-by: eugen@ PR: 287873 Sponsored by: Netflix
Turns out, we don't use the results of xpt_path_inq here at all. And it also causes problems. Since it calls xpt_cam_inq to do this useless XPT_PATH_INQ, it loses the original priority we had for the CCB. This priority should be CAM_PRIORITY_XPT, but was oringially set to CAM_PRIORITY_NORMAL. This worked to enumerate the device because no normal priority CCBs were queued by anything doing the enumeration. However, when I changed xpt_path_inq to use the more proper PRIORITY_NONE, it exposed this bug because queued CCBs with PRIORITY_NONE sometimes won't run. This caused the probe device to stop after its first operation. Removing the xpt_path_inq means we no longer step on the important fields we get from xpt_schedule, allowing probing to work correctly. Noticed by: bz@ Sponsored by: Netflix
Queued CCBs usually are queued at CAM_PRIORITY_NORMAL, unless they are doing error recovery, or device enumeration of some kind. They should never be queued at CAM_PRIORITY_NONE, which should only be used for CCBs that are immediate. For sdda_start_init_task(), we allocate a ccb, initialize it then use it to talk to the SD/MMC card to query it, negotiate the speed and lane sizes, etc. Most of these commands are queued, so use the normal priority. Sponsored by: Netflix
All queued CCBs should be created with a real priority (one that's not CAM_PRIORITY_NONE). Recently, I introduced a bug that revealed a latent MMC bug where it would stop enumerating due to a bad priority. Add an assert to catch that (the other bug in mmc_da that it found has been fixed). Sponsored by: Netflix
The following up advertising of IFCAP_HWCSUM capability unconditionally overwrite IFCAP_LINKSTATE. Reviewed by: kbowling MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D51450
The hardware can count statistics and the driver has already retrieved them via qlnx_get_counter(). Advertise the IFCAP_HWSTATS capability to avoid the net stack from double counting IFCOUNTER_IBYTES. Reviewed by: kbowling MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D51451
The EFI_PROPERTIES_TABLE has been deprecated in the UEFI specification. It is now replaced by the EFI_MEMORY_ATTRIBUTES_TABLE, which provides a new header and data format for describing memory region attributes. Reviewed by: imp Approved by: markj (mentor) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49998
PR: 288256 Approved by: emaste Differential Revision: https://reviews.freebsd.org/D51335
Similar to shutdown(8), refuse to reboot if /var/run/noshutdown is present. The -f option can be used to force operation. Reviewed by: imp Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D51241
Fix a mistake in a log message that leaked from my preliminary patch. PR: 287873 MFC after: 3 days X-MFC-with: bd4a4e4
Limit calls to /usr/libexec/hyperv/hyperv_vfattach to Hyper-V guests. PR: 287873 MFC after: 3 days
… call This restores the feature of EXTERROR() being allowed at any context except the interrupt handlers. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D51595
Move LLVM ar, nm, and size. Also move elftoolchain strings, which should have already been there. The remaining LLVM utilities (including strings) stay in -clang for now since they're links to other executables. Reviewed by: des, dim Differential Revision: https://reviews.freebsd.org/D51583
The PVID option is exposed to the user as 'untagged', but the API was inconsistent on whether it's called 'untagged' or 'PVID'. Standardise on calling it PVID everywhere in the code, since this is the 802.1Q terminology. Keep 'untagged' as the user-facing term since sysadmins are not network admins and are often not familiar with the term PVID. Approved by: des Differential Revision: https://reviews.freebsd.org/D51182
Disallow this: ifconfig bridge0 create ifconfig bridge0.1 create ifconfig bridge0 addm bridge0.1 Also disallow this: ifconfig vlan1 create ifconfig bridge0 create ifconfig bridge0 addm vlan1 ifconfig vlan1 vlan 1 vlandev bridge0 Firstly, this panics due to trying to take BRIDGE_LOCK recursively. Secondly, even if it worked, it could cause packet forwarding loops. Reviewed by: des Differential Revision: https://reviews.freebsd.org/D51310
This section adds several style guidelines for C++ in FreeBSD's base system both enumerating some differences relative to the C KNF style and addressing some unique C++ idioms not addressed by the existing KNF style. This section is not exhaustive but does include an initial set of guidelines. Reviewed by: ivy, emaste Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D50983
Suggested by: imp Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D51597
Reviewed by: imp Fixes: 4728f53 ("Move LOADER_{NO,}_GELI_SUPPORT to MK_LOADER_GELI") Differential Revision: https://reviews.freebsd.org/D51598
These link against libsa instead of pulling individual sources from the libsa source directory. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D51599
This moves the checks previously under #ifdef STRICT in nvmf_nqn_valid() into a separate helper for userland. This requires that the NQN starts with "nqn.YYYY-MM." followed by at least one additional character. Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D48767
Suppose a kernel module A defines an SDT provider and probes, and kernel linker file B, dependant on A, contains tracepoints for those probes. When sdt.ko is loaded, it iterates over all loaded KLDs to initialize probe structures and register them with dtrace. In particular it uses linker_file_foreach(), which is not sorted; in the above scenario, B may be visited before A. Thus, it's possible for sdt_kld_load_probes() to try to add tracepoints to an uninitialized SDT probe. An example of the above arises when pfsync, pf, and sdt are loaded in that exact order after commit 4bb3b36. Fix this by initializing probe structures in the first pass over loaded KLDs. Then, the second pass can safely add tracepoints to any probe structure. Note that the scenario where B and A are loaded after sdt.ko is already handled properly, as there, the kld_load eventhandler is responsible for registering probes with dtrace, and that eventhandler fires for dependencies before it does for the dependent KLD. This presumes, however, that there are no cycles in the dependency graph. Reported by: jenkins MFC after: 2 weeks
…me() Otherwise it is sign-extended into 64bit ino_t on the call to ufs_dirrewrite(). This causes invalid inode number recorded in the SU tracking structures (newdirem) and triggers corresponding panics. Reviewed by: mckusick, olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D51573
Use proper comparision operators when we need to see if newparent was set to not-zero value. Reviewed by: mckusick, olce Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D51573
PR: 287620 Approved by: db@ (Mentor, implicit)
Read IIC-HID reports as a single I²C transaction, instead of reading first the two byte length field, holding the bus, and then the rest of the report in a separate transaction. While technically legal, I²C bus split transactions are not universally supported, and in particular the "Snapdragon Elite" ARM CPU does not seem to support them. It is also not obvious that they are beneficial in this case, given the overhead of controller setup, interrupts and tear-down. Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D51302
This describes the current status of the implementation. While there, be a bit more precise on how long the checksum computation is delayed. Reviewed by: Timo Völker, bcr MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D51590
This is based on the description of sysctl -d. Reviewed by: Timo Völker, bcr MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D51604
Fixes: 610319c Sponsored by: The FreeBSD Foundation MFC after: 1 week
Sponsored by: Rubicon Communications, LLC ("Netgate")
…net()
There are scenarios where we can end up looking up an interface by its scope and
turn up an interface that doesn't have IPv6 enabled on it. If that happens we
could end up dereferencing a NULL pointer accessing ifp->if_afdata[AF_INET6].
Check for this.
One such scenario is if a firewall rewrites a destination address to a
link-local address, with an embedded scope for such an interface. Attach a test
case which provokes this.
PR: 288263
Reported by: Robert Morris <rtm@lcs.mit.edu>
Reviewed by: zlei
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D51500
Sponsored by: Rubicon Communications, LLC ("Netgate")
Despite the name, isrmdir is not a boolean-valued, it is also used to pass a new parent inode number down to the SU layer. Fixes: 98eb6f0 ("ufs: restore conditional") Reviewed by: kib Reported by: syzbot+fbfff9613b6dab616124@syzkaller.appspotmail.com Reported by: syzbot+02cb048d48b51bcd9c41@syzkaller.appspotmail.com Reported by: syzbot+98c39c45a437812f7683@syzkaller.appspotmail.com Reported by: syzbot+6fb8cb919cc686d1a1d0@syzkaller.appspotmail.com Reported by: syzbot+fb35cce6a6f5075a6692@syzkaller.appspotmail.com Reported by: syzbot+602fb6ee1a39abfd3b5c@syzkaller.appspotmail.com Reported by: syzbot+5cb82352555d5d505640@syzkaller.appspotmail.com Reported by: syzbot+6a4ea1e13f4e07369785@syzkaller.appspotmail.com Reported by: syzbot+18722c8e4008048efb51@syzkaller.appspotmail.com
libedit breaks the bootstrap on MacOS and Linux. Activate libedit only for the regular build not for the bootstrap tools While here fix the definition of the dependency chain between libkrb5ss and libedit (and libtinfow) via src.libnames.mk Remove a local patch to find the readline compatible header and find them via proper CFLAGS.
Upstream had a poor description for KbdInteractiveAuthentication prior to the 10.0p2 release. We use KbdInteractiveAuthentication for PAM authentication, and we replaced the poor description with a note about use by PAM. In 10.0p2 the upstream description has been fixed. Incorporate that text now as it is an improvement and avoids a conflict in the upcoming 10.0p2 import. Reviewed by: jhb Sponsored by: The FreeBSD Foundation
This is required to build libkrb5support. Fixes: 7e35117 ("Makefile: Hook MIT KRB5 into the build")
Certain SR-IOV devices enumerate Virtual Functions (VFs) on a different PCIe bus than their parent Physical Function (PF). In such cases, the default subordinate bus range assigned by BIOS may be insufficient to cover all VFs. This patch dynamically expands the subordinate bus range by: - Allocating additional bus numbers using bus_alloc_resource() when VFs are initialized - Releasing the reserved bus range during VF deletion via bus_release_resource() Reviewed by: jhb
blist_create() panics on zero nblks. Reported by: olivier Reviewed by: alc, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D51618
zfs/fs.c: zfs/objset.c: zfs/vdev.c: zfs/zap.c: Add include sys/param.h dsl_dir_alloc() needs to set parent = NULL to silence warning about 'parent' may be used uninitialized. Warning is given because we break the loop when nextdir == NULL and parent was not previously set. (it should not happen, but compiler does not know that). zap_add() and zap_fat_write_array_chunk() takes uint8_t *, use type cast. zap_fat_write_array_chunk() should check sz for 0 to avoid use of uninitialized pointer. unchecked function returns. Reviewed by: markj Differential revision: https://reviews.freebsd.org/D51592
The dataset mountpoints get link count and size calculated by content of dataset root directory, but this will break libzfs dir_is_empty_stat() test. For fix, we need to check if the directory is mountpoint for dataset, and calculate the link count and size accordingly. Reviewed by: markj Differential revision: https://reviews.freebsd.org/D51593
|
Thank you for taking the time to contribute to FreeBSD! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.