From: Gerd Hoffmann <kraxel@redhat.com>
To: Jes Sorensen <Jes.Sorensen@redhat.com>
Cc: "libvir-list@redhat.com" <libvir-list@redhat.com>,
qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Re: [libvirt] Supporting hypervisor specific APIs in libvirt
Date: Tue, 23 Mar 2010 11:25:41 +0100 [thread overview]
Message-ID: <4BA89725.8000601@redhat.com> (raw)
In-Reply-To: <4BA881D5.8000506@redhat.com>
On 03/23/10 09:54, Jes Sorensen wrote:
> On 03/22/10 22:53, Anthony Liguori wrote:
>> On 03/22/2010 04:33 PM, Gerd Hoffmann wrote:
>>> libvirt is very unfriendly to qemu hackers. There is no easy way to
>>> add command line switches. There is no easy way to get access to the
>>> monitor. I can get it done by pointing <emulator> to a wrapper script
>>> and mangle the qemu command line there. But this sucks big time. And
>>> it doesn't integrate with libvirt at all.
>>
>> It's not just developers. As we're doing deployments of qemu/kvm, we
>> keep running into the same problem. We realize that we need to use a
>> feature of qemu/kvm that isn't modelled by libvirt today. I've gone as
>> far as to temporarily pausing libvirtd, finding the pty fd from
>> /proc/<pid>, and hijacking the monitor session temporarily.
>
> One problem I have found, and I am not sure how to fix this in this
> context. Sometimes when hacking on qemu, I want to try out a new
> qemu binary on an existing image, without replacing the system wide
> one and may want to pass new command line flags for testing those, plus
> have access to the monitor.
Works with the wrapper script trick mentioned above.
virsh edit $domain
grep for <emulator>
make it point to a wrapper script.
My setup:
[root@xenb ~]# virsh dumpxml fedora | grep emulator
<emulator>/root/bin/qemu-wrapper</emulator>
[root@xenb ~]# cat /root/bin/qemu-wrapper
#!/bin/sh
# distro qemu-kvm
REAL_QEMU="/usr/bin/qemu-kvm"
MORE_ARGS="-boot menu=on -cpu host -enable-nesting"
# fresh build
#REAL_QEMU="/home/kraxel/git/kvm/x86_64-softmmu/qemu-system-x86_64"
#MORE_ARGS="-L /home/kraxel/git/kvm/pc-bios -boot menu=on"
# go!
case "$1" in
"" | -h | -help | --help)
# libvirt capability check
exec $REAL_QEMU $1
;;
*)
# run qemu with additional args
exec $REAL_QEMU "$@" $MORE_ARGS
;;
esac
# should never ever arrive here
echo "$0: exec $REAL_QEMU failed" >&2
exit 1
HTH,
Gerd
next prev parent reply other threads:[~2010-03-23 10:25 UTC|newest]
Thread overview: 109+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-22 19:25 [Qemu-devel] Supporting hypervisor specific APIs in libvirt Anthony Liguori
2010-03-22 20:10 ` [Qemu-devel] Re: [libvirt] " Daniel P. Berrange
2010-03-22 21:33 ` Gerd Hoffmann
2010-03-22 21:53 ` Anthony Liguori
2010-03-23 8:54 ` Jes Sorensen
2010-03-23 10:25 ` Gerd Hoffmann [this message]
2010-03-23 10:31 ` Jes Sorensen
2010-03-23 10:58 ` Gerd Hoffmann
2010-03-22 23:36 ` Cole Robinson
2010-03-22 21:49 ` Anthony Liguori
2010-03-23 7:35 ` Alexander Graf
2010-03-23 23:25 ` Jamie Lokier
2010-03-24 0:55 ` Anthony Liguori
2010-03-24 10:05 ` Markus Armbruster
2010-03-24 12:25 ` Paul Brook
2010-03-24 12:48 ` Anthony Liguori
2010-03-25 2:43 ` Jamie Lokier
2010-03-23 11:33 ` Daniel P. Berrange
2010-03-24 10:23 ` Daniel P. Berrange
2010-03-22 20:25 ` [Qemu-devel] " Daniel P. Berrange
2010-03-23 10:06 ` [Qemu-devel] " Juan Quintela
2010-03-23 10:41 ` Gerd Hoffmann
2010-03-23 10:50 ` Juan Quintela
2010-03-23 11:08 ` Daniel P. Berrange
2010-03-23 12:19 ` Juan Quintela
2010-03-23 23:13 ` Jamie Lokier
2010-03-24 7:59 ` Gerd Hoffmann
2010-03-24 13:52 ` Cole Robinson
2010-03-24 14:00 ` Gerd Hoffmann
2010-03-23 23:19 ` Jamie Lokier
2010-03-24 2:22 ` Andi Kleen
2010-03-24 8:49 ` Juan Quintela
[not found] ` <20100323145105.GV16253@redhat.com>
2010-03-23 15:05 ` [Qemu-devel] Re: [libvirt] " Anthony Liguori
2010-03-23 15:57 ` Paul Brook
2010-03-23 16:06 ` Anthony Liguori
2010-03-23 18:00 ` Avi Kivity
2010-03-23 18:23 ` [libvirt] [Qemu-devel] " Daniel P. Berrange
2010-03-24 1:05 ` Anthony Liguori
2010-03-24 4:48 ` Avi Kivity
2010-03-23 19:28 ` [Qemu-devel] Re: [libvirt] " Anthony Liguori
2010-03-23 23:09 ` Jamie Lokier
2010-03-24 5:17 ` Avi Kivity
2010-03-24 10:36 ` Daniel P. Berrange
2010-03-24 10:42 ` Avi Kivity
2010-03-24 12:23 ` Anthony Liguori
2010-03-24 12:29 ` Avi Kivity
2010-03-24 12:32 ` Anthony Liguori
2010-03-24 12:33 ` Avi Kivity
2010-03-25 0:28 ` Jamie Lokier
2010-03-24 16:42 ` Luiz Capitulino
2010-03-24 19:49 ` Avi Kivity
2010-03-24 20:12 ` Luiz Capitulino
2010-03-24 20:32 ` Anthony Liguori
2010-03-24 20:54 ` Alexander Graf
2010-03-24 21:33 ` Luiz Capitulino
2010-03-25 7:49 ` Alexander Graf
2010-03-24 21:25 ` Luiz Capitulino
2010-03-24 21:40 ` Anthony Liguori
2010-03-25 8:26 ` Vincent Hanquez
2010-03-25 8:49 ` Avi Kivity
2010-03-25 12:33 ` Anthony Liguori
2010-03-25 12:37 ` Avi Kivity
2010-03-25 13:44 ` Anthony Liguori
2010-03-25 13:48 ` Avi Kivity
2010-03-25 13:57 ` Anthony Liguori
2010-03-25 14:09 ` Luiz Capitulino
2010-03-25 15:59 ` Anthony Liguori
2010-03-26 2:11 ` Jamie Lokier
2010-03-25 14:21 ` Avi Kivity
2010-03-25 14:22 ` Vincent Hanquez
2010-03-25 16:50 ` Markus Armbruster
2010-03-25 17:40 ` Anthony Liguori
2010-03-26 7:37 ` Markus Armbruster
2010-03-26 9:26 ` [libvirt] [Qemu-devel] " Paolo Bonzini
2010-03-26 9:51 ` [Qemu-devel] Re: [libvirt] " Avi Kivity
2010-03-26 12:53 ` Anthony Liguori
2010-03-26 13:53 ` Anthony Liguori
2010-03-25 13:37 ` Gildas Le Nadan
2010-03-25 13:59 ` Daniel P. Berrange
2010-03-25 14:56 ` Vincent Hanquez
2010-03-25 15:07 ` Daniel P. Berrange
2010-03-25 15:14 ` Vincent Hanquez
2010-03-25 15:16 ` Daniel P. Berrange
2010-03-25 16:01 ` Anthony Liguori
2010-03-25 16:30 ` Alexander Graf
2010-03-26 2:18 ` Jamie Lokier
2010-03-25 13:23 ` Luiz Capitulino
2010-03-25 13:55 ` Anthony Liguori
2010-03-26 12:52 ` Luiz Capitulino
2010-03-25 6:37 ` Avi Kivity
2010-03-25 8:18 ` Alexander Graf
2010-03-26 16:01 ` Avi Kivity
2010-03-24 12:19 ` Anthony Liguori
2010-03-24 12:27 ` Avi Kivity
2010-03-24 12:30 ` Anthony Liguori
2010-03-24 12:32 ` Avi Kivity
2010-03-23 18:07 ` Daniel P. Berrange
2010-03-23 19:24 ` Anthony Liguori
2010-03-24 5:49 ` Avi Kivity
2010-03-24 12:30 ` Paul Brook
2010-03-24 12:34 ` Avi Kivity
2010-03-24 13:03 ` Paul Brook
2010-03-24 15:55 ` Markus Armbruster
2010-03-24 16:12 ` Paul Brook
2010-03-23 23:22 ` Jamie Lokier
2010-03-23 17:57 ` [Qemu-devel] " Avi Kivity
2010-03-23 19:31 ` Anthony Liguori
2010-03-24 4:53 ` Avi Kivity
2010-03-26 2:31 ` Jamie Lokier
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=4BA89725.8000601@redhat.com \
--to=kraxel@redhat.com \
--cc=Jes.Sorensen@redhat.com \
--cc=libvir-list@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.