From: Arnd Bergmann <arnd@arndb.de>
To: Timur Tabi <timur@freescale.com>
Cc: kumar.gala@freescale.com, benh@kernel.crashing.org,
greg@kroah.com, akpm@kernel.org, linuxppc-dev@lists.ozlabs.org,
linux-kernel@vger.kernel.org, linux-console@vger.kernel.org
Subject: Re: [PATCH 7/7] [v2] drivers/misc: introduce Freescale hypervisor management driver
Date: Fri, 3 Jun 2011 17:24:44 +0200 [thread overview]
Message-ID: <201106031724.44957.arnd@arndb.de> (raw)
In-Reply-To: <4DE8008E.9030008@freescale.com>
On Thursday 02 June 2011, Timur Tabi wrote:
> Arnd Bergmann wrote:
> > I think drivers/misc is not the right place for this, but I'm not completely
> > sure what is. drivers/firmware would be better at least, but virt/fsl might
> > also be ok.
>
> I don't think it's correct to think of a hypervisor as firmware, so I don't
> think drivers/firmware is better.
>
> I'm not sure that creating virt/fsl and putting the driver in there is a good
> idea, because it will be the only driver in that directory. Unlike KVM, this
> driver is just a collection of front-ends to our hypervisor API. The actual
> hypervisor is completely separate. That's why I put it in drivers/misc, because
> it's just a single driver with a miscellaneous collection of interfaces.
Ok, fair enough. If nobody has a strong preference any other way, just make it
drivers/firmware then.
> We also don't want to have any Kconfig options that "turn on" hypervisor
> support. I've intentionally made support for the hypervisor part of the normal
> platform code, and the device tree is used to determine whether that code is
> active or not.
>
> So virt/fsl seems like overkill to me.
Ok. Obviously, you still have the option to move the code later if you require
more interfaces to talk to your hypervisor, and then you can still add virt/fsl,
so no problem.
> > I'm not convinced that an ioctl interface is the right way to work with
> > device tree properties. A more natural way would be to export it as
> > a file system, or maybe as a flattened device tree blob (the latter option
> > would require changing the hypervisor interface, which might not be
> > possible).
>
> As Scott said, this is just a front-end to the hypervisor API, and we already
> have applications that depend on the ioctl interface. Considering that this
> driver is specific to the Freescale hypervisor, so I don't see any harm in using
> ioctls.
Good interface design is always important, one of the reasons is serving as
an example for other people doing similar drivers. There are a lot of
companies writing hypervisors and they all need interfaces like this.
> > For an ioctl, please follow the normal pattern of defining a separate
> > structure for each case, no union.
>
> Ok. This will break our existing applications, but it's a minor fix.
Ok. Better to break it now than accidentally break it later because of
some side-effect of a strange interface, e.g. when the union would change in
size.
Arnd
next prev parent reply other threads:[~2011-06-03 15:24 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-01 18:35 [PATCH 7/7] [v2] drivers/misc: introduce Freescale hypervisor management driver Timur Tabi
2011-06-01 19:46 ` Alan Cox
2011-06-01 20:24 ` Timur Tabi
2011-06-01 20:34 ` Alan Cox
2011-06-01 20:54 ` Scott Wood
2011-06-01 21:45 ` Alan Cox
2011-06-01 21:40 ` Arnd Bergmann
2011-06-01 22:24 ` Scott Wood
2011-06-03 15:28 ` Arnd Bergmann
2011-06-03 16:22 ` Scott Wood
2011-06-06 15:53 ` Arnd Bergmann
2011-06-06 18:15 ` Scott Wood
2011-06-06 19:48 ` Arnd Bergmann
2011-06-02 21:28 ` Timur Tabi
2011-06-03 15:24 ` Arnd Bergmann [this message]
2011-06-03 15:28 ` Timur Tabi
2011-06-06 15:42 ` Arnd Bergmann
2011-06-06 15:48 ` Timur Tabi
2011-06-06 16:03 ` Arnd Bergmann
2011-06-06 16:09 ` Timur Tabi
2011-06-06 16:24 ` Arnd Bergmann
2011-06-06 16:27 ` Timur Tabi
2011-06-06 21:01 ` Chris Metcalf
2011-06-06 21:23 ` Konrad Rzeszutek Wilk
2011-06-06 23:04 ` Chris Metcalf
2011-06-07 7:08 ` Arnd Bergmann
2011-06-07 16:49 ` Chris Metcalf
2011-06-07 19:16 ` Arnd Bergmann
2011-06-07 19:20 ` Timur Tabi
2011-06-07 19:34 ` Arnd Bergmann
2011-06-03 14:44 ` Timur Tabi
2011-06-03 15:17 ` Arnd Bergmann
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=201106031724.44957.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=akpm@kernel.org \
--cc=benh@kernel.crashing.org \
--cc=greg@kroah.com \
--cc=kumar.gala@freescale.com \
--cc=linux-console@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=timur@freescale.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox