NAS-144148 / 28.0.0-BETA.1 / Reject leading and trailing spaces in new dataset name components (#19906)
ZFS accepts a dataset name component that begins or ends with a space,
and the API only rejected a space at the very end of the full path. So
`pool.dataset.create` with `create_ancestors` could still create a
parent such as `tank/mid ` from `tank/mid /child`, and a leading space
(`tank/ data`) was accepted by create and rename alike. The web UI
already blocks spaces in dataset names; this closes the API side.
- `pool.dataset.create`, `pool.dataset.rename` and `zfs.resource.create`
reject a new name whose last component begins or ends with a space. A
leading space was accepted before and now gets an error saying so on
every API version. A trailing space was already rejected:
`zfs.resource.create` now reports it with the same specific error, while
`pool.dataset.create` and `pool.dataset.rename` keep the generic
invalid-name message because the API's own name validation catches it
first.
- With `create_ancestors`, every parent the request would create is
checked too, and the error names the closest offending parent.
[5 lines not shown]
net/samba423: update to 4.23.13
Changes since 4.23.12
---------------------
* BUG 16097: POSIX ACL backend silently discards errors when processing NT
ACLs with non-canonical ordering
* BUG 15962: SMB3 SESSION SETUP responses must always be signed
* BUG 16081: winbindd_child_msg_filter: talloc_get_type_abort crashes when
winbind max domain connections > 1
* BUG 16239: Fix parsing of uppercase "0X" hex values in the "kdc default
domain supported enctypes" smb.conf parameter.
* BUG 16240: smbd temporary mkdir name can exceed NAME_MAX for otherwise
valid client names
* BUG 16258: Python smbconf transaction_start() lacks a talloc stack frame
with CTDB
* BUG 16254: CTDB database operations can be run against incorrect nodes
Reported by: portscout
Sponsored by: Klara, Inc.
[clang-tidy] Ignore parameters of `main` in `misc-const-correctness` (#228120)
The standard fixes the signature of `main`, so suggesting `const` for
its parameters is a false positive. The check warned on `char **argv`
but not on `char *argv[]`. The array form did not warn because the check
does not analyze array-style parameters.
The check now skips all parameters of `main`. Local variables inside
`main` are still checked.
Fixes https://github.com/llvm/llvm-project/issues/227988
[RegisterCoalescer] Update undef flags inside bundles (#227615)
When joining makes an earlier subregister def a partial redefinition,
JoinVals::pruneValues removes its undef flag. It only looked at the
instruction returned by getInstructionFromIndex, which for a bundle is
the BUNDLE header, so the def inside the bundle kept a stale undef flag
that disagreed with the header. Update all operands in the bundle.
Co-authored-by: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
[IList] Fix getNodeParent() interaction with const qualifiers (#228362)
In the old implementation getNodeParent() did not work at all on
`const_iterator` (because the body would fail to compile) and `const
iterator` (because the method was not marked const).
Fix this and add more unit tests for various combinations of constness.
It should be noted that `const iterator` behaves just like plain
`iterator` in that it returns a non-const parent pointer. Only
`const_iterator` returns a const parent pointer.
[mlir][tosa] Add support for ARGMIN (#227997)
- Add ARGMIN table gen
- Add validators and folders
- Add positive and negative tests
- Add compliance info
Signed-off-by: Iliyan Georgiev <iliyan.georgiev at arm.com>
pf(4): pfr_insert_kentry() always needs PF_LOCK()
pfr_insert_kentry() inserts an IP address into a table. The table's
consistency is protected by PF_LOCK(). Unfortunately, PF_LOCK()
protection is missing for the code path executed on behalf
of the overload action in a pf rule. The overload action instructs
the firewall to insert the packet's source address into the table specified
as the overload action parameter. That particular code path in
pf_test() function runs without any lock protection.
The bug was introduced in revision 1.1074 and remained unnoticed
until now, when it was kindly reported by alf (a.schlichting () lemarit ! com>)
OK henning@, OK dlg@, OK jmatthew@
[LV][NFC] Add more debug when setting the widening decision (#227617)
Whilst debugging some vectorisation issues recently, I discovered the
vectoriser is very opaque about it's decision making process which makes
it very hard to figure out what is happening. I've added debug messages
to help the developer understand the process better.
Tests assisted by Codex (GPT-5.5)
clang: Set the exception model module flag for IR inputs
Previously the -exception-model cc1 flag did nothing for IR inputs. Record the
module flag in the IR input path too, next to the existing triple override. A
model contradicting one the input module already records is rejected matching
err_data_layout_mismatch and the conflict llc reports for the same pair of
inputs.
This is to keep the wasm-eh.ll test passing when the TargetOptions field for
ExecptionModel is removed. I'm not sure if this behavior really needs to be
preserved given the bitcode producers should now materialize the flag in the
IR.
Co-authored-by: Claude Opus 5 <noreply at anthropic.com>
textproc/py-textual-textarea: Update to 0.18.5
- Update list of run-dependencies: the module requires textual[sintax],
but the relative option in textproc/py-textual is OFF by default, so
add manually the relative modules.
ChangeLog:
1. https://github.com/tconbeer/textual-textarea/releases/tag/v0.18.5
Reported by: "github-actions[bot]" <notifications at github.com>
[AMDGPU] Price scalar integer to fp casts by source width and sign
Scalar sources between a byte and 31 bits fell to the default cost of one
while the matching vector lanes were already priced, which skewed the
difference SLP weighs a bundle against. Such a source is extended before
the conversion, and what the extension takes depends on the width, on the
sign and on whether the subtarget has SDWA and 16 bit instructions.
Sources narrower than a byte are left alone, because their vector form is
not priced either.
website: fix sub-menu in the header for mobile devices
If the browser width is less than 1300 pixels: click top left
on "About" and the sub-menu will not open anymore due the missing IDs.
PR: 297509
Approved by: carlavilla, ziaee
Fixes: 10633eb86b6396ec3fe8b666f8e250d67398fbec
Differential Revision: https://reviews.freebsd.org/D60236
[compiler-rt] Add print_coverage_summary to silence SanitizerCoverage dump logs (#228039)
When running a test suite of SanitizerCoverage-instrumented binaries,
the `SanitizerCoverage: … PCs written` summary on stderr can poison
FileCheck and cause unexpected failures.
There is no way to turn that print off today. At most you can use
`log_path`, but that still creates a text file per process. We could
have guard it on the verbosity option, but that would change the default
and may regress consumers that rely on this output.
This PR adds `print_coverage_summary` (default true). Set
`print_coverage_summary=0` to keep the dump log disable; .sancov files
are still written. The same guard is used on the Fuchsia path.
The new lit test is a copy of sanitizer_coverage_trace_pc_guard.cpp,
adapted to check the default print and print_coverage_summary=0.
[IRBuilder] Propagate fast-math flags to folding in CreateBinOpFMF (#227543)
Fast-math flags are used by InstSimplifyFolder, so we need to pass them
to the folding function in CreateBinOpFMF.
[IR] Suppress getGetElementPtr() deprecation in more places (#228364)
These methods are themselves deprecated. Clang does not warn for
them, but MSVC does.
[AMDGPU] Fold away S_AND of a lane mask with EXEC (#227729)
Instruction selection inserts an S_AND with EXEC on branch conditions
unconditionally, because it has not analysed what produced the lane
mask: see the AndExec handling in AMDGPUDAGToDAGISel::SelectBRCOND and
the S_CBRANCH_SCC* case of SIInstrInfo::moveToVALU. The result of a
V_CMP already has 0 in the bits of all inactive lanes, so the AND is
redundant.
SIPreEmitPeephole::optimizeVccBranch already removes some of these, but
it runs after register allocation and only matches a V_CMP in the VOPC
(_e32) encoding writing physical VCC. That requires SIShrinkInstructions
to have set a VCC register allocation hint, which it only does when
canShrink() succeeds, so any V_CMP that is VOP3-only (source modifiers,
or two SGPR sources) keeps its AND.
Fold the AND away in SIFoldOperands instead, which runs before the
register coalescer, so the V_CMP result can be coalesced into VCC.
Co-authored-by: Claude Opus 5 (1M context) <noreply at anthropic.com>