Page MenuHomeFreeBSD

Enable use of a global shared page for RISC-V.
ClosedPublic

Authored by jhb on Nov 6 2018, 9:09 PM.
Tags
None
Referenced Files
F166105674: D17875.id50084.diff
Tue, Aug 11, 6:43 PM
F166070230: D17875.diff
Tue, Aug 11, 12:27 PM
Unknown Object (File)
Mon, Aug 10, 9:59 AM
Unknown Object (File)
Mon, Aug 10, 1:10 AM
Unknown Object (File)
Sun, Aug 9, 9:11 AM
Unknown Object (File)
Thu, Aug 6, 11:58 PM
Unknown Object (File)
Jul 11 2026, 5:06 PM
Unknown Object (File)
May 14 2026, 2:42 PM
Subscribers

Details

Summary

machine/vmparam.h already defines the SHAREDPAGE constant. This
change just enables it for ELF executables. The only use of the shared
page currently is to hold the signal trampoline.

Test Plan
  • ran my 'sigframe' test program which raises nested signals that I use to test signal frame unwinding under gdb under gdb and verified the signal trampoline was executing out of the shared page rather than the stack.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

markj added inline comments.
sys/riscv/riscv/elf_machdep.c
114 ↗(On Diff #50084)

Copy-pasted from arm64, it seems. Looks like we should delete both definitions.

This revision is now accepted and ready to land.Nov 6 2018, 9:14 PM
jhb marked an inline comment as done.Nov 6 2018, 9:15 PM
jhb added inline comments.
sys/riscv/riscv/elf_machdep.c
114 ↗(On Diff #50084)

This is a separate question that won't be committed. However, I think we should just be able to delete this extra brand info? It also doesn't belong in arm64.

This revision was automatically updated to reflect the committed changes.