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
F135949720: D26378.diff
Fri, Nov 14, 11:46 AM
Unknown Object (File)
Wed, Nov 12, 5:59 AM
Unknown Object (File)
Sun, Nov 9, 11:41 PM
Unknown Object (File)
Sun, Nov 9, 11:40 PM
Unknown Object (File)
Sun, Nov 9, 11:40 PM
Unknown Object (File)
Sun, Nov 9, 11:35 PM
Unknown Object (File)
Sun, Nov 9, 11:34 PM
Unknown Object (File)
Sat, Nov 8, 4:56 AM

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 33558
Build 30812: 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.