[Spice-devel] Questions about multimonitor Xinerama configuration
Naga Mohan Pothula
nagamohan.pothula at yahoo.com
Tue Aug 9 12:41:22 PDT 2011
Hi Lubos,
Thank you for providing Bug ID. The attachment(Xorg.conf) gave some clue to proceed further.
I'm able to reproduce the same at my environment.
Whatever the black screen present in PNG attachement is Primary Display.
Bitmaps are delivered to Primary Display when system is in Booting/Shutdown process and the rest of the time bitmaps are delivered to Secondary Display.
When I did gdb to Xorg process, I'm getting the same backtrace when guest is configured to Single Display.
Alon, I'm looking for your suggestions to proceed further on this issue.
Regards,
Naga.
________________________________
From: Lubos Kocman <lkocman at redhat.com>
To:
Cc: spice-devel at lists.freedesktop.org
Sent: Monday, August 8, 2011 1:41 AM
Subject: Re: [Spice-devel] Questions about multimonitor Xinerama configuration
Hi
There is already https://bugzilla.redhat.com/show_bug.cgi?id=695323 opened against xinerama issue.
Lubos
----- Original Message -----
From: "Naga Mohan Pothula" <nagamohan.pothula at yahoo.com>
To: "Alon Levy" <alevy at redhat.com>
Cc: spice-devel at lists.freedesktop.org
Sent: Friday, August 5, 2011 9:54:48 PM
Subject: Re: [Spice-devel] Questions about multimonitor Xinerama configuration
Hi Alon,
I'm looking some weird behaviour this time. I tested with different versions of qemu.
1.) Two black screen windows for Linux guests with Qemu 0.14.0
2.) Two black screen windows for both Windows and Linux guests with Qemu taken from git repository( git://anongit.freedesktop.org/ ~alon/qemu)
If i launch for single QXL device, everything works fine. I'm seeing bitmaps are delivered until second spice windows is launched.
3.) Tested with Qemu 0.15.0-rc1. Black screen window is launched even with single QXL device for win7 guest and for linux too.
if I specify " -global qxl-vga.vram_size=33554432" then I'm getting the output as at First case
Here is guest command line:
./x86_64-softmmu/qemu-system-x86_64 -drive file=/home/naga/spice-0.8/images/rhel61bt64.qcow,if=ide -soundhw ac97 -L pc-bios -vga qxl -global qxl-vga.vram_size=33554432 \
-device qxl -device virtio-serial -chardev spicevmc,id=vdagent,debug=0,name=vdagent -device virtserialport,chardev=vdagent,name=com.redhat.spice.0 \
-spice port=$SPICE_PORT,disable-ticketing -usbdevice tablet -enable-kvm -m 1024 -net nic,model=e1000,vlan=0,macaddr=52:54:84:fe:00:02 \
-net user,vlan=1,hostfwd=tcp::2222-:22 -net nic,model=e1000,vlan=1
Even with Qemu 0.15.0 and option " -global qxl-vga.vram_size=33554432" is specified, t wo black screens for Linux guests happened.
Regards,
Naga.
From: Alon Levy <alevy at redhat.com>
To: Naga Mohan Pothula <nagamohan.pothula at yahoo.com>
Cc: Leonardo E. Reiter <lreiter at vbridges.com>; Gerd Hoffmann <kraxel at redhat.com>; "spice-devel at lists.freedesktop.org" <spice-devel at lists.freedesktop.org>
Sent: Friday, August 5, 2011 5:05 AM
Subject: Re: [Spice-devel] Questions about multimonitor Xinerama configuration
On Thu, Aug 04, 2011 at 06:43:58PM -0700, Naga Mohan Pothula wrote:
> Hi Gerd/Alon,
>
> I'm getting two black screen windows when I launched RHEL 64-bit in dual-head mode even with latest code(ie., Spice v0.9.0 and qxl driver for linux v0.0.16 taken from git repository)
>
The guest is RHEL 64-bit? and you had it working with two pci devices before?
Can you please post complete guest command line?
Host is running qemu release candidate for 0.15.0 and spice 0.9.0, right?
Did you try reducing vram size below 30 MB like suggested on another thread due to bios limitation?
> Initially I did debugged Server code and noticed that it is not receiving data from pipe (ie., ring_is_empty returns false to red_channel_pipe_get function) immediately when second display is launched
>
> It seems the problem is completely with qxl driver. Please refer below backtrace received when I did gdb Xorg.
>
>
> qxl_ring_push (ring=0x1891cf0, new_elt=0x7fffa850cec0) at qxl_ring.c:75
> 75 qxl_ring.c: No such file or directory.
> in qxl_ring.c
> (gdb) bt
> #0 qxl_ring_push (ring=0x1891cf0, new_elt=0x7fffa850cec0) at qxl_ring.c:75
> #1 0x00007f80005af53b in push_drawable (qxl=<value optimized out>,
> drawable=<value optimized out>) at qxl_surface.c:516
> #2 0x00007f80005af665 in qxl_surface_put_image (dest=0x19027c8,
> x=<value optimized out>, y=<value optimized out>, width=24, height=24,
> src=0x2079a88 "", src_pitch=96) at qxl_surface.c:1467
> #3 0x00007f80005b5e24 in uxa_do_put_image (pDrawable=<value optimized out>,
> pGC=<value optimized out>, depth=<value optimized out>,
> x=<value optimized out>, y=<value optimized out>, w=<value optimized out>,
> h=24, leftPad=0, format=2, bits=0x2079a88 "") at uxa-accel.c:329
> #4 uxa_put_image (pDrawable=<value optimized out>, pGC=<value optimized out>,
> depth=<value optimized out>, x=<value optimized out>,
> y=<value optimized out>, w=<value optimized out>, h=24, leftPad=0,
> format=2, bits=0x2079a88 "") at uxa-accel.c:367
> #5 0x00000000004d6cfc in ?? ()
> #6 0x0000000000448af9 in ?? ()
> #7 0x0000000000554a78 in ?? ()
> #8 0x000000000044ae7c in ?? ()
> #9 0x000000000042208a in _start ()
>
> Looping in "qxl_ring_push" continuously happens at this scenario.
>
>
> Regards,
> Mohan.
>
>
>
> ________________________________
> From: Leonardo E. Reiter < lreiter at vbridges.com >
> To: Gerd Hoffmann < kraxel at redhat.com >
> Cc: spice-devel at lists.freedesktop.org
> Sent: Friday, June 24, 2011 1:17 PM
> Subject: Re: [Spice-devel] Questions about multimonitor Xinerama configuration
>
>
> On Fri, Jun 24, 2011 at 11:46 AM, Leonardo E. Reiter < lreiter at vbridges.com > wrote:
>
> On Fri, Jun 24, 2011 at 4:33 AM, Gerd Hoffmann < kraxel at redhat.com > wrote:
> >
> > Hi,
> >>
> >>
> >>
> >>you can see the 2nd QXL device at 00:06.0. I don't know why the first
> >>>one says "VGA compatible" and the second one doesn't, but hopefully that
> >>>is not an issue.
> >>>
> >>
> The second simply isn't matched by the qxl driver due to the different PCI class. Fixable (see attachent).
> >>
> >Thanks... I will try this and keep testing... we are looking into the spicec crash as well, because this was happening for us even with Windows guests. But any more help with the this QXL issue will be much appreciated.
> Definitely confirmed the situation you explained... I had to remove the "Screen" config from the Device sections from the /etc/X11/xorg.conf, at which point I was able to start with 2 SPICE windows but blank. This is after applying your patch (using the 0.13.0 tag in git for the QXL driver). gdb'ing Xorg and getting a backtrace shows:
>
> #0 qxl_ring_push (ring=0xe6c490, new_elt=0x7ffff4578850) at qxl_ring.c:73
> #1 0x00007f5fa413ecd0 in push_surface_cmd (surface=0xed8c60)
> at qxl_surface.c:435
> #2 send_destroy (surface=0xed8c60) at qxl_surface.c:766
> #3 0x00007f5fa413ce38 in qxl_destroy_pixmap (pixmap=0x1657670)
> at qxl_driver.c:739
> #4 0x00000000004cc19c in ?? ()
> #5 0x00000000004ab0da in ?? ()
> #6 0x00000000004bb998 in FreePicture ()
> #7 0x0000000000455840 in FreeResource ()
> #8 0x00000000004c2f3a in ?? ()
> #9 0x00000000004c014d in ?? ()
> #10 0x00000000004275dc in ?? ()
> #11 0x000000000042208a in _start ()
>
> I'll keep investigating but would appreciate any further help.
>
> Thanks,
> Leo Reiter
>
>
> >
> >>That alone doesn't get things going though, guess thats why it isn't supported (yet?) by the driver. I can get X to show the display on one or the other qxl device, but not with xinerama on both.
> >>
> >>Seems to be stuck here:
> >>
> >>0x00007f3f90620992 in qxl_ring_push (ring=0x126e4c0, new_elt=0x7fff74a3afa0) at qxl_ring.c:73
> >>73 while (header->prod - header->cons == header->num_items)
> >>(gdb) bt
> >>#0 0x00007f3f90620992 in qxl_ring_push (ring=0x126e4c0, new_elt=0x7fff74a3afa0) at qxl_ring.c:73
> >>#1 0x00007f3f9061ee5b in push_drawable (drawable=<optimized out>, qxl=<optimized out>)
> >> at qxl_surface.c:516
> >>#2 push_drawable (qxl=<optimized out>, drawable=<optimized out>) at qxl_surface.c:498
> >>#3 0x00007f3f906208d1 in qxl_surface_put_image (dest=0x12f5ce0, x=<optimized out>,
> >> y=<optimized out>, width=24, height=24, src=0x2058468 "", src_pitch=96) at qxl_surface.c:1465
> >>#4 0x00007f3f9062618d in uxa_do_put_image (src_stride=96, bits=0x2058468 "", format=2, h=24,
> >> w=24, y=<optimized out>, x=<optimized out>, depth=<optimized out>, pGC=0x1a2fe00,
> >> pDrawable=0x1a35910) at uxa-accel.c:329
> >>#5 uxa_put_image (pDrawable=0x1a35910, pGC=0x1a2fe00, depth=<optimized out>, x=<optimized out>,
> >> y=0, w=24, h=24, leftPad=0, format=2, bits=0x2058468 "") at uxa-accel.c:367
> >>#6 0x00000000004dc199 in ?? ()
> >>#7 0x000000000042b91d in ?? ()
> >>#8 0x000000000042ec11 in ?? ()
> >>#9 0x0000000000422e1a in ?? ()
> >>#10 0x00000033c1a2139d in __libc_start_main () from /lib64/libc.so.6
> >>#11 0x0000000000423101 in _start ()
> >>
> >>Could be a server side issue too (guest driver spinning, waiting for spice-server to take requests out of the ring). Also note that spicec crashed while the X-Server tried to init the two qxl devices in xinerama mode ...
> >>
> >>cheers,
> >> Gerd
> >>
> >
> >
> >Thanks,
> >
> >
> >- Leo Reiter
> >
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
_______________________________________________
Spice-devel mailing list
Spice-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel
_______________________________________________
Spice-devel mailing list
Spice-devel at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20110809/669be950/attachment.html>
More information about the Spice-devel
mailing list