All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v3 4/5] QemuOpts: framework for storing and parsing options.
Date: Tue, 21 Jul 2009 15:59:13 +0200	[thread overview]
Message-ID: <4A65C9B1.8090200@redhat.com> (raw)
In-Reply-To: <4A602234.50208@redhat.com>

On 07/17/09 09:03, Kevin Wolf wrote:
> Gerd Hoffmann schrieb:
>> This stores device parameters in a better way than unparsed strings.
>>
>> New types:
>>    QemuOpt       -  one key-value pair.
>>    QemuOpts      -  group of key-value pairs, belonging to one
>>                     device, i.e. one drive.
>>    QemuOptsList  -  list of some kind of devices, i.e. all drives.
>
> What about having the options typed like I did in qemu-option.[ch]?
>
> In general qemu-option seems to do more parsing/checking than QemuOpts
> does, on the other hand it's not yet generic enough to suit everything.

Yup, qemu-options has all in one struct, which fails on multiple 
instaces (i.e. two drives).

> Maybe a combination of both would be the right thing?

I think the question is here how and when we want to do the parsing.

We could do it early, when parsing/storing the values.  QemuOptsList 
could get a QEMUOptionParameter-like struct instead of the simple 
valid[] array.  QemuOpts->value would become a union.  qemu_opt_set 
handles parsing and stores in the union.  qemu_opt_get() would move to 
qemu_opt_get_$type() and it would return the value from the matching 
union member.

We could do it late, when using the values.  Parsing would happen 
directly in qemu_opt_get_$type().

comments?

cheers,
   Gerd

  parent reply	other threads:[~2009-07-21 13:59 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-16 14:56 [Qemu-devel] [PATCH v3 0/5] cleanup drive handling Gerd Hoffmann
2009-07-16 14:57 ` [Qemu-devel] [PATCH v3 1/5] kill drives_table Gerd Hoffmann
2009-07-16 14:57 ` [Qemu-devel] [PATCH v3 2/5] add support for drive ids Gerd Hoffmann
2009-07-16 14:57 ` [Qemu-devel] [PATCH v3 3/5] kill drives_opt Gerd Hoffmann
2009-07-16 14:57 ` [Qemu-devel] [PATCH v3 4/5] QemuOpts: framework for storing and parsing options Gerd Hoffmann
2009-07-16 16:35   ` [Qemu-devel] " Jan Kiszka
2009-07-16 18:50     ` Gerd Hoffmann
2009-07-17  7:03   ` [Qemu-devel] " Kevin Wolf
2009-07-21  7:25     ` Gerd Hoffmann
2009-07-21  7:42       ` Kevin Wolf
2009-07-21 13:59     ` Gerd Hoffmann [this message]
2009-07-21 15:58       ` Kevin Wolf
2009-07-22  6:58         ` Gerd Hoffmann
2009-07-22  7:31           ` Kevin Wolf
2009-07-22  7:55             ` Gerd Hoffmann
2009-07-16 14:57 ` [Qemu-devel] [PATCH v3 5/5] switch -drive to QemuOpts Gerd Hoffmann
2009-07-16 16:07   ` Anthony Liguori
2009-07-16 18:55     ` Gerd Hoffmann
2009-07-16 19:03       ` Anthony Liguori
2009-07-16 19:32         ` Gerd Hoffmann
2009-07-16 20:08           ` Anthony Liguori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A65C9B1.8090200@redhat.com \
    --to=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.