[libc++][NFC] Move attribute macros out of __config into a detail header (#176903)
This patch moves all macros which expand to attributes into a detail
header, including the relatively complex visibility and ABI-hiding
attributes. This also adds sections for attributes that are important to
not be ignored. At the bottom there is a catch-all section for
attributes which can safely be ignored and are only important for the
quality of implementation.
Remove python-pam and plumb in pam_truenas
This commit removes the python-pam Python library dependency from
TrueNAS middleware and replaces it with truenas_pypam. The most
significant change is the migration of API key authentication from
simple PBKDF2 password hashing to SCRAM-SHA512 (Salted Challenge
Response Authentication Mechanism) as defined in RFC5802. SCRAM is an
authentication protocol that uses PBKDF2-HMAC-SHA512 for key
derivation. API keys are now stored with SCRAM-derived credentials
including salt, stored_key, server_key, and iteration count fields in
the database. A database migration automatically converts existing
PBKDF2-hashed API keys to SCRAM format transparently—existing API keys
will continue to work without requiring regeneration. The commit adds a
new SCRAM authentication mechanism for challenge-response authentication
with replay resistance and mutual validation capabilities, while
maintaining the existing API_KEY_PLAIN mechanism for simple
authentication.
The refactoring includes comprehensive changes to the authentication
[10 lines not shown]
capsicum.4: Replace 'fi' ligature and smart quotation mark
While here, wrap the line to 80 characters.
Reviewed by: jlduran
Fixes: c54534e60263 ("capsicum.4: Add some more detail from the Capsicum paper")
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D54761
(cherry picked from commit e6bafbeb1ee7a61ddfe92ba052c476c7646c405b)
capsicum.4: Replace 'fi' ligature and smart quotation mark
While here, wrap the line to 80 characters.
Reviewed by: jlduran
Fixes: c54534e60263 ("capsicum.4: Add some more detail from the Capsicum paper")
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D54761
(cherry picked from commit e6bafbeb1ee7a61ddfe92ba052c476c7646c405b)
witness: Provide facility to print detailed lock tree
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.
[4 lines not shown]
[LSR] Add unequal cost eval for dropping solutions
Some corner cases where a baseline solution is
equal to the strength reduced solution offer
regression cases when the evaluated solution is
allowed, we change this to allow equal solutions
to be dropped as well, keeping all the better
solutions to strength reduce.
[OpenMP] Cleanup synchronization primitives (#177710)
Summary:
These shouldn't be so different after we moved away from variants. It's
much simpler to define this in-line with a single preprocessor
definition. This should be equivalent less a few unnecessary function
definitions with the advantage that SPIR-V now has less work to do.
interfaces: generalise the dhcp6c_script using the new IFNAME variable #7647
The file was conceptually created in d36f0f4f62557 and before was a single
command line script... so add appropriate copyrights from that time onward.
Many thanks to Martin for pinoeering this back in the day!
[AArch64][llvm] Allow some `tlbip` insns to be used with only +tlbid
Allow `tlbip` instructions containing *E1IS*, *E1OS*, *E2IS* or *E2OS*
to be used with `+tlbid` or `+d128`. This is because the 2025 Armv9.7-A
MemSys specification says:
```
All TLBIP *E1IS*, TLBIP*E1OS*, TLBIP*E2IS* and TLBIP*E2OS* instructions
that are currently dependent on FEAT_D128 are updated to be dependent
on FEAT_D128 or FEAT_TLBID
```
[mlir][gpu] Add address space modifier to gpu.barrier (#177425)
This is a takeover of PR ##110527
This commit adds an optional list of memory fences to gpu.barrier,
allowing users to specify which memory scopes they wish to fence
explicitly, while leaving the default semantics (which are equivalent to
calling for a global and local fence by analogy to CUDA's __syncthreads)
unchanged. The new expanded semantics are implemented for SPIR-V and for
the AMDGPU backend.
See also
https://discourse.llvm.org/t/rfc-add-memory-scope-to-gpu-barrier/81021/2?u=fmarno,
where the default behavior of a gpu.barrier was hashed out (though note
that the examples based on VMCNT are outdated for AMDGPU in that memory
fences can now be annotated with the correct set of address spaces).
This commit also deprecates amdgpu.lds_barrier for usecases that don't
[9 lines not shown]
[LSR] Add unequal cost eval for dropping solutions
Some corner cases where a baseline solution is
equal to the strength reduced solution offer
regression cases when the evaluated solution is
allowed, we change this to allow equal solutions
to be dropped as well, keeping all the better
solutions to strength reduce.
[ConstraintElim] Strip IsKnownNonNegative (NFC) (#177993)
The IsKnownNonNegative field is redundant, as the use of ValueTracking's
isKnownNonNegative subsumes this.
Proof: https://github.com/dtcxzyw/llvm-opt-benchmark/pull/3390