[RISCV] Fold shladd into Xqcisls scaled load/store in RISCVMergeBaseOffset (#182221)
We can fold `shxadd\qc.shladd` into base+offset load/store instructions
by transforming the load/store into `Xqcisls` scaled load/store
instructions.
For eg.
```
qc.e.li vreg1, s
shxadd vreg2, vreg3, vreg1
lx vreg4, imm(vreg2)
can be transformed to
qc.e.li vreg1, s+imm
qc.lrx vreg4, vreg1, vreg3, (1-7)
```
[5 lines not shown]
reap_kill_subtree_once(): reap_kill_proc_work() might drop proctree_lock
Due to this, restart the iteration over the p_reapsiblings if the lock
was dropped.
Reviewed by: markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D55288
procctl(PROC_REAP_KILL): align error reporting with pgkill(2)
ESRCH from cr_cansignal() means that the target process should be not
visible to the initiator. So do not report pids with ESRCH result.
Noted by: markj
Reviewed by: markj, olce
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D55341
procctl(PROC_REAP_KILL): use pgrp pg_killsx sx to sync with fork
PROC_REAP_KILL must guarantee that all reaper descendants are signalled.
In particular, it must ensure that forked but not yet fully linked
descendants cannot escape killing. Currently, proc_reap() fullfils the
guarantee by single-threading stopping the target process, which moves
the target to the userspace boundary, so the target cannot fork while
the signal is sent.
Single-threading has undesirable effect of sometimes terminating sleeps
with EINTR.
Since the time that the bug with PROC_REAP_KILL was fixed, we grow
the pg_killsx mechanism that is similarly used by the process group
signalling to ensure that no member of the process group escapes.
Reuse pg_killsx for PROC_REAP_KILL as well.
Besides the functional change of no longer causing spurious EINTR, not
single-threading the target means that we no longer need to delegate the
[9 lines not shown]
Attributor: Avoid calling identifyDefaultAbstractAttributes on declarations
Previously it would be called and inserted into a visited map,
but would never be used. This could possibly go one step further
and never add declarations to the SetVector of Functions. If I try
that, only one call graph printing test fails.
Status/2025Q4/intro.adoc: Add introduction
This introduction announces changes in the status reports schedule.
Reviewed by: adamw, Graham Percival <gperciva at tarsnap.com>
Pull Request: https://github.com/freebsd/freebsd-doc/pull/611
Articles/Status reports: Update deadlines
As discussed on developers@ the actual deadlines are not working.
It happens frequently that many reports are submitted past the deadline
and that publication gets stalled until all expected reports have
arrived.
Hence, from now on,
- we shall have a unique deadline on the 14th of the first month past
the end of the quarter;
- the deadline will be actually enforced: the full status reports shall
be published as soon as ready after the deadline. Reports that could not
make it within the deadline shall be moved (and possibly completed) to
the next quarter.
Reviewed by: adamw, Graham Percival <gperciva at tarsnap.com>
Pull Request: https://github.com/freebsd/freebsd-doc/pull/610
loader.efi: tss_pa setup seems to be flawed in trap.c
since sd_lobase is 24 bits, we would need to shift 24 bits, not 16.
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D55178