KhronosGroup / Vulkan-LoaderAndValidationLayers

**Deprecated repository** for Vulkan loader and validation layers
Apache License 2.0
412 stars 172 forks source link

Resizing the window in vulkan-smokescreen led to crash #2127

Closed luyatshimbalanga closed 7 years ago

luyatshimbalanga commented 7 years ago

The issue was originally reported on Red Hat Bugzilla and I was asked to file a bug report here. vulkan-smokecreen demo will crash when attempting to resize the window or set full screen. Here is the generated backtrace: warning: core file may not match specified executable file. [New LWP 8980] [New LWP 8983] [New LWP 8982] [New LWP 8984] [New LWP 8985] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Error while reading shared library symbols for /lib64/libLLVM-4.0.so: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libLLVM-4.0.so-4.0.1-3.fc27.x86_64.debug Error while reading shared library symbols for /lib64/../lib64/libtinfo.so.6: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libtinfo.so.6.0-6.0-13.20170722.fc27.x86_64.debug Error while reading shared library symbols for /usr/lib64/libvulkan_intel.so: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libvulkan_intel.so-17.2.2-2.fc27.x86_64.debug Error while reading shared library symbols for /lib64/libwayland-client.so.0: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libwayland-client.so.0.3.0-1.14.0-1.fc27.x86_64.debug Error while reading shared library symbols for /lib64/libwayland-server.so.0: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libwayland-server.so.0.1.0-1.14.0-1.fc27.x86_64.debug Error while reading shared library symbols for /usr/lib64/libvulkan_radeon.so: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libvulkan_radeon.so-17.2.2-2.fc27.x86_64.debug Error while reading shared library symbols for /lib64/libelf.so.1: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libelf-0.170.so-0.170-1.fc27.x86_64.debug Error while reading shared library symbols for /lib64/libnss_sss.so.2: could not find '.gnu_debugaltlink' file for /var/cache/abrt-di/usr/lib/debug/usr/lib64/libnss_sss.so.2-1.15.3-4.fc27.x86_64.debug Core was generated byvulkan-smoketest'. Program terminated with signal SIGABRT, Aborted.

0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51

51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. [Current thread is 1 (Thread 0x7f5db0965740 (LWP 8980))]

Thread 1 (Thread 0x7f5db0965740 (LWP 8980)):

0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51

    set = {__val = {0, 0, 140040371349560, 0, 140040371349560, 140735641810672, 140735641810656, 7237429727, 140040371348704, 140040351152159, 4294967295, 140040371348704, 140040344727424, 140040371351200, 140040371349560, 140735641810752}}
    pid = <optimized out>
    tid = <optimized out>

1 0x00007f5daf039447 in __GI_abort () at abort.c:90

    save_stage = 2
    act = {__sigaction_handler = {sa_handler = 0x17ea02e00005, sa_sigaction = 0x17ea02e00005}, sa_mask = {__val = {0, 140040348763712, 3432, 1, 140040348763843, 140040348746752, 140040345244321, 10, 140040345784811, 140040371328792, 140040345784811, 1, 140040348763843, 94553618681328, 0, 140040348768368}}, sa_flags = -1352094384, sa_restorer = 0x55fefac5e488}
    sigs = {__val = {32, 0 <repeats 15 times>}}

2 0x00007f5daf68e025 in __gnu_cxx::__verbose_terminate_handler () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95

    terminating = true
    t = <optimized out>

3 0x00007f5daf68bc16 in cxxabiv1::terminate (handler=) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:47

No locals.

4 0x00007f5daf68bc61 in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:57

No locals.

5 0x00007f5daf68bea4 in cxxabiv1::cxa_throw (obj=obj@entry=0x55fefada8e60, tinfo=tinfo@entry=0x55fefa29d9a8 , dest=0x7f5daf6a14c0 <std::runtime_error::~runtime_error()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:93

    globals = <optimized out>
    header = 0x55fefada8de0

6 0x000055fefa082aed in vk::assert_success (res=) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Helpers.h:33

    ss = {<std::basic_iostream<char, std::char_traits<char> >> = {<std::basic_istream<char, std::char_traits<char> >> = {<std::basic_ios<char, std::char_traits<char> >> = {<std::ios_base> = {_vptr.ios_base = 0x55fefa29d908 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+104>, static boolalpha = std::_S_boolalpha, static dec = std::_S_dec, static fixed = std::_S_fixed, static hex = std::_S_hex, static internal = std::_S_internal, static left = std::_S_left, static oct = std::_S_oct, static right = std::_S_right, static scientific = std::_S_scientific, static showbase = std::_S_showbase, static showpoint = std::_S_showpoint, static showpos = std::_S_showpos, static skipws = std::_S_skipws, static unitbuf = std::_S_unitbuf, static uppercase = std::_S_uppercase, static adjustfield = std::_S_adjustfield, static basefield = std::_S_basefield, static floatfield = std::_S_floatfield, static badbit = std::_S_badbit, static eofbit = std::_S_eofbit, static failbit = std::_S_failbit, static goodbit = std::_S_goodbit, static app = std::_S_app, static ate = std::_S_ate, static binary = std::_S_bin, static in = std::_S_in, static out = std::_S_out, static trunc = std::_S_trunc, static beg = std::_S_beg, static cur = std::_S_cur, static end = std::_S_end, _M_precision = 6, _M_width = 0, _M_flags = 4098, _M_exception = std::_S_goodbit, _M_streambuf_state = std::_S_goodbit, _M_callbacks = 0x0, _M_word_zero = {_M_pword = 0x0, _M_iword = 0}, _M_local_word = {{_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}}, _M_word_size = 8, _M_word = 0x7fff91effa30, _M_ios_locale = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7f5daf973fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7f5daf975760 <std::locale::_S_twinned_facets>}}, _M_tie = 0x0, _M_fill = 32 ' ', _M_fill_init = true, _M_streambuf = 0x7fff91eff988, _M_ctype = 0x7f5daf981080 <(anonymous namespace)::ctype_c>, _M_num_put = 0x7f5daf981010 <(anonymous namespace)::num_put_c>, _M_num_get = 0x7f5daf981020 <(anonymous namespace)::num_get_c>}, _vptr.basic_istream = 0x55fefa29d8b8 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+24>, _M_gcount = 0}, <std::basic_ostream<char, std::char_traits<char> >> = {_vptr.basic_ostream = 0x55fefa29d8e0 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+64>}, <No data fields>}, _M_stringbuf = {<std::basic_streambuf<char, std::char_traits<char> >> = {_vptr.basic_streambuf = 0x55fefa29d928 <vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >+16>, _M_in_beg = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_in_cur = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_in_end = 0x55fefae21990 "1004 returnedU", _M_out_beg = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_out_cur = 0x55fefae2199d "U", _M_out_end = 0x55fefae21b80 "\377\377\377\377\377\377\377\377\201\001", _M_buf_locale = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7f5daf973fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7f5daf975760 <std::locale::_S_twinned_facets>}}, _M_mode = 24, _M_string = "VkResult -100000"}}
    ss = {<std::basic_iostream<char, std::char_traits<char> >> = {<std::basic_istream<char, std::char_traits<char> >> = {<std::basic_ios<char, std::char_traits<char> >> = {<std::ios_base> = {_vptr.ios_base = 0x55fefa29d908 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+104>, static boolalpha = std::_S_boolalpha, static dec = std::_S_dec, static fixed = std::_S_fixed, static hex = std::_S_hex, static internal = std::_S_internal, static left = std::_S_left, static oct = std::_S_oct, static right = std::_S_right, static scientific = std::_S_scientific, static showbase = std::_S_showbase, static showpoint = std::_S_showpoint, static showpos = std::_S_showpos, static skipws = std::_S_skipws, static unitbuf = std::_S_unitbuf, static uppercase = std::_S_uppercase, static adjustfield = std::_S_adjustfield, static basefield = std::_S_basefield, static floatfield = std::_S_floatfield, static badbit = std::_S_badbit, static eofbit = std::_S_eofbit, static failbit = std::_S_failbit, static goodbit = std::_S_goodbit, static app = std::_S_app, static ate = std::_S_ate, static binary = std::_S_bin, static in = std::_S_in, static out = std::_S_out, static trunc = std::_S_trunc, static beg = std::_S_beg, static cur = std::_S_cur, static end = std::_S_end, _M_precision = 6, _M_width = 0, _M_flags = 4098, _M_exception = std::_S_goodbit, _M_streambuf_state = std::_S_goodbit, _M_callbacks = 0x0, _M_word_zero = {_M_pword = 0x0, _M_iword = 0}, _M_local_word = {{_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}}, _M_word_size = 8, _M_word = 0x7fff91effa30, _M_ios_locale = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7f5daf973fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7f5daf975760 <std::locale::_S_twinned_facets>}}, _M_tie = 0x0, _M_fill = 32 ' ', _M_fill_init = true, _M_streambuf = 0x7fff91eff988, _M_ctype = 0x7f5daf981080 <(anonymous namespace)::ctype_c>, _M_num_put = 0x7f5daf981010 <(anonymous namespace)::num_put_c>, _M_num_get = 0x7f5daf981020 <(anonymous namespace)::num_get_c>}, _vptr.basic_istream = 0x55fefa29d8b8 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+24>, _M_gcount = 0}, <std::basic_ostream<char, std::char_traits<char> >> = {_vptr.basic_ostream = 0x55fefa29d8e0 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+64>}, <No data fields>}, _M_stringbuf = {<std::basic_streambuf<char, std::char_traits<char> >> = {_vptr.basic_streambuf = 0x55fefa29d928 <vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >+16>, _M_in_beg = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_in_cur = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_in_end = 0x55fefae21990 "1004 returnedU", _M_out_beg = 0x55fefae21980 "VkResult -1000001004 returnedU", _M_out_cur = 0x55fefae2199d "U", _M_out_end = 0x55fefae21b80 "\377\377\377\377\377\377\377\377\201\001", _M_buf_locale = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7f5daf981660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7f5daf973fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7f5daf975760 <std::locale::_S_twinned_facets>}}, _M_mode = 24, _M_string = "VkResult -100000"}}

7 vk::assert_success(VkResult) () at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Smoke.cpp:715

    back = <optimized out>

8 0x000055fefa08a880 in Shell::acquire_back_buffer (this=this@entry=0x7fff91effe00) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Shell.cpp:453

No locals.

9 0x000055fefa08f115 in ShellXcb::loop_poll (this=0x7fff91effe00) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/ShellXcb.cpp:251

    timer = {start_ = {tv_sec = 35737, tv_nsec = 159491207}}
    current_time = 23.244702894
    profile_start_time = 20.00997147
    profile_present_count = 831

10 0x000055fefa08f97d in ShellXcb::run (this=0x7fff91effe00) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/ShellXcb.cpp:284

No locals.

11 0x000055fefa07b6dd in main (argc=, argv=) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Main.cpp:43

    shell = {<Shell> = {_vptr.Shell = 0x55fefa29da20 <vtable for ShellXcb+16>, game_ = @0x55fefa9a7ec0, settings_ = @0x55fefa9a7ed8, instance_layers_ = std::vector of length 0, capacity 0, instance_extensions_ = std::vector of length 2, capacity 2 = {0x55fefa09a178 "VK_KHR_surface", 0x55fefa09a2e0 "VK_KHR_xcb_surface"}, device_extensions_ = std::vector of length 1, capacity 1 = {0x55fefa09a187 "VK_KHR_swapchain"}, ctx_ = {instance = 0x55fefaa130f0, debug_report = 0x0, physical_dev = 0x55fefab732c0, game_queue_family = 0, present_queue_family = 0, dev = 0x55fefac0a960, game_queue = 0x55fefab73840, present_queue = 0x55fefab73840, back_buffers = std::queue wrapping: std::deque with 2 elements = {{image_index = 0, acquire_semaphore = 0x55fefab73c80, render_semaphore = 0x55fefac92280, present_fence = 0x55fefac922a0}, {image_index = 1, acquire_semaphore = 0x55fefac5a1b0, render_semaphore = 0x55fefac5a200, present_fence = 0x55fefac5a220}}, surface = 0x55fefac5de40, format = {format = VK_FORMAT_B8G8R8A8_SRGB, colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}, swapchain = 0x55fefad34e00, extent = {width = 1280, height = 1024}, acquired_back_buffer = {image_index = 1, acquire_semaphore = 0x55fefac5a1b0, render_semaphore = 0x55fefac5a200, present_fence = 0x55fefac5a220}}, game_tick_ = 0.0333333351, game_time_ = 0.0113681518}, c_ = 0x55fefa9aa060, scr_ = 0x55fefa9af3a0, win_ = 48234496, wm_protocols_ = 251, wm_delete_window_ = 249, lib_handle_ = 0x7f5db0994b40, quit_ = false}

Thread 2 (Thread 0x7f5da5048700 (LWP 8983)):

0 0x00007f5daf98fc3b in futex_wait_cancelable (private=, expected=0, futex_word=0x55fefa9a9bd8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

    __ret = -512
    oldtype = 0
    err = <optimized out>

1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55fefa9a9b88, cond=0x55fefa9a9bb0) at pthread_cond_wait.c:502

    spin = 0
    buffer = {__routine = 0x7f5daf98f8d0 <__condvar_cleanup_waiting>, __arg = 0x7f5da5047e20, __canceltype = -1348937377, __prev = 0x0}
    cbuffer = {wseq = 13868, cond = 0x55fefa9a9bb0, mutex = 0x55fefa9a9b88, private = 0}
    err = <optimized out>
    g = 0
    flags = <optimized out>
    signals = <optimized out>
    result = 0
    seq = 6934

2 __pthread_cond_wait (cond=0x55fefa9a9bb0, mutex=0x55fefa9a9b88) at pthread_cond_wait.c:655

No locals.

3 0x00007f5daf6b1cac in gthread_cond_wait (mutex=, cond=cond@entry=0x55fefa9a9bb0) at /usr/src/debug/gcc-7.2.1-20170915/obj-x86_64-redhat-linux/x86_64-redhat-linux/libstdc++-v3/include/x86_64-redhat-linux/bits/gthr-default.h:864

No locals.

4 std::condition_variable::wait (this=this@entry=0x55fefa9a9bb0, __lock=...) at ../../../../../libstdc++-v3/src/c++11/condition_variable.cc:53

    __e = <optimized out>

5 0x000055fefa0809b3 in std::condition_variable::wait<Smoke::Worker::update_loop()::<lambda()> > (p=..., lock=..., this=0x55fefa9a9bb0) at /usr/include/c++/7/condition_variable:99

No locals.

6 Smoke::Worker::update_loop (this=0x55fefa9a9b60) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Smoke.cpp:845

    lock = {_M_device = 0x55fefa9a9b88, _M_owns = true}

7 0x00007f5daf6b7fef in std::execute_native_thread_routine (__p=0x55fefad143a0) at ../../../../../libstdc++-v3/src/c++11/thread.cc:83

    __t = std::unique_ptr<std::thread::_State> containing 0x55fefad143a0

8 0x00007f5daf989609 in start_thread (arg=0x7f5da5048700) at pthread_create.c:465

    pd = 0x7f5da5048700
    now = <optimized out>
    unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140040177223424, 7422794735773255177, 140040177221568, 140735641811632, 0, 0, -7370041331830782455, -7370053597494016503}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
    not_first_call = <optimized out>
    pagesize_m1 = <optimized out>
    sp = <optimized out>
    freesize = <optimized out>
    __PRETTY_FUNCTION__ = "start_thread"

9 0x00007f5daf11a17f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

No locals.

Thread 3 (Thread 0x7f5da5849700 (LWP 8982)):

0 0x00007f5daf98fc3b in futex_wait_cancelable (private=, expected=0, futex_word=0x55fefa9a9b4c) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

    __ret = -512
    oldtype = 0
    err = <optimized out>

1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55fefa9a9af8, cond=0x55fefa9a9b20) at pthread_cond_wait.c:502

    spin = 0
    buffer = {__routine = 0x7f5daf98f8d0 <__condvar_cleanup_waiting>, __arg = 0x7f5da5848e20, __canceltype = -1348937377, __prev = 0x0}
    cbuffer = {wseq = 14799, cond = 0x55fefa9a9b20, mutex = 0x55fefa9a9af8, private = 0}
    err = <optimized out>
    g = 1
    flags = <optimized out>
    signals = <optimized out>
    result = 0
    seq = 7399

2 __pthread_cond_wait (cond=0x55fefa9a9b20, mutex=0x55fefa9a9af8) at pthread_cond_wait.c:655

No locals.

3 0x00007f5daf6b1cac in gthread_cond_wait (mutex=, cond=cond@entry=0x55fefa9a9b20) at /usr/src/debug/gcc-7.2.1-20170915/obj-x86_64-redhat-linux/x86_64-redhat-linux/libstdc++-v3/include/x86_64-redhat-linux/bits/gthr-default.h:864

No locals.

4 std::condition_variable::wait (this=this@entry=0x55fefa9a9b20, __lock=...) at ../../../../../libstdc++-v3/src/c++11/condition_variable.cc:53

    __e = <optimized out>

5 0x000055fefa0809b3 in std::condition_variable::wait<Smoke::Worker::update_loop()::<lambda()> > (p=..., lock=..., this=0x55fefa9a9b20) at /usr/include/c++/7/condition_variable:99

No locals.

6 Smoke::Worker::update_loop (this=0x55fefa9a9ad0) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Smoke.cpp:845

    lock = {_M_device = 0x55fefa9a9af8, _M_owns = true}

7 0x00007f5daf6b7fef in std::execute_native_thread_routine (__p=0x55fefadbd180) at ../../../../../libstdc++-v3/src/c++11/thread.cc:83

    __t = std::unique_ptr<std::thread::_State> containing 0x55fefadbd180

8 0x00007f5daf989609 in start_thread (arg=0x7f5da5849700) at pthread_create.c:465

    pd = 0x7f5da5849700
    now = <optimized out>
    unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140040185616128, 7422794735773255177, 140040185614272, 140735641811632, 0, 0, -7370040231782283767, -7370053597494016503}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
    not_first_call = <optimized out>
    pagesize_m1 = <optimized out>
    sp = <optimized out>
    freesize = <optimized out>
    __PRETTY_FUNCTION__ = "start_thread"

9 0x00007f5daf11a17f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

No locals.

Thread 4 (Thread 0x7f5da4847700 (LWP 8984)):

0 0x00007f5daf98fc3b in futex_wait_cancelable (private=, expected=0, futex_word=0x55fefa9a9c68) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

    __ret = -512
    oldtype = 0
    err = <optimized out>

1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55fefa9a9c18, cond=0x55fefa9a9c40) at pthread_cond_wait.c:502

    spin = 0
    buffer = {__routine = 0x7f5daf98f8d0 <__condvar_cleanup_waiting>, __arg = 0x7f5da4846e20, __canceltype = -1348937377, __prev = 0x0}
    cbuffer = {wseq = 13948, cond = 0x55fefa9a9c40, mutex = 0x55fefa9a9c18, private = 0}
    err = <optimized out>
    g = 0
    flags = <optimized out>
    signals = <optimized out>
    result = 0
    seq = 6974

2 __pthread_cond_wait (cond=0x55fefa9a9c40, mutex=0x55fefa9a9c18) at pthread_cond_wait.c:655

No locals.

3 0x00007f5daf6b1cac in gthread_cond_wait (mutex=, cond=cond@entry=0x55fefa9a9c40) at /usr/src/debug/gcc-7.2.1-20170915/obj-x86_64-redhat-linux/x86_64-redhat-linux/libstdc++-v3/include/x86_64-redhat-linux/bits/gthr-default.h:864

No locals.

4 std::condition_variable::wait (this=this@entry=0x55fefa9a9c40, __lock=...) at ../../../../../libstdc++-v3/src/c++11/condition_variable.cc:53

    __e = <optimized out>

5 0x000055fefa0809b3 in std::condition_variable::wait<Smoke::Worker::update_loop()::<lambda()> > (p=..., lock=..., this=0x55fefa9a9c40) at /usr/include/c++/7/condition_variable:99

No locals.

6 Smoke::Worker::update_loop (this=0x55fefa9a9bf0) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Smoke.cpp:845

    lock = {_M_device = 0x55fefa9a9c18, _M_owns = true}

7 0x00007f5daf6b7fef in std::execute_native_thread_routine (__p=0x55fefacde990) at ../../../../../libstdc++-v3/src/c++11/thread.cc:83

    __t = std::unique_ptr<std::thread::_State> containing 0x55fefacde990

8 0x00007f5daf989609 in start_thread (arg=0x7f5da4847700) at pthread_create.c:465

    pd = 0x7f5da4847700
    now = <optimized out>
    unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140040168830720, 7422794735773255177, 140040168828864, 140735641811632, 0, 0, -7370042431879281143, -7370053597494016503}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
    not_first_call = <optimized out>
    pagesize_m1 = <optimized out>
    sp = <optimized out>
    freesize = <optimized out>
    __PRETTY_FUNCTION__ = "start_thread"

9 0x00007f5daf11a17f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

No locals.

Thread 5 (Thread 0x7f5da4046700 (LWP 8985)):

0 0x00007f5daf98fc3b in futex_wait_cancelable (private=, expected=0, futex_word=0x55fefa9a9cf8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

    __ret = -512
    oldtype = 0
    err = <optimized out>

1 __pthread_cond_wait_common (abstime=0x0, mutex=0x55fefa9a9ca8, cond=0x55fefa9a9cd0) at pthread_cond_wait.c:502

    spin = 0
    buffer = {__routine = 0x7f5daf98f8d0 <__condvar_cleanup_waiting>, __arg = 0x7f5da4045e20, __canceltype = -1348937377, __prev = 0x0}
    cbuffer = {wseq = 13956, cond = 0x55fefa9a9cd0, mutex = 0x55fefa9a9ca8, private = 0}
    err = <optimized out>
    g = 0
    flags = <optimized out>
    signals = <optimized out>
    result = 0
    seq = 6978

2 __pthread_cond_wait (cond=0x55fefa9a9cd0, mutex=0x55fefa9a9ca8) at pthread_cond_wait.c:655

No locals.

3 0x00007f5daf6b1cac in gthread_cond_wait (mutex=, cond=cond@entry=0x55fefa9a9cd0) at /usr/src/debug/gcc-7.2.1-20170915/obj-x86_64-redhat-linux/x86_64-redhat-linux/libstdc++-v3/include/x86_64-redhat-linux/bits/gthr-default.h:864

No locals.

4 std::condition_variable::wait (this=this@entry=0x55fefa9a9cd0, __lock=...) at ../../../../../libstdc++-v3/src/c++11/condition_variable.cc:53

    __e = <optimized out>

5 0x000055fefa0809b3 in std::condition_variable::wait<Smoke::Worker::update_loop()::<lambda()> > (p=..., lock=..., this=0x55fefa9a9cd0) at /usr/include/c++/7/condition_variable:99

No locals.

6 Smoke::Worker::update_loop (this=0x55fefa9a9c80) at /usr/src/debug/vulkan-1.0.61.1-1.fc27.x86_64/demos/smoke/Smoke.cpp:845

    lock = {_M_device = 0x55fefa9a9ca8, _M_owns = true}

7 0x00007f5daf6b7fef in std::execute_native_thread_routine (__p=0x55fefad6b160) at ../../../../../libstdc++-v3/src/c++11/thread.cc:83

    __t = std::unique_ptr<std::thread::_State> containing 0x55fefad6b160

8 0x00007f5daf989609 in start_thread (arg=0x7f5da4046700) at pthread_create.c:465

    pd = 0x7f5da4046700
    now = <optimized out>
    unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140040160438016, 7422794735773255177, 140040160436160, 140735641811632, 0, 0, -7370043531927779831, -7370053597494016503}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
    not_first_call = <optimized out>
    pagesize_m1 = <optimized out>
    sp = <optimized out>
    freesize = <optimized out>
    __PRETTY_FUNCTION__ = "start_thread"

9 0x00007f5daf11a17f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

No locals. From To Syms Read Shared Object Library 0x00007f5db05529f0 0x00007f5db0564b15 Yes /lib64/libxcb.so.1 0x00007f5db0314c30 0x00007f5db03351a9 Yes /lib64/libvulkan.so.1 0x00007f5db00fee50 0x00007f5db00ffb7e Yes /lib64/libdl.so.2 0x00007f5dafef81a0 0x00007f5dafefb6b6 Yes /lib64/librt.so.1 0x00007f5dafba8880 0x00007f5dafc51985 Yes /lib64/libm.so.6 0x00007f5daf987b00 0x00007f5daf996251 Yes /lib64/libpthread.so.0 0x00007f5daf688100 0x00007f5daf7387f8 Yes /lib64/libstdc++.so.6 0x00007f5daf3e7ac0 0x00007f5daf3f7de5 Yes /lib64/libgcc_s.so.1 0x00007f5daf020790 0x00007f5daf18f95c Yes /lib64/libc.so.6 0x00007f5daedfce20 0x00007f5daedfdb28 Yes /lib64/libXau.so.6 0x00007f5db076fd50 0x00007f5db078f300 Yes /lib64/ld-linux-x86-64.so.2 0x00007f5dab44e3d0 0x00007f5dab45b23f Yes /lib64/libz.so.1 0x00007f5da9cba7c0 0x00007f5da9cbef7a Yes /lib64/libffi.so.6 0x00007f5da6f8c690 0x00007f5da88dd11f No /lib64/libLLVM-4.0.so 0x00007f5da63ecf20 0x00007f5da63f9d58 No /lib64/../lib64/libtinfo.so.6 0x00007f5dab6a5b50 0x00007f5daba6b17c No /usr/lib64/libvulkan_intel.so 0x00007f5dab23edb0 0x00007f5dab2475f0 Yes /lib64/libdrm.so.2 0x00007f5dab039540 0x00007f5dab03963b Yes /lib64/libX11-xcb.so.1 0x00007f5daad18d50 0x00007f5daad9fb98 Yes /lib64/libX11.so.6 0x00007f5daaaf8cc0 0x00007f5daaaf94b3 Yes /lib64/libxcb-dri3.so.0 0x00007f5daa8f2bb0 0x00007f5daa8f51fa Yes /lib64/libxcb-xfixes.so.0 0x00007f5daa6edd40 0x00007f5daa6ee5c6 Yes /lib64/libxcb-present.so.0 0x00007f5daa4e8220 0x00007f5daa4ea2d2 Yes /lib64/libxcb-sync.so.1 0x00007f5daa2e38f0 0x00007f5daa2e3bbc Yes /lib64/libxshmfence.so.1 0x00007f5daa0d9380 0x00007f5daa0ddcff No /lib64/libwayland-client.so.0 0x00007f5da9ec7790 0x00007f5da9ecd9af No /lib64/libwayland-server.so.0 0x00007f5da991ffc0 0x00007f5da9a34813 No /usr/lib64/libvulkan_radeon.so 0x00007f5da6817f00 0x00007f5da6827151 No /lib64/libelf.so.1 0x00007f5da660cec0 0x00007f5da66116b7 Yes /lib64/libdrm_amdgpu.so.1 0x00007f5da61d7530 0x00007f5da61dc148 No /lib64/libnss_sss.so.2 $1 = 0x0 No symbol "glib_assert_msg" in current context. rax 0x0 0 rbx 0x55fefac5e488 94553617327240 rcx 0x7f5daf0376bb 140040344925883 rdx 0x0 0 rsi 0x7fff91eff690 140735641810576 rdi 0x2 2 rbp 0x7f5daf3e0800 0x7f5daf3e0800 rsp 0x7fff91eff690 0x7fff91eff690 r8 0x0 0 r9 0x7fff91eff690 140735641810576 r10 0x8 8 r11 0x246 582 r12 0x55fefac5cc60 94553617321056 r13 0x0 0 r14 0x7f5daf97ad70 140040354639216 r15 0x7fff91effbf0 140735641811952 rip 0x7f5daf0376bb 0x7f5daf0376bb <GI_raise+203> eflags 0x246 [ PF ZF IF ] cs 0x33 51 ss 0x2b 43 ds 0x0 0 es 0x0 0 fs 0x0 0 gs 0x0 0 st0 0 (raw 0x00000000000000000000) st1 0 (raw 0x00000000000000000000) st2 0 (raw 0x00000000000000000000) st3 0 (raw 0x00000000000000000000) st4 0 (raw 0x00000000000000000000) st5 0 (raw 0x00000000000000000000) st6 1 (raw 0x3fff8000000000000000) st7 127 (raw 0x4005fe00000000000000) fctrl 0x37f 895 fstat 0x0 0 ftag 0xffff 65535 fiseg 0x0 0 fioff 0x0 0 foseg 0x0 0 fooff 0x0 0 fop 0x0 0 xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff} xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}, v8_int16 = {0x0, 0x0, 0xff00, 0xffff, 0xff00, 0xffff, 0xffff, 0xffff}, v4_int32 = {0x0, 0xffffff00, 0xffffff00, 0xffffffff}, v2_int64 = {0xffffff0000000000, 0xffffffffffffff00}, uint128 = 0xffffffffffffff00ffffff0000000000} xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, 0x0, 0xff, 0x0, 0xff, 0xff, 0xff}, v8_int16 = {0x0, 0x0, 0x0, 0xffff, 0xff, 0xff00, 0xff00, 0xffff}, v4_int32 = {0x0, 0xffff0000, 0xff0000ff, 0xffffff00}, v2_int64 = {0xffff000000000000, 0xffffff00ff0000ff}, uint128 = 0xffffff00ff0000ffffff000000000000} xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 12 times>, 0x6, 0x0, 0xe0, 0x2}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x2e0}, v4_int32 = {0x0, 0x0, 0x0, 0x2e00006}, v2_int64 = {0x0, 0x2e0000600000000}, uint128 = 0x02e00006000000000000000000000000} xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x5, 0x0, 0xe0, 0x2, 0xea, 0x17, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x5, 0x2e0, 0x17ea, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x2e00005, 0x17ea, 0x0, 0x0}, v2_int64 = {0x17ea02e00005, 0x0}, uint128 = 0x0000000000000000000017ea02e00005} xmm8 {v4_float = {0x32, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x33, 0xcb, 0x48, 0x42, 0x0 <repeats 12 times>}, v8_int16 = {0xcb33, 0x4248, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x4248cb33, 0x0, 0x0, 0x0}, v2_int64 = {0x4248cb33, 0x0}, uint128 = 0x0000000000000000000000004248cb33} xmm9 {v4_float = {0x7fff, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0xfe, 0xff, 0x46, 0x0 <repeats 12 times>}, v8_int16 = {0xfe00, 0x46ff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x46fffe00, 0x0, 0x0, 0x0}, v2_int64 = {0x46fffe00, 0x0}, uint128 = 0x00000000000000000000000046fffe00} xmm10 {v4_float = {0x800000, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x4b, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x4b00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x4b000000, 0x0, 0x0, 0x0}, v2_int64 = {0x4b000000, 0x0}, uint128 = 0x0000000000000000000000004b000000} xmm11 {v4_float = {0x1, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x80, 0x3f, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x3f80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x3f800000, 0x0, 0x0, 0x0}, v2_int64 = {0x3f800000, 0x0}, uint128 = 0x0000000000000000000000003f800000} xmm12 {v4_float = {0x1, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x80, 0x3f, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x3f80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x3f800000, 0x0, 0x0, 0x0}, v2_int64 = {0x3f800000, 0x0}, uint128 = 0x0000000000000000000000003f800000} xmm13 {v4_float = {0x280, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x20, 0x44, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x4420, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x44200000, 0x0, 0x0, 0x0}, v2_int64 = {0x44200000, 0x0}, uint128 = 0x00000000000000000000000044200000} xmm14 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x00000000000000000000000000000000} xmm15 {v4_float = {0x400, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x80, 0x44, 0x0 <repeats 12 times>}, v8_int16 = {0x0, 0x4480, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x44800000, 0x0, 0x0, 0x0}, v2_int64 = {0x44800000, 0x0}, uint128 = 0x00000000000000000000000044800000} mxcsr 0x1fa0 [ PE IM DM ZM OM UM PM ] Dump of assembler code for function GI_raise: 0x00007f5daf0375f0 <+0>: sub $0x118,%rsp 0x00007f5daf0375f7 <+7>: mov %edi,%r8d 0x00007f5daf0375fa <+10>: mov $0x8,%r10d 0x00007f5daf037600 <+16>: movdqa 0x179758(%rip),%xmm0 # 0x7f5daf1b0d60 0x00007f5daf037608 <+24>: mov %rsp,%r9 0x00007f5daf03760b <+27>: mov %fs:0x28,%rax 0x00007f5daf037614 <+36>: mov %rax,0x108(%rsp) 0x00007f5daf03761c <+44>: xor %eax,%eax 0x00007f5daf03761e <+46>: movaps %xmm0,0x80(%rsp) 0x00007f5daf037626 <+54>: pcmpeqd %xmm0,%xmm0 0x00007f5daf03762a <+58>: lea 0x80(%rsp),%rsi 0x00007f5daf037632 <+66>: mov %r9,%rdx 0x00007f5daf037635 <+69>: xor %edi,%edi 0x00007f5daf037637 <+71>: mov $0xe,%eax 0x00007f5daf03763c <+76>: movaps %xmm0,0x90(%rsp) 0x00007f5daf037644 <+84>: movaps %xmm0,0xa0(%rsp) 0x00007f5daf03764c <+92>: movaps %xmm0,0xb0(%rsp) 0x00007f5daf037654 <+100>: movaps %xmm0,0xc0(%rsp) 0x00007f5daf03765c <+108>: movaps %xmm0,0xd0(%rsp) 0x00007f5daf037664 <+116>: movaps %xmm0,0xe0(%rsp) 0x00007f5daf03766c <+124>: movaps %xmm0,0xf0(%rsp) 0x00007f5daf037674 <+132>: syscall 0x00007f5daf037676 <+134>: mov $0x27,%edi 0x00007f5daf03767b <+139>: mov %edi,%eax 0x00007f5daf03767d <+141>: syscall 0x00007f5daf03767f <+143>: mov %rax,%rdi 0x00007f5daf037682 <+146>: mov $0xba,%eax 0x00007f5daf037687 <+151>: syscall 0x00007f5daf037689 <+153>: movslq %eax,%rsi 0x00007f5daf03768c <+156>: movslq %edi,%rdi 0x00007f5daf03768f <+159>: movslq %r8d,%rdx 0x00007f5daf037692 <+162>: mov $0xea,%eax 0x00007f5daf037697 <+167>: syscall 0x00007f5daf037699 <+169>: cmp $0xfffffffffffff000,%rax 0x00007f5daf03769f <+175>: ja 0x7f5daf0376e0 <__GI_raise+240> 0x00007f5daf0376a1 <+177>: mov %eax,%r8d 0x00007f5daf0376a4 <+180>: mov $0x8,%r10d 0x00007f5daf0376aa <+186>: xor %edx,%edx 0x00007f5daf0376ac <+188>: mov %r9,%rsi 0x00007f5daf0376af <+191>: mov $0x2,%edi 0x00007f5daf0376b4 <+196>: mov $0xe,%eax 0x00007f5daf0376b9 <+201>: syscall => 0x00007f5daf0376bb <+203>: mov 0x108(%rsp),%rcx 0x00007f5daf0376c3 <+211>: xor %fs:0x28,%rcx 0x00007f5daf0376cc <+220>: mov %r8d,%eax 0x00007f5daf0376cf <+223>: jne 0x7f5daf0376f4 <GI_raise+260> 0x00007f5daf0376d1 <+225>: add $0x118,%rsp 0x00007f5daf0376d8 <+232>: retq
0x00007f5daf0376d9 <+233>: nopl 0x0(%rax) 0x00007f5daf0376e0 <+240>: mov 0x3a7799(%rip),%rdx # 0x7f5daf3dee80 0x00007f5daf0376e7 <+247>: neg %eax 0x00007f5daf0376e9 <+249>: mov $0xffffffff,%r8d 0x00007f5daf0376ef <+255>: mov %eax,%fs:(%rdx) 0x00007f5daf0376f2 <+258>: jmp 0x7f5daf0376a4 <__GI_raise+180> 0x00007f5daf0376f4 <+260>: callq 0x7f5daf12d280 <__stack_chk_fail> End of assembler dump.`

The system was Fedora 27 running on Gnome Wayland session with an AMD Radeon RX560.

leigh123linux commented 7 years ago

FTR I can reproduce the crash on non-wayland using nvidia driver

terminate called after throwing an instance of 'std::runtime_error'
  what():  VkResult -1000001004 returned

Thread 1 "vulkan-smoketes" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51  }
(gdb) bt full
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
        set = {__val = {0, 140737334415281, 140733193388032, 140737488343440, 3, 0, 7959393510860551283, 140737337504488, 93824998499008, 93824998944896, 25, 93824994565200, 140737331607232, 140737351935235, 
            5, 0}}
        pid = <optimized out>
        tid = <optimized out>
#1  0x00007ffff66ef4a0 in __GI_abort () at abort.c:89
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0}, sa_mask = {__val = {140737328140845, 140737331606784, 3432, 1, 140737331606915, 140737331590144, 140737328148385, 140737353828120, 
              140737328673325, 1, 10, 93824998944784, 10, 140737353828160, 140737328149587, 93824998579960}}, sa_flags = -153952944, sa_restorer = 0x555555b61ef8}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00007ffff6d31025 in __gnu_cxx::__verbose_terminate_handler () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
        terminating = true
        t = <optimized out>
#3  0x00007ffff6d2ec16 in __cxxabiv1::__terminate (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:47
No locals.
#4  0x00007ffff6d2ec61 in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:57
No locals.
#5  0x00007ffff6d2eea4 in __cxxabiv1::__cxa_throw (obj=obj@entry=0x555555bbb080, tinfo=tinfo@entry=0x55555577a9e8 <typeinfo for std::runtime_error>, dest=0x7ffff6d444f0 <std::runtime_error::~runtime_error()>)
    at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:93
        globals = <optimized out>
        header = 0x555555bbb000
#6  0x0000555555569844 in vk::assert_success (res=VK_ERROR_OUT_OF_DATE_KHR) at /usr/src/debug/Vulkan-LoaderAndValidationLayers-sdk-1.0.61.1/demos/smoke/Helpers.h:33
        ss = {<std::basic_iostream<char, std::char_traits<char> >> = {<std::basic_istream<char, std::char_traits<char> >> = {<std::basic_ios<char, std::char_traits<char> >> = {<std::ios_base> = {
                  _vptr.ios_base = 0x55555577a948 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+104>, static boolalpha = std::_S_boolalpha, 
                  static dec = std::_S_dec, static fixed = std::_S_fixed, static hex = std::_S_hex, static internal = std::_S_internal, static left = std::_S_left, static oct = std::_S_oct, 
                  static right = std::_S_right, static scientific = std::_S_scientific, static showbase = std::_S_showbase, static showpoint = std::_S_showpoint, static showpos = std::_S_showpos, 
                  static skipws = std::_S_skipws, static unitbuf = std::_S_unitbuf, static uppercase = std::_S_uppercase, static adjustfield = std::_S_adjustfield, static basefield = std::_S_basefield, 
                  static floatfield = std::_S_floatfield, static badbit = std::_S_badbit, static eofbit = std::_S_eofbit, static failbit = std::_S_failbit, static goodbit = std::_S_goodbit, 
                  static app = std::_S_app, static ate = std::_S_ate, static binary = std::_S_bin, static in = std::_S_in, static out = std::_S_out, static trunc = std::_S_trunc, static beg = std::_S_beg, 
                  static cur = std::_S_cur, static end = std::_S_end, _M_precision = 6, _M_width = 0, _M_flags = 4098, _M_exception = std::_S_goodbit, _M_streambuf_state = std::_S_goodbit, _M_callbacks = 0x0, 
                  _M_word_zero = {_M_pword = 0x0, _M_iword = 0}, _M_local_word = {{_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, 
                    {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}}, _M_word_size = 8, _M_word = 0x7fffffffd900, _M_ios_locale = {
                    static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, 
                    _M_impl = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                    static _S_global = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7ffff7019fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 
    0x7ffff701b760 <std::locale::_S_twinned_facets>}}, _M_tie = 0x0, _M_fill = 32 ' ', _M_fill_init = true, _M_streambuf = 0x7fffffffd858, _M_ctype = 0x7ffff7027080 <(anonymous namespace)::ctype_c>, 
                _M_num_put = 0x7ffff7027010 <(anonymous namespace)::num_put_c>, _M_num_get = 0x7ffff7027020 <(anonymous namespace)::num_get_c>}, 
              _vptr.basic_istream = 0x55555577a8f8 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+24>, 
              _M_gcount = 0}, <std::basic_ostream<char, std::char_traits<char> >> = {
              _vptr.basic_ostream = 0x55555577a920 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+64>}, <No data fields>}, 
          _M_stringbuf = {<std::basic_streambuf<char, std::char_traits<char> >> = {
              _vptr.basic_streambuf = 0x55555577a968 <vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >+16>, 
              _M_in_beg = 0x555555bbadf0 "VkResult -1000001004 returned", _M_in_cur = 0x555555bbadf0 "VkResult -1000001004 returned", _M_in_end = 0x555555bbae00 "1004 returned", 
              _M_out_beg = 0x555555bbadf0 "VkResult -1000001004 returned", _M_out_cur = 0x555555bbae0d "", _M_out_end = 0x555555bbaff0 "", _M_buf_locale = {static none = 0, static ctype = 1, 
                static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                static _S_classic = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                static _S_categories = 0x7ffff7019fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7ffff701b760 <std::locale::_S_twinned_facets>}}, _M_mode = 24, 
            _M_string = "VkResult -100000"}}
        ss = {<std::basic_iostream<char, std::char_traits<char> >> = {<std::basic_istream<char, std::char_traits<char> >> = {<std::basic_ios<char, std::char_traits<char> >> = {<std::ios_base> = {
                  _vptr.ios_base = 0x55555577a948 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+104>, static boolalpha = std::_S_boolalpha, 
                  static dec = std::_S_dec, static fixed = std::_S_fixed, static hex = std::_S_hex, static internal = std::_S_internal, static left = std::_S_left, static oct = std::_S_oct, 
                  static right = std::_S_right, static scientific = std::_S_scientific, static showbase = std::_S_showbase, static showpoint = std::_S_showpoint, static showpos = std::_S_showpos, 
                  static skipws = std::_S_skipws, static unitbuf = std::_S_unitbuf, static uppercase = std::_S_uppercase, static adjustfield = std::_S_adjustfield, static basefield = std::_S_basefield, 
                  static floatfield = std::_S_floatfield, static badbit = std::_S_badbit, static eofbit = std::_S_eofbit, static failbit = std::_S_failbit, static goodbit = std::_S_goodbit, 
---Type <return> to continue, or q <return> to quit---
                  static app = std::_S_app, static ate = std::_S_ate, static binary = std::_S_bin, static in = std::_S_in, static out = std::_S_out, static trunc = std::_S_trunc, static beg = std::_S_beg, 
                  static cur = std::_S_cur, static end = std::_S_end, _M_precision = 6, _M_width = 0, _M_flags = 4098, _M_exception = std::_S_goodbit, _M_streambuf_state = std::_S_goodbit, _M_callbacks = 0x0, 
                  _M_word_zero = {_M_pword = 0x0, _M_iword = 0}, _M_local_word = {{_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, 
                    {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}, {_M_pword = 0x0, _M_iword = 0}}, _M_word_size = 8, _M_word = 0x7fffffffd900, _M_ios_locale = {
                    static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, 
                    _M_impl = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_classic = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                    static _S_global = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x7ffff7019fc0 <__gnu_cxx::category_names>, static _S_once = 2, 
                    static _S_twinned_facets = 0x7ffff701b760 <std::locale::_S_twinned_facets>}}, _M_tie = 0x0, _M_fill = 32 ' ', _M_fill_init = true, _M_streambuf = 0x7fffffffd858, 
                _M_ctype = 0x7ffff7027080 <(anonymous namespace)::ctype_c>, _M_num_put = 0x7ffff7027010 <(anonymous namespace)::num_put_c>, _M_num_get = 0x7ffff7027020 <(anonymous namespace)::num_get_c>}, 
              _vptr.basic_istream = 0x55555577a8f8 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+24>, 
              _M_gcount = 0}, <std::basic_ostream<char, std::char_traits<char> >> = {
              _vptr.basic_ostream = 0x55555577a920 <vtable for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >+64>}, <No data fields>}, 
          _M_stringbuf = {<std::basic_streambuf<char, std::char_traits<char> >> = {
              _vptr.basic_streambuf = 0x55555577a968 <vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >+16>, 
              _M_in_beg = 0x555555bbadf0 "VkResult -1000001004 returned", _M_in_cur = 0x555555bbadf0 "VkResult -1000001004 returned", _M_in_end = 0x555555bbae00 "1004 returned", 
              _M_out_beg = 0x555555bbadf0 "VkResult -1000001004 returned", _M_out_cur = 0x555555bbae0d "", _M_out_end = 0x555555bbaff0 "", _M_buf_locale = {static none = 0, static ctype = 1, 
                static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                static _S_classic = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x7ffff7027660 <(anonymous namespace)::c_locale_impl>, 
                static _S_categories = 0x7ffff7019fc0 <__gnu_cxx::category_names>, static _S_once = 2, static _S_twinned_facets = 0x7ffff701b760 <std::locale::_S_twinned_facets>}}, _M_mode = 24, 
            _M_string = "VkResult -100000"}}
#7  Shell::present_back_buffer (this=this@entry=0x7fffffffdcb0) at /usr/src/debug/Vulkan-LoaderAndValidationLayers-sdk-1.0.61.1/demos/smoke/Shell.cpp:478
        buf = @0x7fffffffddb8: {image_index = 1, acquire_semaphore = 0x555555b226f0, render_semaphore = 0x555555b253f0, present_fence = 0x555555b254d0}
        present_info = {sType = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR, pNext = 0x0, waitSemaphoreCount = 1, pWaitSemaphores = 0x7fffffffddc8, swapchainCount = 1, pSwapchains = 0x7fffffffdda8, 
          pImageIndices = 0x7fffffffddb8, pResults = 0x0}
#8  0x000055555556bed0 in ShellXcb::loop_poll (this=0x7fffffffdcb0) at /usr/src/debug/Vulkan-LoaderAndValidationLayers-sdk-1.0.61.1/demos/smoke/ShellXcb.cpp:256
        timer = {start_ = {tv_sec = 239127, tv_nsec = 292425616}}
        current_time = 2.3924184099999999
        profile_start_time = 1.42e-07
        profile_present_count = 145
#9  0x000055555556c6bd in ShellXcb::run (this=0x7fffffffdcb0) at /usr/src/debug/Vulkan-LoaderAndValidationLayers-sdk-1.0.61.1/demos/smoke/ShellXcb.cpp:284
No locals.
#10 0x000055555555841d in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Vulkan-LoaderAndValidationLayers-sdk-1.0.61.1/demos/smoke/Main.cpp:40
        shell = {<Shell> = {_vptr.Shell = 0x55555577aa60 <vtable for ShellXcb+16>, game_ = @0x55555578dc80, settings_ = @0x55555578dc98, instance_layers_ = std::vector of length 0, capacity 0, 
            instance_extensions_ = std::vector of length 2, capacity 2 = {0x555555576eb8 "VK_KHR_surface", 0x555555577030 "VK_KHR_xcb_surface"}, device_extensions_ = std::vector of length 1, capacity 1 = {
              0x555555576ec7 "VK_KHR_swapchain"}, ctx_ = {instance = 0x5555557f7c00, debug_report = 0x0, physical_dev = 0x55555592f0f0, game_queue_family = 0, present_queue_family = 0, dev = 0x555555a15430, 
              game_queue = 0x555555ad60e0, present_queue = 0x555555ad60e0, back_buffers = std::queue wrapping: std::deque with 1 element = {{image_index = 0, acquire_semaphore = 0x555555b22500, 
                  render_semaphore = 0x555555b22580, present_fence = 0x555555b22600}}, surface = 0x555555b25620, format = {format = VK_FORMAT_B8G8R8A8_UNORM, colorSpace = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR}, 
              swapchain = 0x555555b658b0, extent = {width = 1280, height = 1024}, acquired_back_buffer = {image_index = 1, acquire_semaphore = 0x555555b226f0, render_semaphore = 0x555555b253f0, 
                present_fence = 0x555555b254d0}}, game_tick_ = 0.0333333351, game_time_ = 0.0079158619}, c_ = 0x5555557900c0, scr_ = 0x5555557953e0, win_ = 81788928, wm_protocols_ = 310, 
          wm_delete_window_ = 308, lib_handle_ = 0x7ffff7ff5b40, quit_ = false}
damienleone commented 7 years ago

The error returned is -1000001004, which is VK_ERROR_OUT_OF_DATE_KHR.

Looking at the source for smoketest shows: vk::assertsuccess(vk::QueuePresentKHR(ctx.present_queue, &present_info));

The application does not handle VK_ERROR_OUT_OF_DATE_KHR, which is going to be returned whenever the app is resized or put fullscreen. Support needs to be added (cube and cubepp do support it).

mark-lunarg commented 7 years ago

@luyatshimbalanga, thanks for the report, and thanks to @leigh123linux for the clarification and @damienleone for the answer! The short answer here is that this is basically just a turn-on test for validation layer development -- we don't spend resources on it other than to keep it running. That said, if anybody is interested (or motivated) enough I'll be more than happy to take a pull request!