Page MenuHomeFreeBSD

sysarch.x86.2: manual page for the sysarch(2) functions on x86
ClosedPublic

Authored by kib on Sat, Sep 26, 3:13 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Oct 17, 6:24 AM
Unknown Object (File)
Fri, Oct 16, 8:19 PM
Unknown Object (File)
Fri, Oct 16, 12:00 AM
Unknown Object (File)
Thu, Oct 15, 2:43 AM
Unknown Object (File)
Wed, Oct 14, 7:43 PM
Unknown Object (File)
Wed, Oct 14, 1:19 PM
Unknown Object (File)
Wed, Oct 14, 11:59 AM
Unknown Object (File)
Wed, Oct 14, 4:43 AM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
kib requested review of this revision.Sat, Sep 26, 3:13 PM
ziaee added inline comments.
lib/libsys/sysarch.x86.2
1–2 ↗(On Diff #187749)

You can use SPDX short form now

28 ↗(On Diff #187749)

Architecture dependent manuals have an optional architecture specifier in Dt.
i386 here includes amd64.
Although I think this is weird because we do not support i386, I think it should not mention i386 anywhere, only amd64.

45 ↗(On Diff #187749)

I think this is a subsection of DESCRIPTION.

142 ↗(On Diff #187749)

I think this is a subsection of DESCRIPTION

590 ↗(On Diff #187749)
669–673 ↗(On Diff #187749)

AUTHORS is a standard section for this

kib marked 6 inline comments as done.Sat, Sep 26, 4:56 PM
kib added inline comments.
lib/libsys/sysarch.x86.2
28 ↗(On Diff #187749)

It must mention i386, even if i386 kernels are annihilated. There are differences in the syscall for 32bit and 64bit processes.

kib marked an inline comment as done.

Suggested editing.

That's all from manpages mechanical side of things. But I do not really know about syscalls to review the content.

This revision is now accepted and ready to land.Sat, Sep 26, 5:09 PM

Fix typos and systematically markup instructions with .Dv.

This revision now requires review to proceed.Sat, Sep 26, 7:02 PM

I'm not sure it makes sense to duplicate the descriptions for i386_vm86, etc. vs just referring to the other manpages. I didn't quite make it all the way through the page in terms of my grammar suggestions (which you are free to ignore). In general this looks good to me, though I wish we had a better way of dealing with having an MD manpage for sysarch(2), e.g. presumably we will one day need sysarch.aarch64 or the like.

lib/libsys/sysarch.2
76
lib/libsys/sysarch.x86.2
27 ↗(On Diff #187768)
30–31 ↗(On Diff #187768)

Perhaps?

37 ↗(On Diff #187768)
39 ↗(On Diff #187768)
52 ↗(On Diff #187768)
54 ↗(On Diff #187768)
55 ↗(On Diff #187768)
63 ↗(On Diff #187768)
72–74 ↗(On Diff #187768)
84 ↗(On Diff #187768)
88 ↗(On Diff #187768)
90–91 ↗(On Diff #187768)
92 ↗(On Diff #187768)
103 ↗(On Diff #187768)
109 ↗(On Diff #187768)
112 ↗(On Diff #187768)
114 ↗(On Diff #187768)
129 ↗(On Diff #187768)
132 ↗(On Diff #187768)
142 ↗(On Diff #187768)
147 ↗(On Diff #187768)
149 ↗(On Diff #187768)
150 ↗(On Diff #187768)
151 ↗(On Diff #187768)
153 ↗(On Diff #187768)
162–172 ↗(On Diff #187768)
177 ↗(On Diff #187768)
178 ↗(On Diff #187768)
183 ↗(On Diff #187768)
188 ↗(On Diff #187768)
189 ↗(On Diff #187768)
192 ↗(On Diff #187768)
195–196 ↗(On Diff #187768)
198 ↗(On Diff #187768)
205–206 ↗(On Diff #187768)
208 ↗(On Diff #187768)
214 ↗(On Diff #187768)
221–222 ↗(On Diff #187768)
224–226 ↗(On Diff #187768)
228 ↗(On Diff #187768)
235–236 ↗(On Diff #187768)
242 ↗(On Diff #187768)
247 ↗(On Diff #187768)
248–249 ↗(On Diff #187768)
251 ↗(On Diff #187768)
254 ↗(On Diff #187768)
265 ↗(On Diff #187768)
266 ↗(On Diff #187768)
281 ↗(On Diff #187768)
289 ↗(On Diff #187768)
295 ↗(On Diff #187768)

FWIW, I had a 486dx4 with VME (and a TSC and CPUID and several other Pentium things). Maybe trim the second half of this sentence?

302 ↗(On Diff #187768)

I would just s/vm86/VM86/ here throughout to be consistent.

322 ↗(On Diff #187768)
352 ↗(On Diff #187768)
353 ↗(On Diff #187768)
357 ↗(On Diff #187768)
360 ↗(On Diff #187768)
369 ↗(On Diff #187768)

Alternatively, using a type like uint32_t might be a more concise way, e.g.:

The
.Fa
args argument must point to a
.Vt uint32_t
variable that contains the new fsbase value.
28 ↗(On Diff #187749)

How can i386 imply amd64? That makes no sense. Some i386 things (mostly kernel-y things vs userspace things) aren't implemented on amd64 and some amd64 things definitely aren't implemented on i386. And this manpage is clearly describing things that are amd64-specific so presumably it needs to list both?

kib marked 59 inline comments as done.Mon, Sep 28, 6:35 PM

Thank you very much for reading it so far.
Obviously I cannot get (the) articles right, I gave up on this many tens of years ago.

WRT to the i386_vm86.2 man page, I must admit that i missed it. But after reading it, I see that it less precise, in particular it documents not implemented fields. Also it misses crucial information needed to correctly enter VM86. I hesitate to remove text written by Bruce, might be I will leave it as is for now.

lib/libsys/sysarch.x86.2
247 ↗(On Diff #187768)

It is not firmware, really. I used 'CPU instructions'.

295 ↗(On Diff #187768)

Well, 486dx4 appeared after Pentium were released AFAIR. But I agree that this detail is not needed.

kib marked 2 inline comments as done.

Apply jhb editings

Move the man page to libsys/x86

Ping? If you do not intent to read it more, I do not see why the doc would sit in review.

ziaee added inline comments.
lib/libsys/x86/sysarch.x86.2
1

Nit: The predominant style is a blank comment line here for consistency with C style comments.

This revision is now accepted and ready to land.Mon, Oct 12, 8:00 PM