[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Unable to get QXL vga working



On Thu, Jun 14, 2012 at 9:51 PM, Fabio Fantoni <fantonifabio@xxxxxxxxxx> wrote:
> Il 13/06/2012 13:40, ZhouPeng ha scritto:
>
> On Wed, Jun 13, 2012 at 5:38 PM, Fabio Fantoni <fantonifabio@xxxxxxxxxx>
> wrote:
>
> Il 13/06/2012 11:02, ZhouPeng ha scritto:
>
> On Mon, Jun 11, 2012 at 7:56 PM, Fabio Fantoni<fantonifabio@xxxxxxxxxx>
>
>  wrote:
>
> Il 24/05/2012 13:28, ZhouPeng ha scritto:
>
> On Thu, May 24, 2012 at 6:13 PM, Stefano Stabellini
> <stefano.stabellini@xxxxxxxxxxxxx>    wrote:
>
> On Thu, 24 May 2012, ZhouPeng wrote:
>
> Sorry for late reply, I am not on this mail these days because of my
> work.
>
> I further test qxl-vga and I think I figure out the problem in some
>
> extend.
>
> If using qxl device, the default memory size of vga is 64M.
> Which will cause xen_ram_alloc(qemu/xen-all.c) fails.
>
> The exact reason is xc_domain_populate_physmap_exact fails, because
>
> xen-hypervisor
> fail,
> it's because of   alloc_domheap_pages(d, a->extent_order, a->memflags)
> fails in hypervisor.
>
> I am not very familiar with xen's memory management, Does 64M exceed
> xen's heap space in this context?
>
> XL sets an upper bound of memory that can be allocated to the VM in
> libxl__build_pre, calling xc_domain_setmaxmem.
> My guess is that a 64MB allocation would go over that limit.
> You could try increasing the limit manually changing the
> xc_domain_setmaxmem call in libxl__build_pre, or you could try setting
> videoram=64 in the VM config file.
>
> Your guess is absolutely right!
>
> But set videoram=128 or
> xc_domain_setmaxmem(ctx->xch, domid, info->target_memkb +
> LIBXL_MAXMEM_CONSTANT + 2 * 64 * 1024);
>
> Then I successfuly install qxl driver in win-hvm and QXL can work
> properly.
>
> I will send some patch to add qxl support to libxl.
>
> I tried your 3 patches taken from the mailing list, it works but doesn't
> solve qxl problems for me, on linux domU (Precise and Wheezy) xorg
> doesn't
> start and on windows 7 I have heavy performance problem (unusable).
>
> Could you find qxl vga card  (named "Red Hat QXL GPU") in your
> windows hvm's device manager to make sure your qxl is working?
>
> My testing hvm-guest is Win XP.
>
> I played "Harry Potter" in my LAN smoothly, qxl gives
> great enhancement .
>
> Although I don't test win7 and linux, I think it should work for them.
>
> I tried also with qemu 1.1.0 but nothing change.
>
> I am not sure qemu 1.1.0 accept all the patches for xen.
>
> Could you have a try of git://xenbits.xen.org/qemu-upstream-unstable.git
>
> It is build and installed by default, you should enable spice support.
> spice can be enabled like below:
>
> +++ b/tools/Makefile    Sat May 26 12:31:01 2012 +0800
> @@ -157,6 +157,7 @@ subdir-all-qemu-xen-dir subdir-install-q
>         --bindir=$(LIBEXEC) \
>         --datadir=$(SHAREDIR)/qemu-xen \
>         --disable-kvm \
> +       --enable-spice \
>
> Does it work correctly for you? If so can I have some detail of your
> configurations please?
>
> My vm.cfg:
>
> name = 'xpPro_spice'
> firmware_override = '/usr/lib/xen/boot/hvmloader'
> builder = 'hvm'
> memory = '1024'
> device_model_version = 'qemu-xen'
> device_model_override = '/usr/lib/xen/bin/qemu-system-i386'
> disk = [ 'file:/path-to-img/xpPro.img,ioemu:hda,w' ]
> vif = ['ip=192.168.1.112, type=ioemu, bridge=eth0, mac=00:21:97:CB:0E:7D']
> sdl=0
> vnc=0
> vncviewer=0
> serial = 'pty'
> vcpus=1
> usbdevice='tablet'
> #spice
> spice=1
> qxl=1
> #qxlram=64
> #qxlvram=64
> spiceport=6000
> spicehost='192.168.1.187'
> spicedisable_ticketing = 1
> spiceagent_mouse = 0 # (1|0)
>
> For audio support this is needed too: (tested and working)
> -device intel-hda,id=sound0 -device hda-duplex,id=sound0-codec0 on qemu
> invocation and env QEMU_AUDIO_DRV=spice
> Can you add audio support on libxl please?
>
> I think audio support can be considered after qxl accpted.
>
> Thanks for reply, qxl driver is installed, windows see qxl video card,
> already compiled qemu with spice with patch I send months ago, already tried
> git://xenbits.xen.org/qemu-upstream-unstable.git before 1.1.
> Unfortunately the results are always the same.
> Here a quick recording:
> Windows 7 test: http://fantu.it/vari/spiceqxldebug1.mkv
>
> oh...  it shows spice+qxl running on Xen get
> significant performance reduction compared with KVM ...
>
> Debian wheezy test: http://fantu.it/vari/spiceqxldebug2.mkv
> Are not new but the result of the last test is the same.
> I hope I can help you understand the problem.
> If you need more information ask.
>
> We are trying to reproduce your results but failed so far.

>From your video spiceqxldebug1.mkv, I think you have reproduced it with win7?
And your mouse interaction in win7 shows performance is significantly
reduced compared
with qxl on kvm greatly. How about view a video from remote spice client?

On my WinXP testing, the mouse interaction is better than
your win7 test (but not as good as in kvm too), and I view a movie(Harry Potter)
from remote spice client (spice client on winxp), it's smooth.

Any way, qxl improve the performance, but it is not as good as running
on kvm from my
experence (no quantitative test). I don't know the reason yet. I just
guess it should
exist in qemu-xen or hypervisor.

I think you have reproduced.

My environment is simple, use the default.
---------------------
hg clone http://xenbits.xen.org/xen-unstable.hg

Dom0 kernel: (You can get it by KERNELS ?= linux-2.6-pvops in Linux.mk
automatically)
git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git
select a branch, I select xen/master (version 2.6.32.36):
$ git branch
  master
* xen/master

qemu (build by default)

git://xenbits.xen.org/qemu-upstream-unstable.git
$ git branch
* dummy
  master

+++ b/tools/Makefile    Sat May 26 12:31:01 2012 +0800
@@ -157,6 +157,7 @@ subdir-all-qemu-xen-dir subdir-install-q
        --bindir=$(LIBEXEC) \
        --datadir=$(SHAREDIR)/qemu-xen \
        --disable-kvm \
+       --enable-spice \

SPICE 0.7.1 is build from source code before.

Host is fc8-64bit, but dom0 kernel is replaced as described before.

> Can you give me details about the dom0 used for your tests please?
> For example here are details about my testing dom0:
> Wheezy 64 bit with kernel from package linux-image-3.2.0-2-amd64 version
> 3.2.18-1, package blktap-dkms and all dependency packages for xen 4.2, spice
> and usb redirection.
> -------------------------
> /etc/modules
> ------------
> loop max_loop=64
> xenfs
> xen-evtchn
> blktap
> -------------------------
> hg clone http://xenbits.xen.org/xen-unstable.hg
> vi config/StdGNU.mk # Workaround for Wheezy with multiarch support, there
> are parts that use LIBDIR set here instead of the one in configure (libdir)
> LIBLEAFDIR_x86_64 ?= lib
> vi Config.mk
> PYTHON_PREFIX_ARG =
> -------------------------
> Added some patches:
> - autoconf: add variable for pass arbitrary options to qemu upstream v3
> - tools: Improve make deb
> - libxc: do not "panic" if a kernel is not a bzImage.
> - tools/hotplug/Linux/init.d/: added other xen kernel modules on xencommons
> start
> - 3 patches for add qxl support
>
> -------------------------
> ./configure --enable-qemuu-spice --enable-qemuu-usbredir
> --enable-qemuu-debug
> -------------------------
> make deb
>
> Is qxl someway affected by physical video card of dom0?

I don't think so, because mainly rendered by client but not host.
> Have you installed spice-guest-tools-0.1.exe from spice site, if no what do
> you use for qxl driver?

spice-guest-tools-0.1.exe
> Have you also installed gplpv driver or not?

No.

No driver installed except from spice-guest-tools-0.1.exe.
> Thanks for any reply.

-- 
Zhou Peng

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.