Page MenuHomeFreeBSD

Move SV_ABI_ERRNO translation to linux-specific code
ClosedPublic

Authored by trasz on Sep 9 2020, 4:42 PM.
Tags
None
Referenced Files
F149625980: D26378.id77000.diff
Wed, Mar 25, 6:52 PM
Unknown Object (File)
Tue, Mar 24, 1:59 PM
Unknown Object (File)
Tue, Mar 24, 3:08 AM
Unknown Object (File)
Mon, Mar 23, 5:41 PM
Unknown Object (File)
Tue, Mar 17, 5:41 AM
Unknown Object (File)
Mon, Mar 16, 7:06 AM
Unknown Object (File)
Sun, Mar 15, 11:15 AM
Unknown Object (File)
Sun, Mar 8, 2:24 PM

Details

Summary

Move SV_ABI_ERRNO translation to linux-specific code.
No functional changes intended.

This is a dependency for https://reviews.freebsd.org/D26388.

Diff Detail

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

Event Timeline

trasz requested review of this revision.Sep 9 2020, 4:42 PM
sys/amd64/linux/linux_sysvec.c
225

Since you are doing such manipulations, it probably makes sense to stop use freebsd-native cpu_set_syscall_retval() in linux_set_syscall_retval, at least on i386 and amd64. From what I remember, linux convention is that both normal return and error are set in %rax/%eax, and PSL_C is not set in case of error. So we can stop corrupting PCL_C for Linux.

sys/amd64/linux/linux_sysvec.c
225
This revision is now accepted and ready to land.Sep 11 2020, 6:58 PM
This revision now requires review to proceed.Sep 14 2020, 10:26 AM

Fixed tinderbox even more.

This revision was not accepted when it landed; it landed in state Needs Review.Sep 15 2020, 4:41 PM
This revision was automatically updated to reflect the committed changes.