Page MenuHomeFreeBSD

Aarch64 support for truss
ClosedPublic

Authored by kib on Oct 1 2015, 1:52 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Sep 21, 6:48 PM
Unknown Object (File)
Wed, Sep 17, 7:57 AM
Unknown Object (File)
Jul 7 2025, 7:20 AM
Unknown Object (File)
Jul 4 2025, 3:31 PM
Unknown Object (File)
Jun 26 2025, 2:57 PM
Unknown Object (File)
Jun 16 2025, 1:48 PM
Unknown Object (File)
Jun 13 2025, 9:54 AM
Unknown Object (File)
Jun 12 2025, 9:56 AM
Subscribers

Details

Test Plan

truss ls

mmap(0x0,32768,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 1078124544 (0x4042e000)
issetugid() = 0 (0x0)
lstat("/etc",{ mode=drwxr-xr-x ,inode=1123584,size=2048,blksize=32768 }) = 0 (0x0)
lstat("/etc/libmap.conf",{ mode=-rw-r--r-- ,inode=1123621,size=102,blksize=32768 }) = 0 (0x0)
openat(AT_FDCWD,"/etc/libmap.conf",O_CLOEXEC,00) = 3 (0x3)
fstat(3,{ mode=-rw-r--r-- ,inode=1123621,size=102,blksize=32768 }) = 0 (0x0)
mmap(0x0,102,PROT_READ,MAP_PRIVATE,3,0x0) = 1078157312 (0x40436000)
close(3) = 0 (0x0)
lstat("/usr",{ mode=drwxr-xr-x ,inode=401280,size=512,blksize=32768 }) = 0 (0x0)
lstat("/usr/local",{ mode=drwxr-xr-x ,inode=401287,size=512,blksize=32768 }) = 0 (0x0)
lstat("/usr/local/etc",{ mode=drwxr-xr-x ,inode=483268,size=512,blksize=32768 }) = 0 (0x0)
lstat("/usr/local/etc/libmap.d",0x7fffffdbc0) ERR#2 'No such file or directory'
munmap(0x40436000,102) = 0 (0x0)
openat(AT_FDCWD,"/var/run/ld-elf.so.hints",O_CLOEXEC,00) = 3 (0x3)
read(3,"Ehnt\^A\0\0\0\M^@\0\0\0-\0\0\0\0"...,128) = 128 (0x80)
lseek(3,0x80,SEEK_SET) = 128 (0x80)

Diff Detail

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

Event Timeline

kib retitled this revision from to Aarch64 support for truss.
kib updated this object.
kib edited the test plan for this revision. (Show Details)
kib added reviewers: andrew, jhb.
kib set the repository for this revision to rS FreeBSD src repository - subversion.
kib removed rS FreeBSD src repository - subversion as the repository for this revision.

Per emaste request, remov Fagan' copyright and clauses 3,4.

Fix SYS_syscall handling.

I think that the kernel code mis-handles 8-args syscalls done through SYS_syscall, by failing to fetch the arg 8 from the stack. The truss follows kernel currently. I am not sure that we have such 8-args syscall,

git grep -e n_args -- sys/kern/systrace_args.c | grep 8

does not show any output.

jhb edited edge metadata.

You beat me to it. :)

usr.bin/truss/aarch64-fbsd.c
45 ↗(On Diff #8996)

I plan on doing a sweep to fix this warning in all the backends, but my plan was to just put 'static' before the #include.

This revision is now accepted and ready to land.Oct 1 2015, 4:35 PM
This revision was automatically updated to reflect the committed changes.