Skip to content

Backport #87 to 6.18-lts: x86: fault: emulate trampolines that start with endbr - #91

Open
edera-rebase-app[bot] wants to merge 1 commit into
edera/6.18-ltsfrom
backport/edera-6.18-lts/pr-87
Open

edera-rebase-app[bot] wants to merge 1 commit into
edera/6.18-ltsfrom
backport/edera-6.18-lts/pr-87

Conversation

@edera-rebase-app

Copy link
Copy Markdown

Backport of #87 from edera/mainline to edera/6.18-lts (aab8db4df0e4), prepared by Claude. Run log.

Merge with Rebase and merge, so edera/6.18-lts stays linear.

Independent checks

Builds: success (x86_64 and arm64 vmlinux with the Edera features built in).

LTS tip before aab8db4df0e4
LTS tip after e57c1d66ff79
Commits requested 1
  • New branch fast-forwards the LTS tip.
  • Backported commits are linear.
  • All 1 requested commits backported in order, each with its source's subject and identical +/- lines.

Claude's report

Summary

One commit requested, one backported unchanged: 779605ce32cf "x86: fault: emulate trampolines that start with endbr" cherry-picked cleanly onto edera/6.18-lts with -x. The OpenPaX EMUTRAMP matchers it touches (openpax_emulate_trampoline_32/64 in arch/x86/mm/fault.c) are identical on 6.18-lts and mainline, and the patch only uses get_user() and local variables, so it needs nothing from upstream or from any other pending Edera commit. verify-backport.sh passes locally (fast-forward, linear, same subject, identical +/- lines), and I expect the workflow's checker to pass as well.

Needs a decision

None.

Adapted commits

None.

Left out

None.

Builds

BUILD_RESULTS

gcc built with -fcf-protection, the default on Ubuntu and Fedora,
starts its nested-function trampolines with endbr64, or endbr32 for
32-bit code. The EMUTRAMP matchers compare the bytes at the faulting
address against trampolines that start with a mov, so none of these
match and the task is killed with SIGSEGV.

Skip a leading endbr before matching. The only relative target, the
32-bit jmp, is computed from the address after it.

Signed-off-by: Kavi <kavi@edera.dev>
(cherry picked from commit 779605c)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant