Summary: | xwl_present_flips_stop: Assertion `xwl_window->present_window == window' failed. | ||
---|---|---|---|
Product: | Wayland | Reporter: | James <james> |
Component: | XWayland | Assignee: | Wayland bug list <wayland-bugs> |
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> |
Severity: | major | ||
Priority: | medium | CC: | magiblot, pmargeti34 |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
James
2018-06-15 15:26:39 UTC
> Xwayland: ../xorg-server-1.20.0/hw/xwayland/xwayland-present.c:520:
> xwl_present_flips_stop: Assertion `xwl_window->present_window == window' failed.
I get this error as well with plasma 5.13.0 on Radeon HD 7750. Xwayland 1.20.0 used to work on plasma 5.12.5 though. I've tested Xwayland with the latest master branch and the error is still present:
Xwayland: xwayland-present.c:519: xwl_present_flips_stop: Assertion `xwl_window->present_window == window' failed.
(EE)
(EE) Backtrace:
(EE) 0: /bin/Xwayland (xorg_backtrace+0x56) [0x55bdbca6cbf7]
(EE) 1: /bin/Xwayland (0x55bdbc912000+0x15d9cb) [0x55bdbca6f9cb]
(EE) 2: //lib/libpthread.so.0 (0x7f6b696d8000+0xfe70) [0x7f6b696e7e70]
(EE) 3: //lib/libc.so.6 (gsignal+0xb7) [0x7f6b68e0921a]
(EE) 4: //lib/libc.so.6 (abort+0x11f) [0x7f6b68e0a17c]
(EE) 5: //lib/libc.so.6 (__assert_fail+0x0) [0x7f6b68e03384]
(EE) 6: //lib/libc.so.6 (__assert_perror_fail+0x0) [0x7f6b68e033c8]
(EE) 7: /bin/Xwayland (0x55bdbc912000+0x5a5e8) [0x55bdbc96c5e8]
(EE) 8: /bin/Xwayland (0x55bdbc912000+0xe8788) [0x55bdbc9fa788]
(EE) 9: /bin/Xwayland (0x55bdbc912000+0xe8b43) [0x55bdbc9fab43]
(EE) 10: /bin/Xwayland (0x55bdbc912000+0xe75b3) [0x55bdbc9f95b3]
(EE) 11: /bin/Xwayland (compClipNotify+0x93) [0x55bdbca3688e]
(EE) 12: /bin/Xwayland (0x55bdbc912000+0x8e0d7) [0x55bdbc9a00d7]
(EE) 13: /bin/Xwayland (0x55bdbc912000+0x8dff0) [0x55bdbc99fff0]
(EE) 14: /bin/Xwayland (0x55bdbc912000+0x8dff0) [0x55bdbc99fff0]
(EE) 15: /bin/Xwayland (miValidateTree+0x30d) [0x55bdbc9a0408]
(EE) 16: /bin/Xwayland (miResizeWindow+0x3c4) [0x55bdbc9a54fb]
(EE) 17: /bin/Xwayland (compResizeWindow+0x61) [0x55bdbca3676d]
(EE) 18: /bin/Xwayland (ConfigureWindow+0x90e) [0x55bdbca67c28]
(EE) 19: /bin/Xwayland (ProcConfigureWindow+0x6b) [0x55bdbca41534]
(EE) 20: /bin/Xwayland (Dispatch+0x2a6) [0x55bdbca464f5]
(EE) 21: /bin/Xwayland (dix_main+0x3fa) [0x55bdbca4984c]
(EE) 22: //lib/libc.so.6 (__libc_start_main+0x157) [0x7f6b68df9c1a]
(EE) 23: /bin/Xwayland (_start+0x2a) [0x55bdbc963c0a]
(EE)
Bump.
I managed to get a backtrace with debug symbols. Please notice the signal is first raised at #7, and if you ask gdb to continue running then a signal is raised again at #0.
If not the same bug, a very similar one. XWayland almost crashes by just looking at it.
> Thread 1 "Xwayland" received signal SIGABRT, Aborted.
> 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6
> #0 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6
> #1 0x00007fe4f864c672 in abort () from /usr/lib/libc.so.6
> #2 0x000055c82a4fd8fa in OsAbort () at ../xserver/os/utils.c:1347
> #3 0x000055c82a5014b5 in AbortServer () at ../xserver/os/log.c:879
> #4 FatalError (f=f@entry=0x55c82a638bf8 "Caught signal %d (%s). Server aborting\n") at ../xserver/os/log.c:1017
> #5 0x000055c82a505a16 in OsSigHandler (signo=<optimized out>, sip=<optimized out>, unused=<optimized out>, signo=<optimized out>, sip=<optimized out>,
> unused=<optimized out>) at ../xserver/os/osinit.c:156
> #6 <signal handler called>
> #7 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6
> #8 0x00007fe4f864c672 in abort () from /usr/lib/libc.so.6
> #9 0x00007fe4f864c548 in __assert_fail_base.cold.0 () from /usr/lib/libc.so.6
> #10 0x00007fe4f865a396 in __assert_fail () from /usr/lib/libc.so.6
> #11 0x000055c82a61d56b in xwl_present_flips_stop (window=<optimized out>, window=<optimized out>) at ../xserver/hw/xwayland/xwayland-present.c:551
> #12 0x000055c82a56b8ce in present_wnmd_flips_stop (window=<optimized out>, window=<optimized out>) at ../xserver/present/present_wnmd.c:159
> #13 0x000055c82a56bb45 in present_wnmd_check_flip_window (window=0x55c82c92e0e0) at ../xserver/present/present_wnmd.c:332
> #14 0x000055c82a56e8ef in present_clip_notify (window=0x55c82c92e0e0, dx=0, dy=298) at ../xserver/present/present_screen.c:203
> #15 0x000055c82a597e68 in compClipNotify (pWin=0x55c82c92e0e0, dx=0, dy=298) at ../xserver/composite/compwindow.c:317
> #16 0x000055c82a5dd615 in miComputeClips (pParent=pParent@entry=0x55c82c92e0e0, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab760,
> kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:478
> #17 0x000055c82a5dd508 in miComputeClips (pParent=pParent@entry=0x55c82c7b3610, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab830,
> kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:428
> #18 0x000055c82a5dd508 in miComputeClips (pParent=pParent@entry=0x55c82c7b9b00, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab8e0,
> kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:428
> #19 0x000055c82a5ddc6b in miValidateTree (pParent=0x55c82c38fe80, pChild=0x55c82c7b9b00, kind=<optimized out>) at ../xserver/mi/mivaltree.c:681
> #20 0x000055c82a5d8261 in miResizeWindow (pWin=0x55c82c7b9b00, x=0, y=<optimized out>, w=<optimized out>, h=<optimized out>, pSib=0x0) at ../xserver/mi/miwindow.c:467
> #21 0x000055c82a597cbd in compResizeWindow (pWin=0x55c82c7b9b00, x=<optimized out>, y=<optimized out>, w=<optimized out>, h=<optimized out>, pSib=<optimized out>)
> at ../xserver/composite/compwindow.c:407
> #22 0x000055c82a59e5f1 in ConfigureWindow (pWin=<optimized out>, mask=<optimized out>, vlist=<optimized out>, client=<optimized out>) at ../xserver/dix/window.c:2406
> #23 0x000055c82a5cf7e0 in ProcConfigureWindow (client=0x55c82c793a80) at ../xserver/dix/dispatch.c:916
> #24 0x000055c82a5cdf20 in Dispatch () at ../xserver/dix/dispatch.c:478
> #25 0x000055c82a4c715d in dix_main (envp=<optimized out>, argv=0x7ffd9f1abe58, argc=6) at ../xserver/dix/main.c:274
> #26 main (argc=6, argv=0x7ffd9f1abe58, envp=<optimized out>) at ../xserver/dix/stubmain.c:34
Cheers.
(In reply to magiblot from comment #2) > Bump. > > I managed to get a backtrace with debug symbols. Please notice the signal is > first raised at #7, and if you ask gdb to continue running then a signal is > raised again at #0. > > If not the same bug, a very similar one. XWayland almost crashes by just > looking at it. > > > Thread 1 "Xwayland" received signal SIGABRT, Aborted. > > 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6 > > #0 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6 > > #1 0x00007fe4f864c672 in abort () from /usr/lib/libc.so.6 > > #2 0x000055c82a4fd8fa in OsAbort () at ../xserver/os/utils.c:1347 > > #3 0x000055c82a5014b5 in AbortServer () at ../xserver/os/log.c:879 > > #4 FatalError (f=f@entry=0x55c82a638bf8 "Caught signal %d (%s). Server aborting\n") at ../xserver/os/log.c:1017 > > #5 0x000055c82a505a16 in OsSigHandler (signo=<optimized out>, sip=<optimized out>, unused=<optimized out>, signo=<optimized out>, sip=<optimized out>, > > unused=<optimized out>) at ../xserver/os/osinit.c:156 > > #6 <signal handler called> > > #7 0x00007fe4f8661d7f in raise () from /usr/lib/libc.so.6 > > #8 0x00007fe4f864c672 in abort () from /usr/lib/libc.so.6 > > #9 0x00007fe4f864c548 in __assert_fail_base.cold.0 () from /usr/lib/libc.so.6 > > #10 0x00007fe4f865a396 in __assert_fail () from /usr/lib/libc.so.6 > > #11 0x000055c82a61d56b in xwl_present_flips_stop (window=<optimized out>, window=<optimized out>) at ../xserver/hw/xwayland/xwayland-present.c:551 > > #12 0x000055c82a56b8ce in present_wnmd_flips_stop (window=<optimized out>, window=<optimized out>) at ../xserver/present/present_wnmd.c:159 > > #13 0x000055c82a56bb45 in present_wnmd_check_flip_window (window=0x55c82c92e0e0) at ../xserver/present/present_wnmd.c:332 > > #14 0x000055c82a56e8ef in present_clip_notify (window=0x55c82c92e0e0, dx=0, dy=298) at ../xserver/present/present_screen.c:203 > > #15 0x000055c82a597e68 in compClipNotify (pWin=0x55c82c92e0e0, dx=0, dy=298) at ../xserver/composite/compwindow.c:317 > > #16 0x000055c82a5dd615 in miComputeClips (pParent=pParent@entry=0x55c82c92e0e0, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab760, > > kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:478 > > #17 0x000055c82a5dd508 in miComputeClips (pParent=pParent@entry=0x55c82c7b3610, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab830, > > kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:428 > > #18 0x000055c82a5dd508 in miComputeClips (pParent=pParent@entry=0x55c82c7b9b00, pScreen=pScreen@entry=0x55c82c1442c0, universe=universe@entry=0x7ffd9f1ab8e0, > > kind=kind@entry=VTOther, exposed=exposed@entry=0x7ffd9f1ab8c0) at ../xserver/mi/mivaltree.c:428 > > #19 0x000055c82a5ddc6b in miValidateTree (pParent=0x55c82c38fe80, pChild=0x55c82c7b9b00, kind=<optimized out>) at ../xserver/mi/mivaltree.c:681 > > #20 0x000055c82a5d8261 in miResizeWindow (pWin=0x55c82c7b9b00, x=0, y=<optimized out>, w=<optimized out>, h=<optimized out>, pSib=0x0) at ../xserver/mi/miwindow.c:467 > > #21 0x000055c82a597cbd in compResizeWindow (pWin=0x55c82c7b9b00, x=<optimized out>, y=<optimized out>, w=<optimized out>, h=<optimized out>, pSib=<optimized out>) > > at ../xserver/composite/compwindow.c:407 > > #22 0x000055c82a59e5f1 in ConfigureWindow (pWin=<optimized out>, mask=<optimized out>, vlist=<optimized out>, client=<optimized out>) at ../xserver/dix/window.c:2406 > > #23 0x000055c82a5cf7e0 in ProcConfigureWindow (client=0x55c82c793a80) at ../xserver/dix/dispatch.c:916 > > #24 0x000055c82a5cdf20 in Dispatch () at ../xserver/dix/dispatch.c:478 > > #25 0x000055c82a4c715d in dix_main (envp=<optimized out>, argv=0x7ffd9f1abe58, argc=6) at ../xserver/dix/main.c:274 > > #26 main (argc=6, argv=0x7ffd9f1abe58, envp=<optimized out>) at ../xserver/dix/stubmain.c:34 > > Cheers. Could it be fixed by : https://gitlab.freedesktop.org/ajax/xserver/commit/ce271535adb6974e0a43bb64c8ed7a5dcaff67a2 (available in 1.20.3) ? (In reply to Lionel Landwerlin from comment #3) > Could it be fixed by : > https://gitlab.freedesktop.org/ajax/xserver/commit/ > ce271535adb6974e0a43bb64c8ed7a5dcaff67a2 (available in 1.20.3) ? Thanks for pointing that commit out. However, I got the backtrace using xserver from git://anongit.freedesktop.org/xorg/xserver at the beginning of November, when I guess the fix had already been efective for some time. Please confirm that's the right git repository and I'll try to reproduce the issue again with the latest version. Thanks for the report, should be fixed in xserver Git master by https://gitlab.freedesktop.org/xorg/xserver/commit/6b016d58d23d16eaae9908a92ed90547d1926317 . Thank you very much. I hope the next release comes soon. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.