Page MenuHomeFreeBSD

Rework the arm64 sigtramp code to be a trampoline
ClosedPublic

Authored by andrew on Dec 29 2021, 6:03 PM.
Tags
None
Referenced Files
F163262942: D33690.id100711.diff
Tue, Jul 21, 1:37 PM
F163219385: D33690.id103566.diff
Tue, Jul 21, 4:16 AM
F163205647: D33690.id.diff
Tue, Jul 21, 1:20 AM
Unknown Object (File)
Sat, Jul 18, 12:39 PM
Unknown Object (File)
Sat, Jul 4, 4:32 PM
Unknown Object (File)
Fri, Jul 3, 3:41 AM
Unknown Object (File)
Mon, Jun 29, 10:48 AM
Unknown Object (File)
Jun 11 2026, 2:00 AM
Subscribers

Details

Summary

To help with switching to a vdso sigtramp switch to passing through the
sigcode function when entering a signal. This ensures the return address
is within the function.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sys/arm64/arm64/exec_machdep.c
633

When does this case needed at all?

sys/arm64/arm64/exec_machdep.c
633

It's used in Linux emulation.

sys/arm64/arm64/exec_machdep.c
633

Don't Linux emulation need its own sendsig() implementation?

I doubt that our sigframe format is identical to the Linux one. Even, if unlikely it is, there is high probability that we diverge in future.

Rebase past removing the sv_sigcode_base check

This revision was not accepted when it landed; it landed in state Needs Review.Mar 7 2022, 11:20 AM
This revision was automatically updated to reflect the committed changes.