From: Jamie Lokier <jamie@shareable.org>
To: Avi Kivity <avi@redhat.com>
Cc: Mark McLoughlin <markmc@redhat.com>,
Anthony Liguori <aliguori@us.ibm.com>,
Arnd Bergmann <arndbergmann@googlemail.com>,
Juan Quintela <quintela@redhat.com>,
Dustin Kirkland <kirkland@canonical.com>,
qemu-devel@nongnu.org, Michael Tsirkin <mst@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 0/4] net-bridge: rootless bridge support for qemu
Date: Thu, 5 Nov 2009 16:29:34 +0000 [thread overview]
Message-ID: <20091105162934.GB21630@shareable.org> (raw)
In-Reply-To: <4AF2E9CA.4060008@redhat.com>
Avi Kivity wrote:
> On 11/05/2009 04:50 PM, Anthony Liguori wrote:
> Bridged network configuration is painful now, but only for a handful of
> users (us developers).
I have to disagree. Although I'm a developer too, if I put my system
administrator hat on for a moment...
I found the bridged network configuration annoying. I gave up trying
to be dynamic and just preallocated user-owned static tap devices in
the system interface list for every VM that my users want to run
(which means they have to ask me when they want more VMs on the
bridges). I still had to configure the servers' bridges and
interfaces for all that manually, and bind all the tap devices to
bridges even when not in use. The iptables wasn't pretty either.
I think this qemu mode to call out to an external program for the
interface is an simple, useful change which will make dynamic
interfaces easier.
You _can_ do the same thing with a management program or script. At
first (like you) I was wondering why the helper is needed since you
can do it so easily with a wrapper around QEMU, and then I realised:
Because it's very hard to write a wrapper script which correctly
matches QEMU options and inserts an "fd=..." option in the right
place, for all different QEMU/KVM versions.
If you're using a management program with it's own configuration with
generates all the QEMU command options anyway, there's no problem.
But if you want useful networking, while specifying ordinary QEMU
options e.g. from a command line or simple script... then it's
difficult and fragile to make a script wrapper for that without
Anthony's change.
Btw, I'll probably replace the helper program with something which
does the permission checks and interface setup in a different way, but
it's still a good pattern to call one.
> For the vast majority it is handled behind their
> back by management, which has to deal with a bunch of privileged stuff
> anyway (assigned LVM volumes, assigned pci and usb devices, setting up
> the bridge, large pages, guest priorities). Why are we adding code to
> benefit so few people, many of whom don't really use qemu as users?
Perhaps qemu should call out to helper programs to request access to
block devices, pci and usb devices, priorities and access to large
pages too?
It would at least be consistent if every "request for a system
resource which might need permission" could be replaced by
"user-configurable command for request for a system resouce".
Anyway, in my experience using QEMU and KVM, networking is the only
complicated bit of system configuration. Everything else is just
usespace - I've never felt the need used LVM volumes, pass-through PCI
and USB devices, or guest priorities. It's all VNC servers, emulated
USB mice, and disk images files, none of which needs system configuration.
Networking is unusual in being the only system service that virtually
every guest needs, so I guess my experience applies to most users who
are using QEMU/KVM directly.
-- Jamie
next prev parent reply other threads:[~2009-11-05 16:29 UTC|newest]
Thread overview: 125+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-04 0:28 [Qemu-devel] [PATCH 0/4] net-bridge: rootless bridge support for qemu Anthony Liguori
2009-11-04 0:28 ` [Qemu-devel] [PATCH 1/4] Add basic version of bridge helper Anthony Liguori
2009-11-04 0:28 ` [Qemu-devel] [PATCH 2/4] Add access control support to qemu-bridge-helper Anthony Liguori
2009-11-04 13:38 ` [Qemu-devel] [PATCH 2/4] Add access control support toqemu-bridge-helper Krumme, Chris
2009-11-04 14:23 ` Anthony Liguori
2009-11-04 14:37 ` Krumme, Chris
2009-11-05 15:06 ` [Qemu-devel] [PATCH 2/4] Add access control support to qemu-bridge-helper Daniel P. Berrange
2009-11-04 0:28 ` [Qemu-devel] [PATCH 3/4] Add cap reduction support to enable use as SUID binary Anthony Liguori
2009-11-04 0:28 ` [Qemu-devel] [PATCH 4/4] Add support for -net bridge Anthony Liguori
2009-11-04 13:49 ` Krumme, Chris
2009-11-04 14:23 ` Anthony Liguori
2009-11-05 14:41 ` Avi Kivity
2009-11-05 14:45 ` Anthony Liguori
2009-11-05 14:49 ` Avi Kivity
2009-11-06 2:29 ` Jamie Lokier
2009-11-07 17:29 ` David Woodhouse
2009-11-07 22:11 ` Anthony Liguori
2009-11-08 8:27 ` Avi Kivity
2009-11-08 8:43 ` Arnd Bergmann
2009-11-08 8:55 ` Avi Kivity
2009-11-09 14:20 ` Anthony Liguori
2009-11-09 15:39 ` Jamie Lokier
2009-11-09 15:43 ` Anthony Liguori
2009-11-09 19:19 ` Jamie Lokier
2009-11-10 12:23 ` Avi Kivity
2009-11-04 12:02 ` [Qemu-devel] [PATCH 0/4] net-bridge: rootless bridge support for qemu Alexander Graf
2009-11-04 14:42 ` Anthony Liguori
2009-11-04 15:02 ` Alexander Graf
2009-11-04 16:02 ` Anthony Liguori
2009-11-04 17:04 ` [Qemu-devel] " Michael S. Tsirkin
2009-11-04 19:48 ` Anthony Liguori
2009-11-04 20:04 ` Michael S. Tsirkin
2009-11-04 20:44 ` Anthony Liguori
2009-11-05 8:17 ` Michael S. Tsirkin
2009-11-05 13:05 ` Anthony Liguori
2009-11-04 22:40 ` Dustin Kirkland
2009-11-05 0:52 ` Anthony Liguori
2009-11-05 2:12 ` Dustin Kirkland
2009-11-05 4:12 ` [Qemu-devel] " Jamie Lokier
2009-11-05 8:21 ` Michael S. Tsirkin
2009-11-06 2:03 ` Jamie Lokier
2009-11-06 11:58 ` Arnd Bergmann
2009-11-06 20:26 ` Jamie Lokier
2009-11-08 11:55 ` Michael S. Tsirkin
2009-11-05 13:11 ` Anthony Liguori
2009-11-05 14:33 ` Avi Kivity
2009-11-05 14:36 ` Avi Kivity
2009-11-05 14:46 ` Daniel P. Berrange
2009-11-05 14:53 ` Anthony Liguori
2009-11-05 16:41 ` Jamie Lokier
2009-11-05 16:51 ` Daniel P. Berrange
2009-11-06 1:53 ` Jamie Lokier
2009-11-05 14:50 ` Anthony Liguori
2009-11-05 15:05 ` Avi Kivity
2009-11-05 15:50 ` Anthony Liguori
2009-11-05 16:02 ` Avi Kivity
2009-11-05 16:19 ` Anthony Liguori
2009-11-05 16:28 ` Avi Kivity
2009-11-05 16:37 ` Jamie Lokier
2009-11-05 16:45 ` Anthony Liguori
2009-11-05 17:20 ` Arnd Bergmann
2009-11-05 17:42 ` Anthony Liguori
2009-11-05 18:02 ` Arnd Bergmann
2009-11-05 19:54 ` Anthony Liguori
2009-11-05 18:14 ` Avi Kivity
2009-11-05 18:11 ` Avi Kivity
2009-11-05 19:58 ` Anthony Liguori
2009-11-06 1:48 ` Jamie Lokier
2009-11-06 7:22 ` Avi Kivity
2009-11-06 10:54 ` Jamie Lokier
2009-11-06 12:42 ` Anthony Liguori
2009-11-07 3:44 ` Jamie Lokier
2009-11-06 14:19 ` Anthony Liguori
2009-11-07 9:14 ` Avi Kivity
2009-11-07 9:43 ` Avi Kivity
2009-11-07 14:07 ` Anthony Liguori
2009-11-07 21:50 ` Arnd Bergmann
2009-11-07 22:12 ` Anthony Liguori
2009-11-08 8:11 ` Avi Kivity
2009-11-07 14:04 ` Anthony Liguori
2009-11-06 0:29 ` Anthony Liguori
2009-11-06 7:26 ` Avi Kivity
2009-11-06 16:09 ` Anthony Liguori
2009-11-07 9:27 ` Avi Kivity
2009-11-07 10:44 ` Jamie Lokier
2009-11-07 11:23 ` Avi Kivity
2009-11-09 19:35 ` Jamie Lokier
2009-11-10 12:25 ` Avi Kivity
2009-11-10 13:33 ` Jamie Lokier
2009-11-07 13:59 ` Anthony Liguori
2009-11-05 16:29 ` Jamie Lokier [this message]
2009-11-05 14:57 ` Anthony Liguori
2009-11-05 15:11 ` Avi Kivity
2009-11-05 15:33 ` Avi Kivity
2009-11-05 15:58 ` Anthony Liguori
2009-11-05 16:07 ` Avi Kivity
2009-11-06 2:19 ` Jamie Lokier
2009-11-05 16:06 ` Anthony Liguori
2009-11-05 16:15 ` Avi Kivity
2009-11-05 16:25 ` Anthony Liguori
2009-11-05 16:33 ` Avi Kivity
2009-11-05 16:50 ` Anthony Liguori
2009-11-05 17:16 ` Scott Tsai
2009-11-05 18:19 ` Avi Kivity
2009-11-06 2:16 ` Jamie Lokier
2009-11-05 18:19 ` Avi Kivity
2009-11-06 2:17 ` Jamie Lokier
2009-11-05 15:11 ` Daniel P. Berrange
2009-11-05 15:14 ` Avi Kivity
2009-11-05 15:20 ` Daniel P. Berrange
2009-11-05 15:59 ` Anthony Liguori
2009-11-05 16:20 ` Avi Kivity
2009-11-05 16:28 ` Anthony Liguori
2009-11-05 16:35 ` Avi Kivity
2009-11-05 16:53 ` Daniel P. Berrange
2009-11-05 17:03 ` Anthony Liguori
2009-11-05 17:16 ` Daniel P. Berrange
2009-11-06 2:08 ` Jamie Lokier
2009-11-05 17:26 ` Arnd Bergmann
2009-11-05 19:54 ` Gerhard Stenzel
2009-11-06 2:11 ` Jamie Lokier
2009-11-05 15:00 ` [Qemu-devel] " Mark McLoughlin
2009-11-05 15:14 ` Daniel P. Berrange
2009-11-05 15:28 ` Dustin Kirkland
2009-11-05 15:06 ` 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=20091105162934.GB21630@shareable.org \
--to=jamie@shareable.org \
--cc=aliguori@us.ibm.com \
--cc=arndbergmann@googlemail.com \
--cc=avi@redhat.com \
--cc=kirkland@canonical.com \
--cc=markmc@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.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 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.