ZTS: fix mmp_set_hostid on Alpine Linux (musl libc)
musl libc's gethostid() ignores /etc/hostid and returns 0, so the
hostid verification in mmp_set_hostid always fails after zgenhostid
writes the file. Fall back to reading /etc/hostid directly with od
when the hostid command disagrees, which works correctly on both
glibc and musl systems.
Fixes the following tests on Alpine 3.24:
- mmp/mmp_active_import
- mmp/mmp_concurrent_import
- mmp/mmp_exported_import
- mmp/mmp_hostid
- mmp/mmp_inactive_import
- mmp/mmp_on_off
- mmp/mmp_on_thread
- mmp/mmp_on_uberblocks
- mmp/mmp_on_zdb
- mmp/mmp_reset_interval
[7 lines not shown]
CI: boot linux-stable instead of linux-virt on the Alpine runner
The Alpine runner's linux-virt kernel has CONFIG_SCSI_DEBUG disabled.
Several ZTS tests use the scsi_debug kernel module to simulate disks
that support expand and fault-injection scenarios real static disks
can't easily provide. Without it, load_scsi_debug() in blkdev.shlib
calls log_unsupported and they SKIP instead of running.
linux-stable has CONFIG_SCSI_DEBUG=m. Swap linux-virt/linux-virt-dev for
linux-stable/linux-stable-dev, and switch the extlinux default kernel
from "virt" to "stable" in /etc/update-extlinux.conf.
Fixes the following tests on Alpine 3.24 (SKIP -> PASS):
- cli_root/zpool_expand/zpool_expand_001_pos
- cli_root/zpool_expand/zpool_expand_003_neg
- cli_root/zpool_expand/zpool_expand_005_pos
- cli_root/zpool_expand/zpool_expand_006_pos
- cli_root/zpool_reopen/* (7 tests)
- cli_root/zpool_split/zpool_split_wholedisk
[15 lines not shown]
[RISCV] Align Expand Pseudo Pass Names (#218277)
There are four passes, each with different names/arguments. This change
aligns the names and arguments as much as possible, and renames the pass
files to match.
Some of the changes in RISCV.h look strange because I reordered the
passes to be together.
[clang] Gate llvm-mt on if libxml2 is provided (#217771)
Otherwise this will fail on the cmake invocation because the target
expects some libxml2 headers.
[SPIRV] Introduce CodeGenPassBuilder
This is the equivalent of TargetPassConfig for the NewPM. This currently
mirrors the existing TPC as closely as possible, but with TODOs for
passes that have not yet been ported to the NewPM.
Reviewers: aeubanks, Keenuts, VyacheslavLevytskyy
Pull Request: https://github.com/llvm/llvm-project/pull/218268
[SPIRV] Add Pass suffix to NewPM Passes
To be consistent with naming in other targets and the middle-end.
Reviewers: Keenuts, VyacheslavLevytskyy, aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/218206
[NFC][DirectX] Fix GCC 7 build failure caused by a6d7b2f5a931 (#218297)
GCC 7 cannot determine default-constructibility of ResourceBinding
when it has a default member initializer and is used inside
std::variant. Add explicit default and parameterized constructors.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
[SPIRV] Move NewPM pass definitions to SPIRV.h
To be consistent with all the other targets that have been ported to the
NewPM (BPF, WebAssembly, X86, Lanai, MSP430). These definitions are
pretty lightweight and putting them in a central place avoids a lot of
per-header boilerplate (namespaces, forward declarations, includes) that
one would otherwise need.
Reviewers: aeubanks, VyacheslavLevytskyy, Keenuts
Pull Request: https://github.com/llvm/llvm-project/pull/218205
[SPIRV] Mark NewPM Passes RequirePassInfoMixin
These were converted from PassInfoMixin to OptionalPassInfoMixin when it
was originally introduced given none of these classes defined
isRequired. However, the LegacyPM versions of the passes never call
skipFunction and they are necessary for lowering, so mark them required.
This changes the behavior on the function passes. This is a no-op on the
module passes, but more clearly indicates intent.
Reviewers: Keenuts, VyacheslavLevytskyy, aeubanks
Pull Request: https://github.com/llvm/llvm-project/pull/218202
Revert "atomic: Implement atomic_{set,clear}_8 in _atomic_subword.h"
This commit fails to compile for powerpc64le. Just revert it as it's
only a cleanup motivated by adding support for KASAN to riscv.
This is a direct commit to stable/15.
This reverts commit 318915568443f1fdb65faab0f559c872f09628c6.
Reported by: jenkins
Revert "atomic: Implement atomic_{set,clear}_8 in _atomic_subword.h"
This commit fails to compile for powerpc64le. Just revert it as it's
only a cleanup motivated by adding support for KASAN to riscv.
This is a direct commit to stable/15.
This reverts commit 318915568443f1fdb65faab0f559c872f09628c6.
Reported by: jenkins