[DWARFLinker] Unique a static data member independent of its tag (#217751)
A C++ static data member is a DW_TAG_member with DW_AT_declaration in
DWARF 4 and a DW_TAG_variable in DWARF 5 (DWARF 5 section 5.7.6). Clang
chooses between the two from -gdwarf-version alone, so both reach the
linker whenever objects built at different versions are linked.
Uniquing in the parallel linker identifies a data member by its index
among the record's DW_TAG_member children, and DW_TAG_variable children
are not counted.
```
struct S {
static const int kMask = 1;
int field;
};
```
In the example above, kMask is counted in the DWARF 4 unit and takes
[10 lines not shown]
[Reassociate]Keep fmul/fadd pairs together for fma
Do not linearize one-use contract fmul/fadd pairs into the enclosing
expression tree, so they stay fusable as fma. Unpack them only when a
repeated factor exists, so factorization still applies.
Fixes #211521
Assisted-by: Cursor
Reviewers: krzysz00, dtcxzyw
Pull Request: https://github.com/llvm/llvm-project/pull/215873
grafana: update to 13.2.0
CVE-2026-17183
An authenticated organization user who can create or edit alert rules
in a folder can query a datasource for which they do not have
datasources:query permission.
ZTS: check project ID inheritance and renames within a project directory
Covers both of the preceding changes. For the inheritance: a new symlink
and a new FIFO each add an object to the containing directory's project,
which only happens once non-regular files inherit a project ID, and a
symlink can then be renamed into a different directory carrying the same
project ID, which rename(2) permits only when the two project IDs match.
For the rename exemption: a regular file and a symlink are created
before the directory is tagged, so they carry no project ID of their
own, as every symlink on an existing pool does. Renaming each of them
within that directory afterwards fails with EXDEV unless the
cross-project check exempts renames whose source and target directories
are the same. The same renames are then repeated for objects created
after the tagging, along with replacing a symlink with "ln -sfn", and
again in an inheriting subdirectory.
A rename that does cross into a different project is still refused.
[7 lines not shown]
Allow renames within a single directory under project inheritance
A rename that keeps the object in the directory it already lives in
cannot move it between projects, so refusing it with EXDEV is never
right. Objects created before the previous commit carry no project ID of
their own, which makes this reachable on existing pools: a symlink in a
project directory cannot be renamed even to another name beside itself,
and "ln -sfn" over an existing path fails.
zfs_link() keeps its unconditional check. It has no source directory to
compare against -- a hard link names an object that may live anywhere --
so there is no equivalent "the object is already here" case to exempt.
Linking a pre-existing symlink, device node or FIFO into the project
directory that already holds it therefore still fails with EXDEV, until
the object is given a project ID of its own.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Matt Turner <mattst88 at gmail.com>
Closes #18932
Inherit the project ID for every object type
zfs_mknode() only assigned a project ID to regular files and
directories, so a symlink, device node, FIFO or socket created inside a
directory with ZFS_PROJINHERIT set was left at ZFS_DEFAULT_PROJID. The
cross-project checks in zfs_rename() and zfs_link() compare the object's
project ID against the directory's, so such an object is treated as
foreign to the very directory holding it, and cannot be renamed or
linked there at all -- "ln -sfn", which creates the new symlink under a
temporary name and renames it into place, fails with EXDEV.
ext4 and XFS store a project ID on every inode type and so do not have
this problem. Do the same, and quota-check new symlinks and rename
whiteouts against the inherited ID rather than the default one, so their
space is accounted to the project that owns them.
This changes accounting for newly created objects: symlinks, device
nodes and FIFOs now consume the project's quota where they previously
consumed none, so on a dataset already at its project quota, creating
[12 lines not shown]
[DWARFLinker] Erase the type ref patch list with the section data (#217989)
SectionDescriptor::clearAllSectionData drops every patch list but
ListDebugDieTypeRefPatch. maybeResetToLoadedStage calls eraseSections()
on a unit which is already past Stage::Cloned, so that list outlives the
section content it points into and is then applied to the offsets of the
re-cloned content.
databases/py-pymysql: Update to 1.2.0
Patch pyproject.toml to keep the legacy license table to keep
compatiable with current devel/py-setuptools (63.1.0).
[NVVM][NVPTX] Support decompress_b feature for tcgen05.mma intrinsics (#216312)
Support `decompress_b` feature for `tcgen05.mma` intrinsics in the
NVVM/NVPTX flow.
[runtimes] Escape list separators when forwarding search paths (#216169)
`CMAKE_PREFIX_PATH` and `CMAKE_PROGRAM_PATH` are forwarded to the
runtimes sub-build as `-D` arguments, but a CMake list is just a
semicolon-separated string, so `list(APPEND)` splits a multi-entry path
across several elements. The sub-build is then configured with only the
first entry, and the rest become stray positional arguments to cmake.
Configuring with `-DCMAKE_PREFIX_PATH="/aaa;/bbb"
-DCMAKE_PROGRAM_PATH="/ccc;/ddd"` and `-DLLVM_ENABLE_RUNTIMES=libunwind`
produces this runtimes configure command today:
```
-DCMAKE_PREFIX_PATH=/aaa
/bbb
-DCMAKE_PROGRAM_PATH=/ccc
/ddd
```
[13 lines not shown]
[zfs-2.3.9] Add workaround for device_access ZTS test
Add workaround to get the device_access ZTS tests working on 2.3.9.
Signed-off-by: Tony Hutter <hutter2 at llnl.gov>
Update lean4-git to lean4-4.33.1nb20260821
lean actial version 4.35.0-pre,
commit f6c7d68c7fc27e3b60585f30740c7d141d3c5b36, Release
While here, allow for lake to actually link under NetBSD.
[libc] Update NSIG value and usage on Linux. (#217481)
* Increase NSIG to 65 - one greater than the maximal possible value
allowed for a signal. POSIX doesn't reference NSIG constant itself, but
is explicit (after Issue 8 / Austin Group Defect 741) that SIGRTMAX
should be strictly less than sysconf(_SC_NSIG) and all SIG* constants
should be strictly less than NSIG_MAX
(https://pubs.opengroup.org/onlinepubs/9799919799/). Note that other
libc implementations on Linux (e.g. glibc and musl) also define NSIG as
the value greater than SIGRTMAX.
* Fix a handful of uses/comments to reflect the updated semantics.
* Add `_NSIG` alias to the same value for compatibility.
[libc] Implement sysinfo (#217471)
Adds the public sysinfo function and tests. The internal wrapper already
existed. I decided to avoid defining `struct sysinfo` since it's a
kernel struct defined in the UAPI headers. Can revisit in future if
necessary.
Assisted-by: Automated tooling, human reviewed.
Revert "vtnet: move offload functions to virtio_net.h to share them"
This reverts commit 44cddaa99dee0a634cf2713f71e799eb41397355.
It breaks the LINT-NOIP config.
devel/py-coverage: Update to 7.15.4
Rebase patch-setup.py onto the reorganized console_scripts block, and
additionally guard the setuptools.command.editable_wheel import, which
does not exist in current devel/py-setuptools (63.1.0). Editable
installs are not used when building the port, so falling back keeps the
wheel build working.
Merge tag 'livepatching-for-7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching
Pull livepatching updates from Petr Mladek:
- Move consistency checks to catch missing func->old_name before the
first access
- Allow to run livepatching selftests from top-level directory
* tag 'livepatching-for-7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
kbuild: unset sub_make_done before calling kselftest build system
livepatch: Fix NULL pointer dereference in klp_find_func()