All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Eduardo Habkost <ehabkost@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/3] -readconfig: accept fd=<fd> option (v2)
Date: Mon, 19 Mar 2012 11:21:07 -0500	[thread overview]
Message-ID: <4F675CF3.4000807@codemonkey.ws> (raw)
In-Reply-To: <20120319160640.GG9375@otherpad.lan.raisama.net>

On 03/19/2012 11:06 AM, Eduardo Habkost wrote:
> On Mon, Mar 19, 2012 at 10:39:10AM -0500, Anthony Liguori wrote:
>> On 03/19/2012 10:37 AM, Eduardo Habkost wrote:
>>> On Mon, Mar 19, 2012 at 10:10:27AM -0500, Anthony Liguori wrote:
>>>> On 03/19/2012 09:54 AM, Eduardo Habkost wrote:
>>>>> This is a resubmit of a previous series I sent as a RFC, with some changes to
>>>>> prepare for an upcoming patch that will make additional changes to the default
>>>>> config-file loading code.
>>>>>
>>>>> This series needs be applied on top of the "./configure --confdir" series I
>>>>> sent today.
>>>>
>>>> Why not just use /dev/fd/N  ?
>>>
>>> Personally, I don't like filenames with special meanings (as not every
>>> OS has /dev/fd we would have to treat them specially), or filenames that
>>> become non-extensible mini-languages by themselves. Many other
>>> command-line options use the key=value syntax, and some already have an
>>> "fd" option, so this just follows the convention.
>>
>> But you're also breaking compat, which is not something to be done lightly.
>
> True. In that case, I propose adding a "-config" option that is more
> extensible than the current one, instead of defining a new mini-language
> for -readconfig that looks like a file path but has hidden complexities
> behind it.

What?  /dev/fd is a pretty standard unix feature.  It'll work today with 
existing versions of QEMU.

>
>
>>> Also, this is more extensible to allow more options to be added to
>>> -readconfig if needed (for example: debugging options, or the
>>> help=defconfig option I added on the RFC series I sent after this one).
>>
>> I'd personally prefer to keep readconfig simple.  See the series I
>> sent out as an RFC.
>
> If you are supporting FDs, the complexity is already there. Using the
> key=value format just makes the complexity explicit (and familiar, for
> humans and code that already uses key=value for other options) instead
> of hiding it behind magic filenames.
>
> I still have to take a look at your series.

I think there are cases where /dev/fd doesn't make any sense as an interface 
(like tun/tap) because tun/tap doesn't have normal file semantics.

Likewise, block devices don't act like normal files so you need to treat fd 
differently than you treat a file path.

But for something like the BIOS file, config files, kernels, etc, they are all 
just simple files and instead of making everything take a fd:, we can (and 
should) just use the existing unix mechanism for this.

Regards,

Anthony Liguori

  reply	other threads:[~2012-03-19 16:21 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-19 14:54 [Qemu-devel] [PATCH 0/3] -readconfig: accept fd=<fd> option (v2) Eduardo Habkost
2012-03-19 14:54 ` [Qemu-devel] [PATCH 1/3] qemu-config.h: include qemu-option.h Eduardo Habkost
2012-03-19 14:54 ` [Qemu-devel] [PATCH 2/3] -readconfig: use QemuOpts option format (v2) Eduardo Habkost
2012-03-19 14:54 ` [Qemu-devel] [PATCH 3/3] -readconfig: accept fd=<fd> option (v2) Eduardo Habkost
2012-03-19 15:10 ` [Qemu-devel] [PATCH 0/3] " Anthony Liguori
2012-03-19 15:37   ` Eduardo Habkost
2012-03-19 15:39     ` Anthony Liguori
2012-03-19 16:06       ` Eduardo Habkost
2012-03-19 16:21         ` Anthony Liguori [this message]
2012-03-19 16:39           ` Eduardo Habkost
2012-03-19 16:45             ` Anthony Liguori
2012-03-19 16:51               ` Eduardo Habkost
2012-03-19 16:55                 ` 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=4F675CF3.4000807@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=ehabkost@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.