Page MenuHomeFreeBSD

linuxulator: do not include legacy syscalls on arm64
ClosedPublic

Authored by emaste on Apr 30 2018, 12:51 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Jul 25, 8:37 PM
Unknown Object (File)
Wed, Jul 22, 6:44 AM
Unknown Object (File)
Mon, Jul 20, 3:41 AM
Unknown Object (File)
Sun, Jul 19, 2:03 AM
Unknown Object (File)
Sat, Jul 11, 1:55 PM
Unknown Object (File)
Fri, Jul 10, 8:00 AM
Unknown Object (File)
Sat, Jul 4, 4:52 AM
Unknown Object (File)
Thu, Jul 2, 11:26 PM
Subscribers

Details

Summary

Existing linuxulator platforms (i386, amd64) support legacy syscalls, such as non-*at ones like open, but arm64 and other new platforms do not.

Wrap these in #ifdef LINUX_LEGACY_SYSCALLS, #defined in the MD linux.h files. We may need finer grained control in the future but this is sufficient for now.

Diff Detail

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

Event Timeline

emaste added inline comments.
sys/compat/linux/linux_stats.c
84–99 ↗(On Diff #41997)

will add #ifdef LINUX_LEGACY_SYSCALLS around these static fns too

How will this work if we decide to add linux32 on arm64? I expect we will need to implement the legacy syscalls there.

How will this work if we decide to add linux32 on arm64? I expect we will need to implement the legacy syscalls there.

Looks like the syscall files are compiled separately into linux.ko and linux64.ko so we can just #define LINUX_LEGACY_SYSCALLS for 32-bit arm.

This revision is now accepted and ready to land.Jun 15 2018, 2:03 PM
This revision was automatically updated to reflect the committed changes.