Bug 876685
Summary: | Spice server aborts when spice client is connected | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Marian Krcmarik <mkrcmari> | ||||||
Component: | spice-server | Assignee: | Yonit Halperin <yhalperi> | ||||||
Status: | CLOSED ERRATA | QA Contact: | Desktop QE <desktop-qa-list> | ||||||
Severity: | high | Docs Contact: | |||||||
Priority: | unspecified | ||||||||
Version: | 6.4 | CC: | acathrow, alevy, cfergeau, chayang, dblechte, dyasny, marcandre.lureau, mbarta, mkenneth, sluo, uril, yhalperi | ||||||
Target Milestone: | rc | Keywords: | Regression | ||||||
Target Release: | --- | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | spice-server-0.12.0-6.el6 | Doc Type: | Bug Fix | ||||||
Doc Text: |
I think this bug was found and fixed in 6.4 development phase. But I'm not sure so:
Using lz compression on server self-made images (*), resulted with bad stride values (**). This caused spice-server to abort.
Fixed by not using lz compression for such images.
(*) if example for such images is wanted see comment #11
(**) if more information is wanted: stride > bpp*width, which spice treats as bad values for images that go through lz compression.
|
Story Points: | --- | ||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2013-02-21 10:03:48 UTC | Type: | Bug | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Attachments: |
|
Description
Marian Krcmarik
2012-11-14 17:41:45 UTC
Marian, Could you test the attached two patches for rhpkg? (the first is just something I already had there, the second actually should fix the problem) Alon (attaching momentarily) Created attachment 645592 [details]
spice-server-0.12.0-3 for rhpkg
Created attachment 645982 [details]
spice-server-0.12.0-4 for rhpkg (actual fix proposed)
Marian, Sorry - I sort of forgot in the middle, the patch you used is absolutely not related, I just attached the actual one that may solve it - it basically just tries to let the encoder continue on, if it actually uses width & stride correctly it may even work (and if the decoder does the same). I'll appreciate if you can test again, sorry for the double work! Alon (In reply to comment #7) > Marian, > > Sorry - I sort of forgot in the middle, the patch you used is absolutely > not related, I just attached the actual one that may solve it - it basically > just tries to let the encoder continue on, if it actually uses width & > stride correctly it may even work (and if the decoder does the same). It seems It does not, now remote-viewer crashing on decompressing. (/usr/bin/remote-viewer:7438): Spice-ERROR **: lz_decompress_tmpl.c:273:lz_a8_decompress: assertion `op + len <= op_limit' failed #0 0x000000364f40e530 in __read_nocancel () at ../sysdeps/unix/syscall-template.S:82 #1 0x00000039bcc418d0 in read () at /usr/include/bits/unistd.h:45 #2 spice_backtrace_gstack () at backtrace.c:100 #3 0x00000039bcc49a00 in spice_logv (log_domain=0x39bccc9406 "Spice", log_level=SPICE_LOG_LEVEL_ERROR, strloc=0x39bccd530d "lz_decompress_tmpl.c:273", function=0x39bccd57a0 "lz_a8_decompress", format=0x39bccc9da7 "assertion `%s' failed", args=0x7f78743e4680) at log.c:108 #4 0x00000039bcc49b3a in spice_log (log_domain=<value optimized out>, log_level=<value optimized out>, strloc=<value optimized out>, function=<value optimized out>, format=<value optimized out>) at log.c:123 #5 0x00000039bcc4a95c in lz_a8_decompress (encoder=0x2ed4f50, out_buf=0x3351c00, size=<value optimized out>) at lz_decompress_tmpl.c:273 #6 0x00000039bcc53d84 in lz_decode (lz=0x2ed4f50, to_type=<value optimized out>, buf=0x3351c00 "") at lz.c:725 #7 0x00000039bcc3af7e in canvas_get_lz (canvas=0x2ec3c60, image=0x2bb17a0, invers=0, want_original=0) at ../spice-common/common/canvas_base.c:821 #8 0x00000039bcc3b46f in canvas_get_image_internal (canvas=0x2ec3c60, image=0x2bb17a0, want_original=0, real_get=1) at ../spice-common/common/canvas_base.c:1093 #9 0x00000039bcc3ce2b in canvas_get_image (spice_canvas=0x2ec3c60, bbox=0x2bb1744, clip=<value optimized out>, copy=0x2bb1768) at ../spice-common/common/canvas_base.c:1268 #10 canvas_draw_copy (spice_canvas=0x2ec3c60, bbox=0x2bb1744, clip=<value optimized out>, copy=0x2bb1768) at ../spice-common/common/canvas_base.c:2198 #11 0x00000039bcc21c25 in display_handle_draw_copy (channel=0x836840 [SpiceDisplayChannel], in=<value optimized out>) at channel-display.c:1367 #12 0x00000039bcc19e54 in spice_channel_recv_msg (channel=0x836840 [SpiceDisplayChannel], msg_handler=0x39bcc1f7c0 <spice_display_handle_msg>, data=0x0) at spice-channel.c:1848 #13 0x00000039bcc1c931 in spice_channel_iterate_read (channel=0x836840 [SpiceDisplayChannel]) at spice-channel.c:2005 #14 0x00000039bcc18e84 in spice_channel_iterate (data=0x836840) at spice-channel.c:2063 #15 spice_channel_coroutine (data=0x836840) at spice-channel.c:2225 #16 0x00000039bcc4091b in coroutine_trampoline (cc=0x8368f8) at coroutine_ucontext.c:56 #17 0x00000039bcc408d3 in continuation_trampoline (i0=<value optimized out>, i1=<value optimized out>) at continuation.c:49 #18 0x000000364ec43b70 in ?? () from /lib64/libc.so.6 #19 0x0000000000836cc0 in ?? () #20 0x0000000000000000 in ?? () >I'll > appreciate if you can test again, sorry for the double work! > > Alon *** Bug 879159 has been marked as a duplicate of this bug. *** This bug is related to server self-created images that are sent to the client - e.g., surfaces that are sent to the client after it disconnects and reconnects, or images that are resent losslessly to the client when lossy compression is enabled (i.e, in LOW bandwidth conditions). For rhel6.4 guest I was able to reproduce it easily by opening browser and terminal windows, moving them around, and disconnecting and reconnecting the client. For Windows guest, it can be reproduced when using 16 bit color depth. Both scenarios trigger images with stride > width * bpp (where bpp= bytes per pixel): in rhel6.4, due to A8 bitmaps, in Windows, due to 16 bit bitmaps with odd width. I've posted a fix. *** Bug 880887 has been marked as a duplicate of this bug. *** Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2013-0529.html |