arm/generic: use generic setstatclockrate
This allows us to get rid of the weak symbol hack in a9tmr since GENERIC is the only configuration with both a9tmr and gtmr active in one configuration. Configurations without __HAVE_GENERIC_SETSTATCLOCKRATE still get a setstatclockrate from the ifdef.
arm/fdt: introduce a generic setstatclockrate function
These changes lay the groundwork for cleaning up setstatclockrate implementations across arm timers.
zpool-attach.8: add EXAMPLES section
Mirror-attach (shared with zpool.8 example 5) and raidz expansion.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Reviewed-by: Tino Reichardt <milky-zfs at mcmilk.de>
Signed-off-by: Christos Longros <chris.longros at gmail.com>
Closes #18508
CI: skip qemu matrix for documentation-only pull requests
Add a new "docs" CI type, selected when every file modified by a
pull request matches a documentation pattern (man pages, .md,
AUTHORS, COPYRIGHT, LICENSE, NOTICE, .gitignore). For this type the
os_selection is empty and the qemu matrix runs no jobs.
This affects only pull requests whose entire diff is documentation.
Any change touching a non-documentation file continues to be
classified as full, quick, linux, or freebsd by the existing
file-path rules, and a manual ZFS-CI-Type commit tag still overrides
that classification.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Christos Longros <chris.longros at gmail.com>
Closes #18518
[lld][WebAssembly] Allow defining of arbitrary symbols types in LTO objects (#196552)
Bitcode files don't contains precise symbol type information so we
always allow the post-LTO defined symbols (from the LTO object file) to
overwrite bitcode symbols. We don't want to be reporting type mismatches
in these cases.
Fixes: #195311
[GlobalISel][AArch64] Add lowering for G_SMULFIX (#196757)
Adding lowering for G_SMULFIX G_OP. It is needed to compile
`libc/src/stdfix/expk.cpp` with `-O3`.
zfs.4: Fix documentation of zfs_arc_dnode_reduce_percent
Fixes: 25458cbef Limit the amount of dnode metadata in the ARC
Fixes: 5b9f3b766 Soften pruning threshold on not evictable metadata
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Mateusz Piotrowski <0mp at FreeBSD.org>
Closes #18513
[lldb] Assert that CommandObject::DoExecute sets a return status (#196589)
Change the default value of CommandReturnObject::m_status from
eReturnStatusStarted to eReturnStatusInvalid, and add a debug-only RAII
check in CommandObjectParsed::Execute and CommandObjectRaw::Execute that
asserts the status is no longer Invalid after DoExecute returns.
This catches commands that forget to call SetStatus on a success or
failure path. Succeeded() still returns true when the status is Invalid
(0 sorts below eReturnStatusSuccessContinuingResult), so helpers that
read result.Succeeded() as a precondition before any explicit SetStatus
(e.g. StopProcessIfNecessary) continue to work.
rdar://176506732
DAGCombiner: (srl/sra (add nuw/nsw X, c), d) --> (add nuw/nsw (srl/sra X, d), c >> d)
Additional precondition:
* The LSBs of c are 0; equivalently: c >> d is exact
Alive2 for
* unsigned case: https://alive2.llvm.org/ce/z/YcJ8qA
* signed case: https://alive2.llvm.org/ce/z/fgpvyE
We already canonicalize (shl (add ...) ...) to (add (shl ...) ...).
Restrict this combine to the single-use case to minimize risk for now.
The main target of this combine is a fan-out tree of `add`s that all end
up being shifted by the same amount at the leaves. This change happens to
improve a bunch of existing CodeGen tests in AMDGPU.
v2:
- remove a redundant check on the shift amount -- large shift amounts
results in poison anyway
[2 lines not shown]
[FileCheck] Handle directives at EOF without a trailing newline (#196576)
FileCheck could assert when a check directive ended at EOF without a
trailing newline. After parsing the directive suffix, EOF can be a valid
continuation point, so parsing now continues directly from
`AfterSuffix`.
Fixes #101582
[RISCV] Check for null LIS before trying to move AVL in canMutatePriorConfig. (#196673)
If LIS is null then the VN info are null and we don't know if we need to
move the AVL.
Fixes an assertion like
RegAllocFast.cpp:729: void (anonymous
namespace)::RegAllocFastImpl::reloadAtBegin(MachineBasicBlock &):
Assertion `(&MBB != &MBB.getParent()->front() || IgnoreMissingDefs) &&
"no reload in start block. Missing vreg def?"' failed.
Impose the same MAX_ASPA_SPAS_COUNT limit onto the merged APSA sets that
are sent to the RDE.
The merged ASPA table could in theory become so big that the imsg framework
fails. So limit the merged ASPA set to the same MAX_ASPA_SPAS_COUNT as
the aspa-set { } in the main config and the RTR ASPA PDUs.
Log a warning when a ASPA entry is skipped because of this limit.
There is nothing persisted so the warning will be repeated whenever there
is an update. Since it is highly unlikly that such an big ASPA will ever
exists this is good enough for now.
OK tb@