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
F133110272: D26378.id77057.diff
Thu, Oct 23, 1:44 AM
Unknown Object (File)
Sun, Oct 19, 12:26 AM
Unknown Object (File)
Fri, Oct 17, 1:09 AM
Unknown Object (File)
Fri, Oct 10, 12:55 PM
Unknown Object (File)
Sun, Sep 28, 2:01 PM
Unknown Object (File)
Thu, Sep 25, 8:52 AM
Unknown Object (File)
Sep 19 2025, 4:34 PM
Unknown Object (File)
Sep 19 2025, 12:16 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 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.