Il 29/04/2015 12:23, Fabio Fantoni ha scritto:
Il 29/04/2015 02:21, Andrew Cooper ha scritto:
On 28/04/15 23:17, Jim Fehlig wrote:
Jim Fehlig wrote:
wei.l...@citrix.com wrote:
Hi all
We are now three months into 4.6 development window. This is an
email to keep
track of all the patch series I gathered. It is by no means
complete and / or
acurate. Feel free to reply this email with new projects or
correct my
misunderstanding.
[...]
* libxl: add qxl vga interface support for upstream qemu (fair)
- Fabio Fantoni
I've been working on SPICE support in the libvirt libxl driver and
quickly came across the lack of support for qxl device. What is the
status of this work? AFAICT, there was a v16 posted nearly a year ago
with no comments
http://lists.xen.org/archives/html/xen-devel/2014-05/msg03214.html
After playing with this more, I think the patch will need a
LIBXL_HAVE_QXL or similar in libxl.h.
I noticed this work was committed in the 4.3 dev cycle, but was
reverted
before the release by commit 5479961a, which describes problems with
"instructions that cannot be used for MMIO". Has any progress been
made
on that front? Is Fabio's patch the only piece missing to support qxl
devices?
I've tried Fabio's patch on top of fairly recent xen-unstable and don't
see the issues mentioned in the commit message of 5479961a. Note that I
only tried linux HVM guests though.
qxl vga is working good on windows domUs except problem after
save/restore
on linux domUs instead I wasn't able to get it working
today I tried with fedora 22 (beta3) lxde live dvd (have included
latest qxl drivers available): with both stdvga and qxl mouse is
working but not visible and I not understand why, I'll try also
lubuntu 15.04.
can you tell me what dom0 and domU have you use for test please?
16byte decomposed instruction still don't get passed correctly to the
device model.
This has been discussed at the hackathon and plan is in place.
~Andrew
Thanks, is there any eta of possible solution?
Thanks for any reply and sorry for my bad english.
I tried with lubuntu 15.04 with qxl on latest xen-unstable and qemu crashed:
#0 __memset_sse2 () at ../sysdeps/x86_64/multiarch/../memset.S:908
Latest istruction:
=> 0x7ffff3713f7b <__memset_sse2+2363>: movntdq %xmm0,(%rdi)
In attachment full backtrace, registers, istructions ecc... if can be useful
The linux domUs problem with qxl seems related to what Andrew told.
Added also Jan Beulich, he did one or more patches for try to solves it
time ago if I remember good.
Full backtrace:
#0 __memset_sse2 () at ../sysdeps/x86_64/multiarch/../memset.S:908
No locals.
#1 0x00007ffff482cbc0 in memset (__len=3145728, __ch=0, __dest=0x7fffdbe17000)
at /usr/include/x86_64-linux-gnu/bits/string3.h:85
No locals.
#2 red_create_surface (worker=0x7fffe41f4010, surface_id=4, width=1024,
height=768, stride=4096, format=32, line_0=0x7fffdbb18000, data_is_valid=0,
send_client=1) at red_worker.c:9617
surface = 0x7fffe41f4550
i = <optimized out>
#3 0x00007ffff48386b5 in red_process_surface (worker=0x7fffe41f4010,
surface=0x5555563c3dd0, group_id=1, loadvm=0) at red_worker.c:4279
height = <optimized out>
stride = <optimized out>
reloaded_surface = <optimized out>
surface_id = 4
red_surface = 0x7fffe41f4550
data = <optimized out>
__FUNCTION__ = "red_process_surface"
#4 0x00007ffff483bafc in red_process_commands
(worker=worker@entry=0x7fffe41f4010,
ring_is_empty=ring_is_empty@entry=0x7fffe4bcdc6c, max_pipe_size=50) at
red_worker.c:5095
surface = 0x5555563c3dd0
ext_cmd = {cmd = {data = 72057594038145664, type = 5, padding =
4294967295}, group_id = 1, flags = 0}
n = 0
#5 0x00007ffff4841334 in red_worker_main (arg=<optimized out>) at
red_worker.c:12191
ring_is_empty = 0
i = <optimized out>
num_events = 0
timers_queue_timeout = <optimized out>
worker = 0x7fffe41f4010
__FUNCTION__ = "red_worker_main"
#6 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
__res = <optimized out>
pd = 0x7fffe4bce700
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737030973184,
-1109939810272634058, 140737280922144, 140737030973888, 140737354125376, 3,
1109990962358295350, 1109949136377912118}, mask_was_saved = 0}}, priv = {pad =
{0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
freesize = <optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#7 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
No locals.
#8 0x0000000000000000 in ?? ()
No symbol table info available.
Registers:
rax 0x7fffdbe17000 140736882372608
rbx 0x7fffe41f4550 140737020642640
rcx 0x0 0
rdx 0x0 0
rsi 0x0 0
rdi 0x7fffdbf52000 140736883662848
rbp 0x7fffe41f4010 0x7fffe41f4010
rsp 0x7fffe4bcd978 0x7fffe4bcd978
r8 0x1c4f80 1855360
r9 0x100000 1048576
r10 0x0 0
r11 0x7ffff3713a0a 140737277671946
r12 0x1000 4096
r13 0x300 768
r14 0x20 32
r15 0x0 0
rip 0x7ffff3713f7b 0x7ffff3713f7b <__memset_sse2+2363>
eflags 0x10206 [ PF IF RF ]
cs 0xe033 57395
ss 0xe02b 57387
ds 0x0 0
es 0x0 0
fs 0x0 0
gs 0x0 0
Current instructions:
=> 0x7ffff3713f7b <__memset_sse2+2363>: movntdq %xmm0,(%rdi)
0x7ffff3713f7f <__memset_sse2+2367>: movntdq %xmm0,0x10(%rdi)
0x7ffff3713f84 <__memset_sse2+2372>: movntdq %xmm0,0x20(%rdi)
0x7ffff3713f89 <__memset_sse2+2377>: movntdq %xmm0,0x30(%rdi)
0x7ffff3713f8e <__memset_sse2+2382>: movntdq %xmm0,0x40(%rdi)
0x7ffff3713f93 <__memset_sse2+2387>: movntdq %xmm0,0x50(%rdi)
0x7ffff3713f98 <__memset_sse2+2392>: movntdq %xmm0,0x60(%rdi)
0x7ffff3713f9d <__memset_sse2+2397>: movntdq %xmm0,0x70(%rdi)
0x7ffff3713fa2 <__memset_sse2+2402>: lea 0x80(%rdi),%rdi
0x7ffff3713fa9 <__memset_sse2+2409>: jge 0x7ffff3713f70
<__memset_sse2+2352>
0x7ffff3713fab <__memset_sse2+2411>: sfence
0x7ffff3713fae <__memset_sse2+2414>: add %r8,%rdi
0x7ffff3713fb1 <__memset_sse2+2417>: lea -0x53b(%rip),%r11 #
0x7ffff3713a7d <__memset_sse2+1085>
0x7ffff3713fb8 <__memset_sse2+2424>: lea 0xc4861(%rip),%rcx #
0x7ffff37d8820
0x7ffff3713fbf <__memset_sse2+2431>: movswq (%rcx,%r8,2),%rcx
0x7ffff3713fc4 <__memset_sse2+2436>: lea (%rcx,%r11,1),%r11
Threads backtrace:
Thread 7 (Thread 0x7fffe3ff3700 (LWP 15685)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1 0x0000555555a10706 in qemu_cond_wait (cond=0x555556488c60,
mutex=0x555556488c90) at util/qemu-thread-posix.c:135
#2 0x000055555595a566 in vnc_worker_thread_loop (queue=0x555556488c60) at
ui/vnc-jobs.c:222
#3 0x000055555595aac9 in vnc_worker_thread (arg=0x555556488c60) at
ui/vnc-jobs.c:323
#4 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#5 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()
Thread 6 (Thread 0x7fffe4bce700 (LWP 15684)):
#0 __memset_sse2 () at ../sysdeps/x86_64/multiarch/../memset.S:908
#1 0x00007ffff482cbc0 in memset (__len=3145728, __ch=0, __dest=0x7fffdbe17000)
at /usr/include/x86_64-linux-gnu/bits/string3.h:85
#2 red_create_surface (worker=0x7fffe41f4010, surface_id=4, width=1024,
height=768, stride=4096, format=32, line_0=0x7fffdbb18000, data_is_valid=0,
send_client=1) at red_worker.c:9617
#3 0x00007ffff48386b5 in red_process_surface (worker=0x7fffe41f4010,
surface=0x5555563c3dd0, group_id=1, loadvm=0) at red_worker.c:4279
#4 0x00007ffff483bafc in red_process_commands
(worker=worker@entry=0x7fffe41f4010,
ring_is_empty=ring_is_empty@entry=0x7fffe4bcdc6c, max_pipe_size=50) at
red_worker.c:5095
#5 0x00007ffff4841334 in red_worker_main (arg=<optimized out>) at
red_worker.c:12191
#6 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#7 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#8 0x0000000000000000 in ?? ()
Thread 4 (Thread 0x7fffe9efe700 (LWP 15679)):
#0 do_sigwait (set=0x7fffe9efdc50, sig=0x7fffe9efdc40) at
../nptl/sysdeps/unix/sysv/linux/../../../../../sysdeps/unix/sysv/linux/sigwait.c:65
#1 0x00007ffff3a2ae67 in __sigwait (set=<optimized out>, sig=<optimized out>)
at
../nptl/sysdeps/unix/sysv/linux/../../../../../sysdeps/unix/sysv/linux/sigwait.c:100
#2 0x000055555563ec90 in qemu_dummy_cpu_thread_fn (arg=0x55555640a2b0) at
/mnt/raid-vm/RW/source/xen/Xen/tools/qemu-xen-dir/cpus.c:995
#3 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#4 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5 0x0000000000000000 in ?? ()
Thread 3 (Thread 0x7fffea6ff700 (LWP 15678)):
#0 do_sigwait (set=0x7fffea6fec50, sig=0x7fffea6fec40) at
../nptl/sysdeps/unix/sysv/linux/../../../../../sysdeps/unix/sysv/linux/sigwait.c:65
#1 0x00007ffff3a2ae67 in __sigwait (set=<optimized out>, sig=<optimized out>)
at
../nptl/sysdeps/unix/sysv/linux/../../../../../sysdeps/unix/sysv/linux/sigwait.c:100
#2 0x000055555563ec90 in qemu_dummy_cpu_thread_fn (arg=0x5555563f8050) at
/mnt/raid-vm/RW/source/xen/Xen/tools/qemu-xen-dir/cpus.c:995
#3 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#4 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5 0x0000000000000000 in ?? ()
Thread 2 (Thread 0x7ffff7ff1700 (LWP 15669)):
#0 0x00007ffff3a2a1fd in read () at ../sysdeps/unix/syscall-template.S:82
#1 0x00007ffff4fa2f1f in read_all (fd=27, data=0x5555563f2610, len=16,
nonblocking=0) at xs.c:378
#2 0x00007ffff4fa4982 in read_message (h=0x5555563f7790, nonblocking=0) at
xs.c:1150
#3 0x00007ffff4fa4cd6 in read_thread (arg=0x5555563f7790) at xs.c:1222
#4 0x00007ffff3a22b50 in start_thread (arg=<optimized out>) at
pthread_create.c:304
#5 0x00007ffff376c95d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()
Thread 1 (Thread 0x7ffff7ef6900 (LWP 15664)):
#0 0x00007ffff3761de1 in ppoll (fds=<optimized out>, nfds=<optimized out>,
timeout=<optimized out>, sigmask=<optimized out>) at
../sysdeps/unix/sysv/linux/ppoll.c:58
#1 0x000055555597163a in qemu_poll_ns (fds=0x5555564a0690, nfds=12,
timeout=20961962) at qemu-timer.c:326
#2 0x0000555555970318 in os_host_main_loop_wait (timeout=20961962) at
main-loop.c:239
#3 0x0000555555970401 in main_loop_wait (nonblocking=0) at main-loop.c:494
#4 0x0000555555758abf in main_loop () at vl.c:1882
#5 0x00005555557607b5 in main (argc=45, argv=0x7fffffffe278,
envp=0x7fffffffe3e8) at vl.c:4401
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel