Bug 271134 - bhyve(8), bhyvectl(8), bhyve(4), bhyve_config(5): manual pages cleanup
Summary: bhyve(8), bhyvectl(8), bhyve(4), bhyve_config(5): manual pages cleanup
Status: Open
Alias: None
Product: Documentation
Classification: Unclassified
Component: Manual Pages (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-virtualization (Nobody)
URL: https://github.com/freebsd/freebsd-sr...
Keywords: bhyve
Depends on: 266336
Blocks:
  Show dependency treegraph
 
Reported: 2023-04-29 16:26 UTC by Graham Perrin
Modified: 2024-04-10 14:30 UTC (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Graham Perrin freebsd_committer freebsd_triage 2023-04-29 16:26:45 UTC
<https://man.freebsd.org/cgi/man.cgi?query=bhyve&sektion=8&manpath=freebsd-release#EXAMPLES> the first paragraph under EXAMPLES is not an example: 

> If not using a boot ROM, the guest operating system must have been loaded 
> with bhyveload(8) or a similar boot loader before bhyve(4) can be run. 
> Otherwise, the boot loader is not needed.

<https://man.freebsd.org/cgi/man.cgi?query=bhyve&sektion=8&manpath=freebsd-release#DESCRIPTION> within the DESCRIPTION: 

> If not using a boot ROM, the guest operating system must be loaded with 
> bhyveload(8) or a similar boot loader before running bhyve, otherwise, it 
> is enough to run bhyve with a boot ROM of choice.

Let's not have both. Which of the two paragraphs will be better under DESCRIPTION?
Comment 1 Graham Perrin freebsd_committer freebsd_triage 2023-04-29 16:44:34 UTC
<https://man.freebsd.org/cgi/man.cgi?query=bhyve&sektion=8&manpath=freebsd-release#SEE_ALSO>

Everything after the phrase 'Intel, ' is wrongly italicised. 

<https://github.com/freebsd/freebsd-src/blob/main/usr.sbin/bhyve/bhyve.8>

----

<https://man.freebsd.org/cgi/man.cgi?query=bhyvectl&sektion=8&manpath=freebsd-release>

Angle brackets are misrepresented as underscore characters.

<https://github.com/freebsd/freebsd-src/blob/main/usr.sbin/bhyvectl/bhyvectl.8>

----

<https://man.freebsd.org/cgi/man.cgi?query=bhyve_config&sektion=5&apropos=0&manpath=freebsd-release#DEVICE_SETTINGS> 

A heading appears to have an unwanted horizontal tab: 

    Block Device	Settings

Beneath the heading, a closing square bracket is misplaced in the Description column: 

> sectorsize	   logical[/physical		    ] Specify the logical and

<https://github.com/freebsd/freebsd-src/blob/main/usr.sbin/bhyve/bhyve_config.5>
Comment 3 Graham Perrin freebsd_committer freebsd_triage 2023-04-29 17:10:27 UTC
> bhyve is a virtual machine monitor that is hosted by FreeBSD. It is used 
> to host unmodified guest operating systems on top of FreeBSD.

What's meant by 'unmodified'?

What type of modification to a guest OS would make the OS unusable with bhyve?
Comment 4 Yuri Pankov freebsd_committer freebsd_triage 2023-04-29 17:20:04 UTC
Re: angle brackets, those should just be removed from bhyvectl(8) man page.  Remember that mdoc is semantic markup language, and if you want arguments (.Ar) to be represented as "<argument>" if formatted output (e.g. if you have console that does not support underline), it's the utility that formats man page (e.g. mandoc or whatever is used for web page) that needs to be modified.
Comment 5 Peter Grehan freebsd_committer freebsd_triage 2023-04-29 21:24:10 UTC
(In reply to Graham Perrin from comment #3)
 
At the time bhyve was written, it was commonplace to have to rebuild an o/s kernel with paravirtualized drivers and/or other components to allow it to run under a hypervisor - "modified".

This isn't really the case anymore so that sentence could be removed.
Comment 6 Matt Simerson 2023-05-30 16:28:59 UTC
While someone is in there fixing https://man.freebsd.org/cgi/man.cgi?query=bhyve&sektion=8&manpath=freebsd-release, also see the description of Options -k, half of the description is dislocated to the -K option.
Comment 7 Chris Moerz 2023-12-08 10:46:29 UTC
I am looking at integrating this into a set of "features" for a MVP that delivers improvements to bhyve out of the Enterprise Working Group (https://wiki.freebsd.org/EnterpriseWorkingGroup). While the setting is originating out of "enterprise stakeholder" needs, I do believe the related Venn diagram has a considerable overlap with regular users when it comes to documentation - so everyone would stand to benefit from some work on this.

If anyone wants to add missing points, have a more in-depth conversation or has already started working on a patch, please do get in touch with me.

We had a conversation about this in this week's regular bhyve call and there was also feedback in direction to the handbook.

We're still in the stage of "what" to do; the "who" and "how" would follow later once we better understand whether there's volunteers to get things done or if we need funding help from the Foundation.
Comment 8 Chris Moerz 2024-02-20 18:54:54 UTC
Related to this topic, there's now a review for improving the bhyve man page further:
https://reviews.freebsd.org/D43940
Comment 9 Jason Mann 2024-04-10 14:30:08 UTC
There is a malformed section in the man page, just before the CONFIGURATION VARIABLES section.  The lines from "Set the universally unique identifier" downwards to the end of the section are missing their option arguments

> HD Audio	device backends:
> 
> o   [play=playback][,rec=recording]
> 
> Configuration options are defined as follows:
> 
> play	   Playback device, typically /dev/dsp0.
> 
> rec	   Recording device, typically /dev/dsp0.
> Set the universally unique identifier (UUID) in the guest's System Man-
> agement BIOS System Information structure.  By default a UUID is gener-
> ated from the host's hostname and vmname.
> RTC keeps UTC time.
> Force virtio PCI	device emulations to use  MSI  interrupts  instead  of
> MSI-X interrupts.
> Ignore accesses to unimplemented	Model Specific Registers (MSRs).  This
> is intended for debug purposes.
> The guest's local APIC is configured in x2APIC mode.
> Disable MPtable generation.
> Alphanumeric  name  of the guest.  This should be the same as that cre-
> ated by bhyveload(8).
>
> CONFIGURATION VARIABLES 

Should it not be as follows:

> -U        Set the universally unique identifier...
> -u        RTC keeps UTC time.
> -W        Force virtio PCI...
> -w        Ignore access to unimplemented Model Specific Registers...
> -a        The guest's local APIC is configured in x2APIC mode.
> -Y        Disable MPtable generation.
> vmname    Alphanumeric name of the guest. ...