[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/4] virtio-serial: Add description fields for q
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH 2/4] virtio-serial: Add description fields for qdev properties |
Date: |
Mon, 10 Jan 2011 15:47:25 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
Amit Shah <address@hidden> writes:
> Document the parameters for the virtserialport and virtioconsole
> devices.
>
> Example:
>
> $ ./x86_64-softmmu/qemu-system-x86_64 -device virtserialport,?
> virtserialport.nr=uint32, The 'number' for the port for \
> predictable port numbers. Use this to spawn ports if you \
> plan to migrate the guest.
>
> virtserialport.chardev=chr, The chardev to associate this port with.
>
> virtserialport.name=string, Name for the port that's exposed to \
> the guest for port discovery.
>
> Signed-off-by: Amit Shah <address@hidden>
> ---
> hw/virtio-console.c | 17 ++++++++++-------
> hw/virtio-serial.h | 13 +++++++++++++
> 2 files changed, 23 insertions(+), 7 deletions(-)
>
> diff --git a/hw/virtio-console.c b/hw/virtio-console.c
> index ccd277a..8a99a99 100644
> --- a/hw/virtio-console.c
> +++ b/hw/virtio-console.c
> @@ -95,11 +95,13 @@ static VirtIOSerialPortInfo virtconsole_info = {
> .init = virtconsole_initfn,
> .exit = virtconsole_exitfn,
> .qdev.props = (Property[]) {
> - DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console, 1, ""),
> + DEFINE_PROP_UINT8("is_console", VirtConsole, port.is_console, 1,
> + PROP_VIRTSERIAL_IS_CONSOLE_DESC),
> DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
> - ""),
> - DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
> - DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
> + PROP_VIRTSERIAL_NR_DESC),
> + DEFINE_PROP_CHR("chardev", VirtConsole, chr,
> PROP_VIRTSERIAL_CHR_DESC),
> + DEFINE_PROP_STRING("name", VirtConsole, port.name,
> + PROP_VIRTSERIAL_NAME_DESC),
> DEFINE_PROP_END_OF_LIST(),
> },
> };
> @@ -133,9 +135,10 @@ static VirtIOSerialPortInfo virtserialport_info = {
> .exit = virtconsole_exitfn,
> .qdev.props = (Property[]) {
> DEFINE_PROP_UINT32("nr", VirtConsole, port.id, VIRTIO_CONSOLE_BAD_ID,
> - ""),
> - DEFINE_PROP_CHR("chardev", VirtConsole, chr, ""),
> - DEFINE_PROP_STRING("name", VirtConsole, port.name, ""),
> + PROP_VIRTSERIAL_NR_DESC),
> + DEFINE_PROP_CHR("chardev", VirtConsole, chr,
> PROP_VIRTSERIAL_CHR_DESC),
> + DEFINE_PROP_STRING("name", VirtConsole, port.name,
> + PROP_VIRTSERIAL_NAME_DESC),
> DEFINE_PROP_END_OF_LIST(),
> },
> };
> diff --git a/hw/virtio-serial.h b/hw/virtio-serial.h
> index ff08c40..187d5e4 100644
> --- a/hw/virtio-serial.h
> +++ b/hw/virtio-serial.h
> @@ -57,6 +57,19 @@ struct virtio_console_control {
>
> /* == In-qemu interface == */
>
> +#define PROP_VIRTSERIAL_IS_CONSOLE_DESC \
> + "An hvc console will be spawned in the guest if this is set."
> +
> +#define PROP_VIRTSERIAL_NR_DESC \
> + "The 'number' for the port for predictable port numbers. Use this to " \
> + "spawn ports if you plan to migrate the guest."
> +
> +#define PROP_VIRTSERIAL_CHR_DESC \
> + "The chardev to associate this port with."
> +
> +#define PROP_VIRTSERIAL_NAME_DESC \
> + "Name for the port that's exposed to the guest for port discovery."
> +
> typedef struct VirtIOSerial VirtIOSerial;
> typedef struct VirtIOSerialBus VirtIOSerialBus;
> typedef struct VirtIOSerialPort VirtIOSerialPort;
Let me elaborate on my comment asking for prettier output. Here's how I
expect -virtconsole,\? look like with your code:
virtconsole.is_console=uint8, An hvc console will be spawned in the guest if
this is set.
virtconsole.nr=uint32, The 'number' for the port for predictable port numbers.
Use this to spawn ports if you plan to migrate the guest.
virtconsole.chardev=chr, The chardev to associate this port with.
virtconsole.name=string, Name for the port that's exposed to the guest for port
discovery.
Long lines, hard to read.
By the way, properties without a description are printed with a trailing
", ". I find that irritating.
We can do better by adopting suitable conventions for the help text, say
"first line is a brief description (50 characters max), like a headline
(no sentence-ending period), following lines (if any) are 70 characters
max."
Then we print it like this:
virtconsole.nr=uint32 First line, 50 characters max., just like this one
More lines (if any)
When the X=Y part is long, we can break like this:
virtconsole.is_console=uint8
First line, 50 characters max., just like this one
More lines (if any)
or maybe
virtconsole.is_console=uint8
First line, 50 characters max., just like this one
More lines (if any)