Handle two causes of the panic "lfs_ifile: looping". Repurpose the lfs_iflock
to be locked with RW_WRITER while the segment lock is held, preventing
updates to the Ifile while its blocks are being gathered; and allow more
iterations than 10 before panicking, since we might need to rewrite the
entire segment table one block per iteration. Issue uncovered in the course
of PR kern/60746.
Rename pwenc_secret_matches unit test to a unique basename
## Problem
The new `pytest/unit/utils/test_pwenc.py` shares its basename with the existing `tests/unit/test_pwenc.py`. The unit test run collects both trees in one pytest session, so collection aborts with "import file mismatch".
## Solution
Renamed the new file to `test_pwenc_secret_matches.py`, which also matches what it actually tests.
cpdup: Don't pass an uninitialized pointer to getgroups(0, ...).
getmygroups() passed *gidlist to the size-only getgroups() query
before it was initialized. The list argument is ignored when the
size is 0, so pass NULL instead.
Bug: #3425
libevtr: Fix off-by-one in string namespace indexing.
evtr_dump_string() indexed evtr->strings[ns] although the array is
sized EVTR_NS_MAX - 1. The namespace IDs are EVTR_NS_PATH=1,
EVTR_NS_FUNC=2 and EVTR_NS_DSTR=3, so ns == 3 runs one past the array
and aliases the following union member (fmts): the dynamic-string
namespace and the format-string table then share a hashtable, and the
table allocated for that slot by evtr_open_write() leaks.
The read side already uses maps[ns - 1], so make the write side
consistent and only allocate/free the EVTR_NS_MAX - 1 entries.
Also reject ns == 0 in evtr_load_string(); the old check let it
through and maps[ns - 1] would read before the array on corrupt input.
Bug: #3424
editors/openoffice-devel: Update to a new snapshot
Update openoffice-devel to a newer snapshot
Change the splash screen to say OpenOffice 5.
MFH: 2026Q3
(cherry picked from commit 1abe115b569e34b6197b26206cc461e38f28f52d)
editors/openoffice-devel: Upgrade to a new snapshot
Upgrade to a new snapshot of the upstream AOO42X branch.
Switch from system textproc/libtextcat to bundled libtextcat.
The system version probably never worked properly because it
lacks UTF-8 support, whereas the bundled version has been patched
to support UTF-8. Longer term, libtextcat should be replaced
by libexttextcat.
Disable WIKI_PUBLISHER and mark BROKEN. It relies on
apache-commons-httpclient which has an open MITM CVE. It should
be upgraded to Apache HttpComponents, but that requires a newer
java.
Disable bridgetest on i386 due to a uno core dump in testtools.
Removed old code optimization tweak that is probably left over
from when we used the buggy -Os compiler optimization flag.
[5 lines not shown]
editors/openoffice-devel: switch to upstream trunk
Switch to following the upstream trunk branch. The AOO42X is likely a
dead end, and the next major release will propably be 5.0.0.
(cherry picked from commit b630d5755e107f881a4c840c8165ead7c1a49670)
Accept stats_ex on zpool query vdevs
## Problem
truenas_pylibzfs added an extended mode to `ZFSPool.iostat()` that fills a new `stats_ex` field on every vdev. `status()` returns the same vdev struct, so its vdevs now carry `stats_ex` too (always `None` there). `zpool.query` passes those vdev dicts straight into `ZPoolVdev`, which forbids unknown keys, so every topology query failed with `extra_forbidden`. This broke `pool.create` at its change event and aborted the api, cloud, stig, directory services and sharing test suites at pool setup.
## Solution
Added a nullable `stats_ex` field to `ZPoolVdev` in both the v26 and v27 API models, the same way `path` was added ahead of its pylibzfs change. It defaults to `None`, so it works with both old and new pylibzfs.
cpdup: Don't pass an uninitialized pointer to getgroups(0, ...).
getmygroups() passed *gidlist to the size-only getgroups() query
before it was initialized. The list argument is ignored when the
size is 0, so pass NULL instead.
Bug: #3425
libevtr: Fix off-by-one in string namespace indexing.
evtr_dump_string() indexed evtr->strings[ns] although the array is
sized EVTR_NS_MAX - 1. The namespace IDs are EVTR_NS_PATH=1,
EVTR_NS_FUNC=2 and EVTR_NS_DSTR=3, so ns == 3 runs one past the array
and aliases the following union member (fmts): the dynamic-string
namespace and the format-string table then share a hashtable, and the
table allocated for that slot by evtr_open_write() leaks.
The read side already uses maps[ns - 1], so make the write side
consistent and only allocate/free the EVTR_NS_MAX - 1 entries.
Also reject ns == 0 in evtr_load_string(); the old check let it
through and maps[ns - 1] would read before the array on corrupt input.
Bug: #3424
fsck_msdosfs: fix head bitmap over-allocation on 32-bit platforms
bitmap_ctor() computed the allocation size as
roundup2(bits, LONG_BIT) / (LONG_BIT / 8)
The dividend is a count of bits, so converting it to bytes requires
dividing by 8 (bits per byte), not by LONG_BIT / 8 (bytes per long).
The two divisors happen to coincide on LP64, but on ILP32 platforms
the head bitmap was allocated at twice the required size; for a
FAT32 file system with close to 2^28 clusters, that is 64 MiB instead
of 32 MiB.
The extra half of the allocation was never accessed, so there is no
functional change other than the reduced memory footprint.
MFC after: 3 days
Pull Request: https://github.com/freebsd/freebsd-src/pull/2440
[MLIR][Python] Allow `Attribute` to denote unconstrained attributes in Python-defined ops (#224679)
Operation definitions support attribute constraints such as
`IntegerAttr`, `StringAttr`, and `IntegerAttr | StringAttr`, but
currently reject `Attribute` itself.
This change allows `Attribute` to denote an unconstrained attribute,
accepting both built-in and Python-defined attributes:
```python
class MyOp(MyDialect.Operation, name="my_op"):
arg: Operand
attr: Attribute
res: Result
```
This complements the unconstrained `Operand` and `Result` annotations
introduced in #220216. The annotation also works with `attribute()`
field specifiers, including `kw_only` and `default_factory`.
Assisted-by: Codex / GPT6
ihwpstate_intel: update dev.hwpstate_intel.%d.epp sysctl description
Catch up with 8452afeb568: now dev.hwpstate_intel.%d.epp accepts
values from 0 to 255. Update its description accordingly to sync
with the code and the man page.
rpi: boot normally, not verbose (#506)
* rpi: boot normally, not verbose
The Pi boot partition shipped `FreeBSD: -v` in cmdline.txt, from when the
board was being brought up and its serial log was the only instrument
there was. That is no longer the right default, and leaving it was a trap
rather than a nicety.
The Pi rootfs carries nextbsd-overlays' loader.conf.d, so it already gets
boot_mutemsgs="YES" (#363). RB_VERBOSE is exactly what that mute exempts,
so a -v that arrived would turn the quiet console back off on this board
alone, while every other machine stayed quiet.
It does not arrive today: parse_fdt_bootargs() only parses when
fdt_get_chosen_bootargs() succeeds, and a tryboot with that line produced
a boot that was not verbose, so the firmware appears not to be writing
/chosen/bootargs at all (nextbsd-kernel#93). So the flag was inert -- and
would have started working silently, on every Pi image, the day that was
[198 lines not shown]
[orc-rt] Pass the reporting Session to Session error reporters. (#226622)
Session error reporters previously received only the Error, and had to
be supplied to the Session constructor, so they had no direct way to
refer to the Session reporting the error (e.g. to include its address in
a log message).
This commit changes ErrorReporterFn to take the reporting Session along
with the Error, and adds a Session::logErrors reporter that logs errors
via ORC_RT_LOG at Error level in the Session category. logErrors is only
available when Error-level logging is compiled in
(ORC_RT_LOG_ENABLED(Error)), so that it can't silently discard errors in
configurations where logging is compiled out. The noErrors and
AccumulateErrors test helpers are updated to work as both plain and
Session error reporters.
Replace cl::bits with cl::list. NFC (#226399)
cl::bits packs enum values into an unsigned, which would block migration
to TableGen based representation. The three users only test membership.
LLM-aided