Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • libX11 libX11
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 71
    • Issues 71
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • xorgxorg
  • lib
  • libX11libX11
  • Issues
  • #121
Closed
Open
Issue created Nov 08, 2020 by david@david2020

_XReply deadlock

The touch screen will cause libX11-1.6.4 to deadlock. I tried different versions of libX11, such as libX11-1.6.12 and libX11-master. The number of deadlocks in the new version is reduced, but there are still deadlock problems. Has anyone encountered a similar problem?

Thread 1 (Thread 0x7ffff7f9f2c0 (LWP 29164)):

#0  0x00007fffab92e9f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5555568eabf8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
        __ret = -512
        oldtype = 0
        err = <optimized out>
        oldtype = <optimized out>
        err = <optimized out>
        __ret = <optimized out>
        resultvar = <optimized out>
        __arg4 = <optimized out>
        __arg3 = <optimized out>
        __arg2 = <optimized out>
        __arg1 = <optimized out>
        _a4 = <optimized out>
        _a3 = <optimized out>
        _a2 = <optimized out>
        _a1 = <optimized out>

#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x5555568f1840, cond=0x5555568eabd0) at pthread_cond_wait.c:502
        spin = 0
        buffer = {__routine = 0x7fffab92e690 <__condvar_cleanup_waiting>, __arg = 0x7fffffffd8c0, __canceltype = 0, __prev = 0x0}
        cbuffer = {wseq = 0, cond = 0x5555568eabd0, mutex = 0x5555568f1840, private = 0}
        rt = <optimized out>
        err = <optimized out>
        g = 0
        flags = <optimized out>
        g1_start = <optimized out>
        signals = <optimized out>
        result = 0
        wseq = <optimized out>
        seq = 0
        private = <optimized out>
        maxspin = <optimized out>
        err = <optimized out>
        result = <optimized out>
        wseq = <optimized out>
        g = <optimized out>
        seq = <optimized out>
        flags = <optimized out>
        private = <optimized out>
        signals = <optimized out>
        g1_start = <optimized out>
        spin = <optimized out>
        buffer = <optimized out>
        cbuffer = <optimized out>
        rt = <optimized out>
        s = <optimized out>

#2  __pthread_cond_wait (cond=0x5555568eabd0, mutex=0x5555568f1840) at pthread_cond_wait.c:655
No locals.

#3  0x00007fff9cec30e2 in _XReply (dpy=dpy@entry=0x5555568f05d0, rep=rep@entry=0x7fffffffd990, extra=extra@entry=0, discard=discard@entry=1) at xcb_io.c:626
        req = <optimized out>
        response = <optimized out>
        error = 0x0
        c = <optimized out>
        reply = <optimized out>
        current = 0x7fff8c006d40
        dpy_request = <optimized out>
        __PRETTY_FUNCTION__ = "_XReply"

#4  0x00007fff9cec5b23 in _XSeqSyncFunction (dpy=0x5555568f05d0) at XlibInt.c:224
        rep = {type = 0 '\000', revertTo = 6 '\006', sequenceNumber = 47682, length = 21845, focus = 2632647114, pad1 = 32767, pad2 = 1452213712, pad3 = 21845, pad4 = 1452213712, pad5 = 21845}
        req = <optimized out>
        dpy = 0x5555568f05d0
        rep = <optimized out>
        req = <optimized out>
        rep = <optimized out>
        req = <optimized out>

#5  0x00007fff9cec52bf in _XError (dpy=dpy@entry=0x5555568f05d0, rep=rep@entry=0x7fff8c005950) at XlibInt.c:1503
        rtn_val = 0
        event = {type = 0, xany = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058}, xkey = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, root = 93825012810640, subwindow = 7379737, time = 140737488345728, x = -9408, y = 32767, x_root = -9632, y_root = 32767, state = 4294957656, keycode = 32767, same_screen = -1709678719}, xbutton = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, root = 93825012810640, subwindow = 7379737, time = 140737488345728, x = -9408, y = 32767, x_root = -9632, y_root = 32767, state = 4294957656, button = 32767, same_screen = -1709678719}, xmotion = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, root = 93825012810640, subwindow = 7379737, time = 140737488345728, x = -9408, y = 32767, x_root = -9632, y_root = 32767, state = 4294957656, is_hint = -1 '\377', same_screen = -1709678719}, xcrossing = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, root = 93825012810640, subwindow = 7379737, time = 140737488345728, x = -9408, y = 32767, x_root = -9632, y_root = 32767, mode = -9640, detail = 32767, same_screen = -1709678719, focus = 32767, state = 4294957888}, xfocus = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, mode = 1452229520, detail = 21845}, xexpose = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, x = 1452229520, y = 21845, width = 7379737, height = 0, count = -9600}, xgraphicsexpose = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, drawable = 140737475085058, x = 1452229520, y = 21845, width = 7379737, height = 0, count = -9600, major_code = 32767, minor_code = -9408}, xnoexpose = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, drawable = 140737475085058, major_code = 1452229520, minor_code = 21845}, xvisibility = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, state = 1452229520}, xcreatewindow = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, parent = 140737475085058, window = 93825012810640, x = 7379737, y = 0, width = -9600, height = 32767, border_width = -9408, override_redirect = 32767}, xdestroywindow = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640}, xunmap = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, from_configure = 7379737}, xmap = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, override_redirect = 7379737}, xmaprequest = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, parent = 140737475085058, window = 93825012810640}, xreparent = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, parent = 7379737, x = -9600, y = 32767, override_redirect = -9408}, xconfigure = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, x = 7379737, y = 0, width = -9600, height = 32767, border_width = -9408, above = 140737488345696, override_redirect = -9640}, xgravity = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, x = 7379737, y = 0}, xresizerequest = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, width = 1452229520, height = 21845}, xconfigurerequest = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, parent = 140737475085058, window = 93825012810640, x = 7379737, y = 0, width = -9600, height = 32767, border_width = -9408, above = 140737488345696, detail = -9640, value_mask = 140735778676609}, xcirculate = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, event = 140737475085058, window = 93825012810640, place = 7379737}, xcirculaterequest = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, parent = 140737475085058, window = 93825012810640, place = 7379737}, xproperty = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, atom = 93825012810640, time = 7379737, state = -9600}, xselectionclear = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, selection = 93825012810640, time = 7379737}, xselectionrequest = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, owner = 140737475085058, requestor = 93825012810640, selection = 7379737, target = 140737488345728, property = 140737488345920, time = 140737488345696}, xselection = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, requestor = 140737475085058, selection = 93825012810640, target = 7379737, property = 140737488345728, time = 140737488345920}, xcolormap = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, colormap = 93825012810640, new = 7379737, state = 0}, xclient = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, message_type = 93825012810640, format = 7379737, data = {b = "\200\332\377\377\377\177\000\000@\333\377\377\377\177\000\000`\332\377\377", s = {-9600, -1, 32767, 0, -9408, -1, 32767, 0, -9632, -1}, l = {140737488345728, 140737488345920, 140737488345696, 140737488345688, 140735778676609}}}, xmapping = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, request = 1452229520, first_keycode = 21845, count = 7379737}, xerror = {type = 0, display = 0x5555568f05d0, resourceid = 859, serial = 7379737, error_code = 2 '\002', request_code = 131 '\203', minor_code = 53 '5'}, xkeymap = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, window = 140737475085058, key_vector = "\220C\217VUU\000\000\031\233p\000\000\000\000\000\200\332\377\377\377\177\000\000@\333\377\377\377\177\000"}, xgeneric = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, extension = -13270270, evtype = 32767}, xcookie = {type = 0, serial = 93825012794832, send_event = 859, display = 0x709b19, extension = -13270270, evtype = 32767, cookie = 1452229520, data = 0x709b19}, pad = {93823560581120, 93825012794832, 859, 7379737, 140737475085058, 93825012810640, 7379737, 140737488345728, 140737488345920, 140737488345696, 140737488345688, 140735778676609, 140737488345920, 140735778676933, 3, 0, 7379737, 140737488345728, 0, 0, 0, 0, 0, 0}}
        async = <optimized out>
        next = <optimized out>

#6  0x00007fff9cec1e9b in handle_error (dpy=0x5555568f05d0, err=0x7fff8c005950, in_XReply=<optimized out>) at xcb_io.c:207
        ext = <optimized out>
        ret_code = 32767

#7  0x00007fff9cec1f45 in handle_response (dpy=dpy@entry=0x5555568f05d0, response=0x7fff8c005950, in_XReply=in_XReply@entry=1) at xcb_io.c:333
        async = <optimized out>
        next = <optimized out>

#8  0x00007fff9cec30a6 in _XReply (dpy=dpy@entry=0x5555568f05d0, rep=rep@entry=0x7fffffffdbd0, extra=extra@entry=0, discard=discard@entry=0) at xcb_io.c:679
        req = <optimized out>
        response = 0x0
        error = 0x7fff8c005950
        c = <optimized out>
        reply = <optimized out>
        current = 0x7ffee0008910
        dpy_request = <optimized out>
        __PRETTY_FUNCTION__ = "_XReply"

#9  0x00007fff922bb60e in XIQueryDevice (dpy=0x5555568f05d0, deviceid=11, ndevices_return=0x7fffffffdc4c) at XIQueryDevice.c:62
        info = 0x0
        req = <optimized out>
        reply = {repType = 1 '\001', RepType = 128 '\200', sequenceNumber = 64429, length = 32767, num_devices = 36789, pad0 = 22049, pad1 = 21845, pad2 = 1445040053, pad3 = 21845, pad4 = 1445040052, pad5 = 21845}
        ptr = <optimized out>
        end = <optimized out>
        i = <optimized out>
        buf = 0x0
        extinfo = 0x5555569003b0

#10 0x00007fff929b08c6 in QXcbConnection::xi2HandleDeviceChangedEvent(void*) () from /home/Qt5.9.1/5.9.1/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
No symbol table info available.

#11 0x00007fff929b33bb in QXcbConnection::xi2HandleEvent(xcb_ge_event_t*) () from /home/Qt5.9.1/5.9.1/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
No symbol table info available.

#12 0x00007fff929895d2 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*) () from /home/Qt5.9.1/5.9.1/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
No symbol table info available.

#13 0x00007fff92989d9c in QXcbConnection::processXcbEvents() () from /home/Qt5.9.1/5.9.1/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
No symbol table info available.

#14 0x00007fffabde43c1 in QObject::event(QEvent*) () from /home/Qt5.9.1/5.9.1/gcc_64/lib/libQt5Core.so.5
Edited Nov 11, 2020 by david
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking