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
Unknown Object (File)
Thu, Aug 27, 6:45 AM
Unknown Object (File)
Wed, Aug 26, 2:35 AM
Unknown Object (File)
Wed, Aug 19, 12:54 PM
Unknown Object (File)
Tue, Aug 18, 8:31 PM
Unknown Object (File)
Tue, Aug 18, 8:00 PM
Unknown Object (File)
Tue, Aug 18, 5:06 PM
Unknown Object (File)
Tue, Aug 18, 4:43 PM
Unknown Object (File)
Tue, Aug 18, 11:26 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 Not Applicable
Unit
Tests Not Applicable

Event Timeline

trasz requested review of this revision.Sep 9 2020, 4:42 PM
sys/amd64/linux/linux_sysvec.c
225 ↗(On Diff #76823)

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 ↗(On Diff #76823)
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.