Page MenuHomeFreeBSD

Make truss work for CloudABI processes on aarch64.
ClosedPublic

Authored by ed on Oct 28 2015, 9:57 AM.
Tags
None
Referenced Files
F103393562: D4023.id9767.diff
Sun, Nov 24, 11:01 AM
F103392534: D4023.id9817.diff
Sun, Nov 24, 10:42 AM
Unknown Object (File)
Fri, Nov 22, 1:37 PM
Unknown Object (File)
Fri, Nov 22, 11:29 AM
Unknown Object (File)
Fri, Nov 22, 7:54 AM
Unknown Object (File)
Fri, Nov 22, 7:29 AM
Unknown Object (File)
Mon, Nov 18, 9:05 PM
Unknown Object (File)
Sun, Nov 17, 1:53 PM
Subscribers

Details

Summary

This change copies over amd64-cloudabi64.c to aarch64-cloudabi.c and
adjusts it to fetch the proper registers on aarch64. To reduce the
amount of shared code, the errno conversion function is moved into a
separate source file.

Test Plan

truss has been run on the unit testing binary. The output looks all
right.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 950
Build 950: arc lint + arc unit

Event Timeline

ed retitled this revision from to Make truss work for CloudABI processes on aarch64..
ed updated this object.
ed edited the test plan for this revision. (Show Details)
ed added reviewers: andrew, jhb.

cloudabi.{c,h} both seem to be empty.

ed edited edge metadata.

Upload it through the web.

For some reason Arcanist is having troubles uploading new source files on my system. Let's see what happens if we just paste the raw diff in Phabricator.

Looks fine to me. FWIW, I already have a WIP branch where I've moved the errno tables and syscall tables out of truss/kdump into a new shared library (libsysdecode). This also adds CloudABI to kdump (since it is very cheap to do).

I have some more work to do on the library, but I might start importing some of the simpler bits (the ioctl.c and syscall name moves at least) soon.

https://github.com/freebsd/freebsd/compare/master...bsdjhb:libsysdecode

andrew edited edge metadata.
This revision is now accepted and ready to land.Oct 29 2015, 9:45 PM
This revision was automatically updated to reflect the committed changes.