Page MenuHomeFreeBSD

KGDB fixes for amd64 and aarch64.
ClosedPublic

Authored by jhb on Jan 19 2018, 1:27 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 19, 11:45 PM
Unknown Object (File)
Fri, Apr 19, 11:45 PM
Unknown Object (File)
Fri, Apr 19, 11:45 PM
Unknown Object (File)
Fri, Apr 19, 2:23 PM
Unknown Object (File)
Wed, Apr 17, 1:43 PM
Unknown Object (File)
Jan 31 2024, 10:12 AM
Unknown Object (File)
Jan 31 2024, 10:11 AM
Unknown Object (File)
Jan 31 2024, 10:11 AM

Details

Summary
  • Update the amd64 kernel support to recognize mchk_calltrap as a trapframe generator.
  • Remove some unneeded headers from fbsd-kld.c.
  • Various fixes to get stack traces working for aarch64 kernels:
    • Map the LR register from the PCB to PC instead of LR.
    • Skip the PC register from the PCB as it isn't initialized to anything.
    • Correct the register cache map for the PCB. The old one had the offsets of pcb_sp and pcb_pc reversed.
    • Don't map all of the saved general purpose registers in a trapframe to X1 rather than X0 .. X29.
    • Use correct name for el0 trapframe entry points.
Test Plan
  • Actually verified stack traces from kgdb on my rpi this time.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

pizzamig added a subscriber: pizzamig.

look good to me

Macro lgtm:

This revision is now accepted and ready to land.Jan 26 2018, 3:38 PM
This revision was automatically updated to reflect the committed changes.