Page MenuHomeFreeBSD

Move SV_ABI_ERRNO translation to linux-specific code
ClosedPublic

Authored by trasz on Wed, Sep 9, 4:42 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
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

trasz created this revision.Wed, Sep 9, 4:42 PM
trasz requested review of this revision.Wed, Sep 9, 4:42 PM
trasz edited the summary of this revision. (Show Details)
kib added inline comments.Fri, Sep 11, 2:49 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.

trasz added inline comments.Fri, Sep 11, 6:25 PM
sys/amd64/linux/linux_sysvec.c
225 ↗(On Diff #76823)
kib accepted this revision.Fri, Sep 11, 6:58 PM
This revision is now accepted and ready to land.Fri, Sep 11, 6:58 PM
trasz updated this revision to Diff 77000.Mon, Sep 14, 10:26 AM

Fix tinderbox.

This revision now requires review to proceed.Mon, Sep 14, 10:26 AM
trasz updated this revision to Diff 77037.Tue, Sep 15, 5:31 AM

Fixed tinderbox even more.

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