Page MenuHomeFreeBSD

linux: Partially implement TCSBRK
ClosedPublic

Authored by trasz on Oct 4 2021, 12:42 PM.
Tags
None
Referenced Files
F108898358: D32291.diff
Wed, Jan 29, 7:19 AM
Unknown Object (File)
Sun, Jan 26, 6:29 PM
Unknown Object (File)
Sun, Jan 26, 3:08 PM
Unknown Object (File)
Thu, Jan 23, 6:54 PM
Unknown Object (File)
Sat, Jan 18, 8:01 AM
Unknown Object (File)
Thu, Jan 16, 5:45 PM
Unknown Object (File)
Dec 3 2024, 9:09 PM
Unknown Object (File)
Nov 28 2024, 2:58 PM
Subscribers

Details

Summary

This fixes tcflush(3), unbreaking cheribuild.py under arm64 Focal.

Diff Detail

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

Event Timeline

trasz requested review of this revision.Oct 4 2021, 12:42 PM
emaste added inline comments.
sys/compat/linux/linux_ioctl.c
763

arg == 0 means break, should this not be ioctl TCSBRK (arg=0) not implemented or something like that?

sys/compat/linux/linux_ioctl.c
763

I think so too... I noticed that.

The implementation, though, wouldn't be hard, since it's just a ioctl(TIOCSBRK), pause_sbt(0.4s), ioctl(TIOCCBRK)

sys/compat/linux/linux_ioctl.c
763

My thinking was, this is additional information that doesn't help the user in any way. The point of this message is to spot the problem and to be able to grep for it, not to explain the actual situation.

And yes, implementation is trivial; it's the real-world testcase I don't have. From my experience it's better to leave a (loud) stub than commit simple, but untested code.

sys/compat/linux/linux_ioctl.c
763

Sigh, now I see what you mean - I thought it was about the additional arg, not the wrong ioctl name.

trasz marked an inline comment as done.Oct 8 2021, 2:45 PM

Minor wording tweak, but now it's fine.

sys/compat/linux/linux_ioctl.c
763

s/arg 0/arg == 0/ here for clarity.

This revision is now accepted and ready to land.Oct 8 2021, 2:49 PM
sys/compat/linux/linux_ioctl.c
763

I think I prefer the current version, due to consistency of how the rest of Linuxulator uses it.

This revision was automatically updated to reflect the committed changes.