Sway fails to launch with vulkan renderer on Intel 770
Sway (7ab8cb2ee6f1) fails to launch with the vulkan renderer on intel. I bisected this to e07c77f8, dumps below are from master (3dc646ea). Segfault happens with or without the validation layers, but it is different. Both are attached.
$ pacman -Q mesa vulkan-intel vulkan-validation-layers
mesa 23.1.1-1
vulkan-intel 23.1.1-1
vulkan-validation-layers 1.3.243.0-1
$ echo $(vulkaninfo | grep -i devicename)
deviceName = Intel(R) UHD Graphics 770 (ADL-S GT1)
$ VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation WLR_RENDERER=vulkan ./build/sway/sway
MESA-INTEL: warning: ../mesa-23.1.1/src/intel/vulkan/anv_formats.c:729: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../mesa-23.1.1/src/intel/vulkan/anv_formats.c:760: FINISHME: support more multi-planar formats with DRM modifiers
00:00:00.040 [wlr] [types/wlr_drm_lease_v1.c:715] No DRM backend supplied, failed to create wlr_drm_lease_v1_manager
2023-06-05 22:19:01 - [swaybg/main.c:582] wl_display_roundtrip failed
zsh: segmentation fault (core dumped) VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation WLR_RENDERER=vulkan
bt full
#0 0x00007ffff46e1a8f in add_surface_reloc () at ../mesa-23.1.1/src/intel/vulkan/genX_cmd_buffer.c:283
#1 emit_binding_table () at ../mesa-23.1.1/src/intel/vulkan/genX_cmd_buffer.c:2105
#2 0x00007ffff476705b in flush_descriptor_sets () at ../mesa-23.1.1/src/intel/vulkan/genX_cmd_buffer.c:2367
#3 0x00007ffff476ecdc in gfx12_cmd_buffer_flush_gfx_state () at ../mesa-23.1.1/src/intel/vulkan/genX_cmd_buffer.c:3546
#4 gfx12_CmdDraw () at ../mesa-23.1.1/src/intel/vulkan/genX_cmd_buffer.c:4220
#5 0x00007ffff7eb6c22 in render_pass_submit (wlr_pass=0x555555949030) at ../subprojects/wlroots/render/vulkan/pass.c:108
pipe = 0x555555934b50
final_matrix = {0, 0, -1, 0, 0, -1, 0, 0, 0}
vert_pcr_data = {
mat4 = {{0, 0, 0, -1}, {0, 0, 0, -1}, {0, 0, 1, 0}, {0, 0, 0, 1}},
uv_off = {0, 0},
uv_size = {1, 1}
}
pass = 0x555555949030
renderer = 0x555555730b10
render_cb = 0x555555730c98
render_buffer = 0x55555592f450
stage_cb = 0x555555730d18
render_wait = 0x0
barrier_count = 32767
acquire_barriers = 0x555555949030
release_barriers = 0x7fffffffd080
texture = 0x7fff00000000
tmp_tex = 0x5555558efcf0
idx = 1
render_wait_len = 1435434208
src_layout = 4294955136
stage_timeline_point = 140737488343168
stage_cb_info = {
sType = 1431831515,
pNext = 0x55555593d278,
commandBuffer = 0x7fffffffd120,
deviceMask = 4294955920
}
stage_signal = {
sType = 4294955248,
pNext = 0x5555000004f1,
semaphore = 0x55555594e880,
value = 93824996331712,
stageMask = 93824996403888,
deviceIndex = 1435750728
}
stage_submit = {
sType = 1435750728,
pNext = 0xfffffffffffffde8,
flags = 0,
waitSemaphoreInfoCount = 0,
pWaitSemaphoreInfos = 0x7fffffffd390,
commandBufferInfoCount = 1435821760,
pCommandBufferInfos = 0x7ffff77f7110 <handle_noop>,
signalSemaphoreInfoCount = 4294956616,
pSignalSemaphoreInfos = 0x7ffff7612cb3 <__GI___libc_free+115>
}
stage_wait = {
sType = 1435821760,
pNext = 0x7ffff7ef1fbd <wlr_output_add_software_cursors_to_render_pass+724>,
semaphore = 0x5555555e7b98 <__PRETTY_FUNCTION__.0.lto_priv.12>,
value = 140737488343696,
stageMask = 93824996380720,
deviceIndex = 1435821760
}
render_timeline_point = 140737488343696
render_signal_len = 4294955152
render_signal = {{
sType = VK_STRUCTURE_TYPE_APPLICATION_INFO,
pNext = 0xbf800000,
semaphore = 0xbf80000000000000,
value = 0,
stageMask = 0,
deviceIndex = 4294955728
}, {
sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO,
pNext = 0x0,
semaphore = 0x2b,
value = 93824996402880,
stageMask = 93824996331712,
deviceIndex = 4294955664
}}
render_cb_info = {
sType = 1397,
pNext = 0x7ffff77f7110 <handle_noop>,
commandBuffer = 0x7fffffffd648,
deviceMask = 4152772358
}
render_submit = {
sType = VK_STRUCTURE_TYPE_APPLICATION_INFO,
pNext = 0x575000004f1,
flags = 0,
waitSemaphoreInfoCount = 0,
pWaitSemaphoreInfos = 0x5555555837a6 <render_surface_iterator>,
commandBufferInfoCount = 1432415456,
pCommandBufferInfos = 0x55555593d0c0,
signalSemaphoreInfoCount = 1435750736,
pSignalSemaphoreInfos = 0x88cc5804dea50500
}
submit_info = {{
sType = VK_STRUCTURE_TYPE_APPLICATION_INFO,
pNext = 0xbf80000000000000,
flags = 0,
waitSemaphoreInfoCount = 0,
pWaitSemaphoreInfos = 0xbf80000000000000,
commandBufferInfoCount = 0,
pCommandBufferInfos = 0x3f800000,
signalSemaphoreInfoCount = 0,
pSignalSemaphoreInfos = 0x3f80000000000000
}, {
sType = VK_STRUCTURE_TYPE_APPLICATION_INFO,
pNext = 0x3f8000003f800000,
flags = 1435751032,
waitSemaphoreInfoCount = 21845,
pWaitSemaphoreInfos = 0xfffffffffffffde8,
commandBufferInfoCount = 0,
pCommandBufferInfos = 0x7fffffffd390,
signalSemaphoreInfoCount = 1435821760,
pSignalSemaphoreInfos = 0x7ffff77f7110 <handle_noop>
}}
res = 21845
stage_buf = 0x7ffff7859960 <pixman_region_intersect_o>
stage_buf_tmp = 0x1
__PRETTY_FUNCTION__ = "render_pass_submit"
#6 0x00007ffff7eabfd1 in wlr_render_pass_submit (render_pass=0x555555949030) at ../subprojects/wlroots/render/pass.c:23
#7 0x0000555555581b15 in output_repaint_timer_handler (data=0x55555593d0c0) at ../sway/desktop/output.c:649
output = 0x55555593d0c0
wlr_output = 0x55555594e6c0
workspace = 0x55555594eab0
fullscreen_con = 0x0
frame_damage = {
extents = {
x1 = 0,
y1 = 0,
x2 = 1265,
y2 = 1397
},
data = 0x0
}
buffer_age = 2
buffer = 0x55555599d970
render_pass = 0x555555949030
damage = {
extents = {
x1 = 0,
y1 = 0,
x2 = 1280,
y2 = 1397
},
data = 0x5555558efcc0
}
ctx = {
output = 0x55555593d0c0,
renderer = 0x555555730b10,
output_damage = 0x7fffffffd290,
pass = 0x555555949030
}
now = {
tv_sec = 39151,
tv_nsec = 785698931
}
last_scanned_out = false
#8 0x0000555555581db5 in handle_frame (listener=0x55555593d278, user_data=0x55555594e6c0) at ../sway/desktop/output.c:728
output = 0x55555593d0c0
msec_until_refresh = 0
delay = 0
data = {
when = {
tv_sec = 140737488344640,
tv_nsec = 140737341695426
},
msec_until_refresh = -10736
}
#9 0x00007ffff77fa01e in wl_signal_emit_mutable (signal=<optimized out>, data=0x55555594e6c0) at ../wayland-1.22.0/src/wayland-server.c:2241
pos = 0x55555593d278
l = 0x55555593d278
cursor = {
link = {
prev = 0x55555593d278,
next = 0x7fffffffd390
},
notify = 0x7ffff77f7110 <handle_noop>
}
end = {
link = {
prev = 0x7fffffffd3b0,
next = 0x55555594e810
},
notify = 0x7ffff77f7110 <handle_noop>
}
#10 0x00007ffff7ef5bda in wlr_output_send_frame (output=0x55555594e6c0) at ../subprojects/wlroots/types/output/output.c:881
#11 0x00007ffff7ee6b7b in surface_frame_callback (data=0x55555594e6c0, cb=0x555555947600, time=39151785) at ../subprojects/wlroots/backend/wayland/output.c:56
output = 0x55555594e6c0
__PRETTY_FUNCTION__ = "surface_frame_callback"
#12 0x00007ffff6dc34f6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#13 0x00007ffff6dbff5e in ffi_call_int (cif=cif@entry=0x7fffffffd610, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0) at ../src/x86/ffi64.c:673
classes = {X86_64_INTEGERSI_CLASS, 32767, 4141606588, 32767}
stack = <optimized out>
argp = 0x7fffffffd460 ""
arg_types = <optimized out>
gprcount = 3
ssecount = <optimized out>
ngpr = 1
nsse = 0
i = <optimized out>
avn = <optimized out>
flags = <optimized out>
reg_args = <optimized out>
#14 0x00007ffff6dc2b73 in ffi_call (cif=cif@entry=0x7fffffffd610, fn=<optimized out>, rvalue=rvalue@entry=0x0, avalue=avalue@entry=0x7fffffffd6e0) at ../src/x86/ffi64.c:710
arg_types = 0x7fffffffd630
i = <optimized out>
nargs = 3
max_reg_struct_size = <optimized out>
#15 0x00007ffff7421645 in wl_closure_invoke (closure=closure@entry=0x555555b97680, target=<optimized out>, target@entry=0x555555947600, opcode=opcode@entry=0, data=<optimized out>, flags=1) at ../wayland-1.22.0/src/connection.c:1025
count = <optimized out>
cif = {
abi = FFI_UNIX64,
nargs = 3,
arg_types = 0x7fffffffd630,
rtype = 0x7ffff6dc41a0 <ffi_type_void>,
bytes = 0,
flags = 0
}
ffi_types = {0x7ffff6dc42a0 <ffi_type_pointer>, 0x7ffff6dc42a0 <ffi_type_pointer>, 0x7ffff6dc4240 <ffi_type_uint32>, 0x555555ba7ed8, 0x0, 0x8, 0x555555ba7ed0, 0x7ffff74227c0 <wl_display_read_events+192>, 0x449e2000, 0x55555560f310, 0x55550000000c, 0x55555560f428, 0x0, 0x7fffffffd760, 0x7ffff77ff508, 0x55550000000c, 0x55550000000c, 0x55550000000c, 0x0, 0xc, 0x55550000000c, 0x0}
ffi_args = {0x7fffffffd5f0, 0x7fffffffd5f8, 0x555555b97698, 0x0, 0x75, 0x0, 0x7fffffffd740, 0x2, 0x7fffffffd760, 0x0, 0x7fff40000000, 0x1, 0x55555561040c, 0xa4, 0x55555560f4b0, 0xf5c, 0xc000100000001, 0x8, 0x75, 0x88cc5804dea50500, 0x7fffffffd7b0, 0x7ffff761022b <_int_free+1755>}
implementation = <optimized out>
#16 0x00007ffff7421e73 in dispatch_event (display=display@entry=0x55555560f310, queue=0x55555560f400) at ../wayland-1.22.0/src/wayland-client.c:1631
closure = 0x555555b97680
proxy = 0x555555947600
opcode = 0
proxy_destroyed = <optimized out>
#17 0x00007ffff742213c in dispatch_queue (queue=0x55555560f400, display=0x55555560f310) at ../wayland-1.22.0/src/wayland-client.c:1777
count = 2
ret = <optimized out>
#18 wl_display_dispatch_queue_pending (display=0x55555560f310, queue=0x55555560f400) at ../wayland-1.22.0/src/wayland-client.c:2019
ret = <optimized out>
#19 0x00007ffff7ee4156 in dispatch_events (fd=6, mask=1, data=0x55555560f1a0) at ../subprojects/wlroots/backend/wayland/backend.c:67
wl = 0x55555560f1a0
count = 0
#20 0x00007ffff77fbae2 in wl_event_loop_dispatch (loop=0x55555560f020, timeout=timeout@entry=-1) at ../wayland-1.22.0/src/event-loop.c:1027
ep = {{
events = 1,
data = {
ptr = 0x555555616470,
fd = 1432446064,
u32 = 1432446064,
u64 = 93824993027184
}
}, {
events = 4,
data = {
ptr = 0x555555ba7fb0,
fd = 1438285744,
u32 = 1438285744,
u64 = 93824998866864
}
}, {
events = 3735356672,
data = {
ptr = 0x555588cc5804,
fd = -1999874044,
u32 = 2295093252,
u64 = 93825855674372
}
}, {
events = 0,
data = {
ptr = 0x34,
fd = 52,
u32 = 52,
u64 = 52
}
}, {
events = 1438942848,
data = {
ptr = 0xffffd97000005555,
fd = 21845,
u32 = 21845,
u64 = 18446701673792427349
}
}, {
events = 32767,
data = {
ptr = 0x555555c4b698,
fd = 1438955160,
u32 = 1438955160,
u64 = 93824999536280
}
}, {
events = 1438946952,
data = {
ptr = 0xffffd9b000005555,
fd = 21845,
u32 = 21845,
u64 = 18446701948670334293
}
}, {
events = 32767,
data = {
ptr = 0x7ffff77f8500 <wl_connection_flush+304>,
fd = -142637824,
u32 = 4152329472,
u64 = 140737345717504
}
}, {
events = 0,
data = {
ptr = 0x3400000000,
fd = 0,
u32 = 0,
u64 = 223338299392
}
}, {
events = 0,
data = {
ptr = 0x7fffffffd9d0,
fd = -9776,
u32 = 4294957520,
u64 = 140737488345552
}
}, {
events = 0,
data = {
ptr = 0xa90,
fd = 2704,
u32 = 2704,
u64 = 2704
}
}, {
events = 0,
data = {
ptr = 0x0,
fd = 0,
u32 = 0,
u64 = 0
}
}, {
events = 0,
data = {
ptr = 0x0,
fd = 0,
u32 = 0,
u64 = 0
}
}, {
events = 0,
data = {
ptr = 0x0,
fd = 0,
u32 = 0,
u64 = 0
}
}, {
events = 0,
data = {
ptr = 0x0,
fd = 0,
u32 = 0,
u64 = 0
}
}, {
events = 0,
data = {
ptr = 0x0,
fd = 0,
u32 = 0,
u64 = 0
}
}, {
events = 1438949656,
data = {
ptr = 0x3400005555,
fd = 21845,
u32 = 21845,
u64 = 223338321237
}
}, {
events = 0,
data = {
ptr = 0x5555555f9d78,
fd = 1432329592,
u32 = 1432329592,
u64 = 93824992910712
}
}, {
events = 3735356672,
data = {
ptr = 0xffffdac088cc5804,
fd = -1999874044,
u32 = 2295093252,
u64 = 18446703119196510212
}
}, {
events = 32767,
data = {
ptr = 0x5555555d848f <_sway_log+181>,
fd = 1432192143,
u32 = 1432192143,
u64 = 93824992773263
}
}, {
events = 1432224584,
data = {
ptr = 0x5555,
fd = 21845,
u32 = 21845,
u64 = 21845
}
}, {
events = 2,
data = {
ptr = 0x3000000010,
fd = 16,
u32 = 16,
u64 = 206158430224
}
}, {
events = 4294957776,
data = {
ptr = 0xffffda1000007fff,
fd = 32767,
u32 = 32767,
u64 = 18446702360987205631
}
}, {
events = 32767,
data = {
ptr = 0x88cc5804dea50500,
fd = -559610624,
u32 = 3735356672,
u64 = 9857350462345643264
}
}, {
events = 1435084960,
data = {
ptr = 0x558cefe000005555,
fd = 21845,
u32 = 21845,
u64 = 6164565735315101013
}
}, {
events = 21845,
data = {
ptr = 0x5555555dc8d2,
fd = 1432209618,
u32 = 1432209618,
u64 = 93824992790738
}
}, {
events = 332,
data = {
ptr = 0x5588220000000000,
fd = 0,
u32 = 0,
u64 = 6163213473451868160
}
}, {
events = 21845,
data = {
ptr = 0x1,
fd = 1,
u32 = 1,
u64 = 1
}
}, {
events = 2,
data = {
ptr = 0xdea5050000000000,
fd = 0,
u32 = 0,
u64 = 16043234745135398912
}
}, {
events = 2295093252,
data = {
ptr = 0x7fffffffdc58,
fd = -9128,
u32 = 4294958168,
u64 = 140737488346200
}
}, {
events = 3735356672,
data = {
ptr = 0x288cc5804,
fd = -1999874044,
u32 = 2295093252,
u64 = 10885027844
}
}, {
events = 0,
data = {
ptr = 0x555555614a10,
fd = 1432439312,
u32 = 1432439312,
u64 = 93824993020432
}
}}
source = <optimized out>
i = 0
count = <optimized out>
has_timers = <optimized out>
#21 0x00007ffff77fc2d7 in wl_display_run (display=0x55555560ef30) at ../wayland-1.22.0/src/wayland-server.c:1493
#22 0x000055555557cb07 in server_run (server=0x5555555feb40 <server>) at ../sway/server.c:334
#23 0x000055555557bae1 in main (argc=1, argv=0x7fffffffdc48) at ../sway/main.c:415
config_path = 0x0
c = -1
verbose = false
allow_unsupported_gpu = false
debug = false
validate = false
bt full w/ "VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation"
#0 anv_get_image_format_properties() () at ../mesa-23.1.1/src/intel/vulkan/anv_formats.c:1206
#1 0x00007ffff46ae269 in anv_GetPhysicalDeviceImageFormatProperties2() () at ../mesa-23.1.1/src/intel/vulkan/anv_formats.c:1582
#2 0x00007ffff377ed46 in DispatchGetPhysicalDeviceImageFormatProperties2(VkPhysicalDevice_T*, VkPhysicalDeviceImageFormatInfo2 const*, VkImageFormatProperties2*) (pImageFormatProperties=0x7fffffffccf0, pImageFormatInfo=0x7fffffffccc0, physicalDevice=0x55555601af30) at /usr/src/debug/vulkan-validation-layers/Vulkan-ValidationLayers-sdk-1.3.243.0/layers/generated/layer_chassis_dispatch.cpp:4161
layer_data = <optimized out>
result = <optimized out>
image_info = {sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, pNext = 0x7fffffffcc50, format = VK_FORMAT_A2R10G10B10_UNORM_PACK32, type = VK_IMAGE_TYPE_2D, tiling = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, usage = 17, flags = 0}
external_image_properties = {sType = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES, pNext = 0x0, externalMemoryProperties = {externalMemoryFeatures = 0, exportFromImportedHandleTypes = 0, compatibleHandleTypes = 0}}
compatible_types = <optimized out>
any_type = <optimized out>
external_image_info = {sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO, pNext = 0x0, handleType = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT}
image_properties = {sType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2, pNext = 0x7fffffffcc90, imageFormatProperties = {maxExtent = {width = 0, height = 0, depth = 0}, maxMipLevels = 0, maxArrayLayers = 0, sampleCounts = 0, maxResourceSize = 0}}
skip = <optimized out>
device_limits = <optimized out>
attach_flags = 240
sparseFlags = 7
format_limits = {maxExtent = {width = 16384, height = 16384, depth = 1}, maxMipLevels = 1, maxArrayLayers = 1, sampleCounts = 1, maxResourceSize = 17592186044416}
result = <optimized out>
swapchain_create_info = <optimized out>
external_memory_create_info_nv = <optimized out>
external_memory_create_info = 0x7fffffffcf70
opaque_capture_descriptor_buffer = <optimized out>
has_decode_usage = <optimized out>
has_encode_usage = <optimized out>
#3 CoreChecks::PreCallValidateCreateImage(VkDevice_T*, VkImageCreateInfo const*, VkAllocationCallbacks const*, VkImage_T**) const (this=0x555556126cf0, device=0x555556038950, pCreateInfo=<optimized out>, pAllocator=<optimized out>, pImage=<optimized out>) at /usr/src/debug/vulkan-validation-layers/Vulkan-ValidationLayers-sdk-1.3.243.0/layers/core_checks/image_validation.cpp:482
image_info = {sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, pNext = 0x7fffffffcc50, format = VK_FORMAT_A2R10G10B10_UNORM_PACK32, type = VK_IMAGE_TYPE_2D, tiling = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, usage = 17, flags = 0}
external_image_properties = {sType = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES, pNext = 0x0, externalMemoryProperties = {externalMemoryFeatures = 0, exportFromImportedHandleTypes = 0, compatibleHandleTypes = 0}}
compatible_types = <optimized out>
any_type = <optimized out>
external_image_info = {sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO, pNext = 0x0, handleType = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT}
image_properties = {sType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2, pNext = 0x7fffffffcc90, imageFormatProperties = {maxExtent = {width = 0, height = 0, depth = 0}, maxMipLevels = 0, maxArrayLayers = 0, sampleCounts = 0, maxResourceSize = 0}}
skip = <optimized out>
device_limits = <optimized out>
attach_flags = 240
sparseFlags = 7
format_limits = {maxExtent = {width = 16384, height = 16384, depth = 1}, maxMipLevels = 1, maxArrayLayers = 1, sampleCounts = 1, maxResourceSize = 17592186044416}
result = <optimized out>
swapchain_create_info = <optimized out>
external_memory_create_info_nv = <optimized out>
external_memory_create_info = 0x7fffffffcf70
opaque_capture_descriptor_buffer = <optimized out>
has_decode_usage = <optimized out>
has_encode_usage = <optimized out>
#4 0x00007ffff38927a5 in vulkan_layer_chassis::CreateImage(VkDevice_T*, VkImageCreateInfo const*, VkAllocationCallbacks const*, VkImage_T**) (device=0x555556038950, pCreateInfo=0x7fffffffd0b0, pAllocator=0x0, pImage=0x7fffffffcf30) at /usr/src/debug/vulkan-validation-layers/Vulkan-ValidationLayers-sdk-1.3.243.0/layers/generated/chassis.cpp:1972
lock = {_M_pm = 0x555556128630, _M_owns = false}
intercept = 0x555556126cf0
__for_range = <optimized out>
layer_data = 0x555556123020
skip = false
result = <optimized out>
#5 0x00007ffff7ec2bec in vulkan_import_dmabuf (renderer=0x5555560544f0, attribs=0x7fffffffd3b0, mems=0x555556346998, n_mems=0x555556346990, for_render=true) at ../subprojects/wlroots/render/vulkan/texture.c:532
res = 1446219720
dev = 0x555556038950
fmt = 0x5555560488c8
plane_count = 1
mod = 0x55555604b6c0
disjoint = false
htype = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT
img_info = {sType = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, pNext = 0x7fffffffcf70, flags = 0, imageType = VK_IMAGE_TYPE_2D, format = VK_FORMAT_A2R10G10B10_UNORM_PACK32, extent = {width = 1280, height = 720, depth = 1}, mipLevels = 1, arrayLayers = 1, samples = VK_SAMPLE_COUNT_1_BIT, tiling = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, usage = 17, sharingMode = VK_SHARING_MODE_EXCLUSIVE, queueFamilyIndexCount = 0, pQueueFamilyIndices = 0x0, initialLayout = VK_IMAGE_LAYOUT_UNDEFINED}
eimg = {sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO, pNext = 0x7fffffffd050, handleTypes = 512}
plane_layouts = {{offset = 0, size = 0, rowPitch = 5120, arrayPitch = 0, depthPitch = 0}, {offset = 0, size = 0, rowPitch = 0, arrayPitch = 0, depthPitch = 0}, {offset = 0, size = 0, rowPitch = 0, arrayPitch = 0, depthPitch = 0}, {offset = 0, size = 0, rowPitch = 0, arrayPitch = 0, depthPitch = 0}}
mod_info = {sType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT, pNext = 0x0, drmFormatModifier = 72057594037927938, drmFormatModifierPlaneCount = 1, pPlaneLayouts = 0x7fffffffd210}
image = 0x1
mem_count = 21845
bindi = {{sType = VK_STRUCTURE_TYPE_APPLICATION_INFO, pNext = 0x7fffffffd1e0, image = 0x5555555fef00 <sway_fmt>, memory = 0x300000000, memoryOffset = 140737488343488}, {sType = 1431811368, pNext = 0x0, image = 0x7fffffffd1e0, memory = 0x7ffff7f65e98, memoryOffset = 12884901888}, {sType = 4294955696, pNext = 0x7ffff7f40013 <_wlr_log+186>, image = 0x7ffff7f65e98, memory = 0x300000000, memoryOffset = 206158430224}, {sType = 4294955712, pNext = 0x7fffffffd200, image = 0xeb508796e6cdb700, memory = 0x3ff0000000000000, memoryOffset = 0}}
planei = {{sType = 1432416968, pNext = 0x7fffffffd1e0, planeAspect = 1432350464}, {sType = 1446179432, pNext = 0x0, planeAspect = VK_IMAGE_ASPECT_NONE}, {sType = VK_STRUCTURE_TYPE_APPLICATION_INFO, pNext = 0x2400000000, planeAspect = VK_IMAGE_ASPECT_DEPTH_BIT}, {sType = 3872241408, pNext = 0x7fffffffd190, planeAspect = 1432191959}}
__PRETTY_FUNCTION__ = "vulkan_import_dmabuf"
#6 0x00007ffff7ebaa19 in create_render_buffer (renderer=0x5555560544f0, wlr_buffer=0x55555632f230) at ../subprojects/wlroots/render/vulkan/renderer.c:757
res = VK_SUCCESS
dev = 0x555556038950
buffer = 0x555556346930
dmabuf = {width = 1280, height = 720, format = 808669784, modifier = 72057594037927938, n_planes = 1, offset = {0, 0, 0, 0}, stride = {5120, 0, 0, 0}, fd = {36, 0, 0, 0}}
fmt = 0x0
view_info = {sType = VK_STRUCTURE_TYPE_APPLICATION_INFO, pNext = 0x0, flags = 3, image = 0x0, viewType = 4294956384, format = 32767, components = {r = VK_COMPONENT_SWIZZLE_IDENTITY, g = VK_COMPONENT_SWIZZLE_IDENTITY, b = 4294956128, a = 32767}, subresourceRange = {aspectMask = 4159665880, baseMipLevel = 32767, levelCount = 4294967295, baseArrayLayer = 4294967295, layerCount = 1446367432}}
has_blending_buffer = false
attachments = {0x7fffffffd560, 0x55555635ce70}
attachment_count = 0
fb_info = {sType = 808669784, pNext = 0x55555632f230, flags = 0, renderPass = 0x0, attachmentCount = 0, pAttachments = 0x0, width = 0, height = 0, layers = 0}
#7 0x00007ffff7ebb069 in vulkan_bind_buffer (wlr_renderer=0x5555560544f0, wlr_buffer=0x55555632f230) at ../subprojects/wlroots/render/vulkan/renderer.c:886
renderer = 0x5555560544f0
buffer = 0x0
#8 0x00007ffff7ead322 in renderer_bind_buffer (r=0x5555560544f0, buffer=0x55555632f230) at ../subprojects/wlroots/render/wlr_renderer.c:75
__PRETTY_FUNCTION__ = "renderer_bind_buffer"
#9 0x00007ffff7ef64b6 in output_attach_back_buffer (output=0x55555635ce70, state=0x7fffffffd560, buffer_age=0x0) at ../subprojects/wlroots/types/output/render.c:68
renderer = 0x5555560544f0
buffer = 0x55555632f230
__PRETTY_FUNCTION__ = "output_attach_back_buffer"
#10 0x00007ffff7ef6614 in output_attach_empty_back_buffer (output=0x55555635ce70, state=0x7fffffffd560) at ../subprojects/wlroots/types/output/render.c:99
width = 32767
height = -10912
renderer = 0x55555635ce70
__PRETTY_FUNCTION__ = "output_attach_empty_back_buffer"
#11 0x00007ffff7ef6827 in output_ensure_buffer (output=0x55555635ce70, state=0x7fffffffd560, new_back_buffer=0x7fffffffd55a) at ../subprojects/wlroots/types/output/render.c:162
enabled = true
needs_new_buffer = true
__PRETTY_FUNCTION__ = "output_ensure_buffer"
#12 0x00007ffff7ef5114 in wlr_output_test_state (output=0x55555635ce70, state=0x7fffffffd6b0) at ../subprojects/wlroots/types/output/output.c:686
unchanged = 8
copy = {committed = 272, allow_artifacts = true, damage = {extents = {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, data = 0x0}, enabled = true, scale = 1.5, transform = WL_OUTPUT_TRANSFORM_NORMAL, adaptive_sync_enabled = false, render_format = 808669784, subpixel = WL_OUTPUT_SUBPIXEL_UNKNOWN, buffer = 0x0, mode_type = WLR_OUTPUT_STATE_MODE_FIXED, mode = 0x0, custom_mode = {width = 0, height = 0, refresh = 0}, gamma_lut = 0x0, gamma_lut_size = 0, layers = 0x0, layers_len = 0}
new_back_buffer = false
success = 230
__PRETTY_FUNCTION__ = "wlr_output_test_state"
#13 0x00005555555a2622 in queue_output_config (oc=0x55555639e020, output=0x5555563413d0, pending=0x7fffffffd6b0) at ../sway/config/output.c:489
i = 0
fmts = 0x5555555e7db0 <__compound_literal.1>
wlr_output = 0x55555635ce70
tr = WL_OUTPUT_TRANSFORM_NORMAL
scale = 1.5
__PRETTY_FUNCTION__ = "queue_output_config"
#14 0x00005555555a2776 in apply_output_config (oc=0x55555639e020, output=0x5555563413d0) at ../sway/config/output.c:511
wlr_output = 0x55555635ce70
pending = {committed = 280, allow_artifacts = true, damage = {extents = {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, data = 0x0}, enabled = true, scale = 1.5, transform = WL_OUTPUT_TRANSFORM_NORMAL, adaptive_sync_enabled = false, render_format = 808669784, subpixel = WL_OUTPUT_SUBPIXEL_UNKNOWN, buffer = 0x0, mode_type = WLR_OUTPUT_STATE_MODE_FIXED, mode = 0x0, custom_mode = {width = 0, height = 0, refresh = 0}, gamma_lut = 0x0, gamma_lut_size = 0, layers = 0x0, layers_len = 0}
output_box = {x = -143299680, y = 32767, width = 1446253520, height = 21845}
#15 0x0000555555582dbf in handle_new_output (listener=0x5555555febb8 <server+120>, data=0x55555635ce70) at ../sway/desktop/output.c:1061
server = 0x5555555feb40 <server>
wlr_output = 0x55555635ce70
output = 0x5555563413d0
oc = 0x55555639e020
width = 32767
height = -10352
#16 0x00007ffff77fa01e in wl_signal_emit_mutable (signal=<optimized out>, data=0x55555635ce70) at ../wayland-1.22.0/src/wayland-server.c:2241
pos = 0x5555555febb8 <server+120>
l = 0x5555555febb8 <server+120>
cursor = {link = {prev = 0x5555555febb8 <server+120>, next = 0x7fffffffd7f0}, notify = 0x7ffff77f7110 <handle_noop>}
end = {link = {prev = 0x7fffffffd810, next = 0x55555560f138}, notify = 0x7ffff77f7110 <handle_noop>}
#17 0x00007ffff7ee36ec in new_output_reemit (listener=0x5555556178a8, data=0x55555635ce70) at ../subprojects/wlroots/backend/multi/backend.c:161
state = 0x555555617880
#18 0x00007ffff77fa01e in wl_signal_emit_mutable (signal=<optimized out>, data=0x55555635ce70) at ../wayland-1.22.0/src/wayland-server.c:2241
pos = 0x5555556178a8
l = 0x5555556178a8
cursor = {link = {prev = 0x5555556178a8, next = 0x7fffffffd890}, notify = 0x7ffff77f7110 <handle_noop>}
end = {link = {prev = 0x7fffffffd8b0, next = 0x55555560f1c8}, notify = 0x7ffff77f7110 <handle_noop>}
#19 0x00007ffff7ee8d0e in wlr_wl_output_create (wlr_backend=0x55555560f1a0) at ../subprojects/wlroots/backend/wayland/output.c:805
backend = 0x55555560f1a0
output = 0x55555635ce70
wlr_output = 0x55555635ce70
output_num = 1
name = "WL-1\000\177\000\000\020\332\377\377\377\177\000\000\000\000\000\000\000\000\000\000X\334\377\377\377\177\000\000\000\320\377\367\377\177\000\000\231\225\356\367\377\177\000\0004\356\365\367\377\177\000\000H\334\377\377\377\177\000"
description = "Wayland output 1\000\334\377\377\377\177\000\000\000\320\377\367\377\177\000\000x\235_UUU\000\000\005\274\356\367\377\177\000\000\240IaUUU\000\000>\274\356\367\377\177\000\000\240IaUUU\000\000 KaUUU\000\000\260\300\373\367\377\177\000\000\340O5VUU\000\000\020\332\377\377\377\177\000\000&\332\356\367\377\177\000\000\000\000\000\000\000\000\000\000 KaUUU\000"
seat = 0x7ffff7f1f067 <wl_signal_init+24>
#20 0x00007ffff7ee51b8 in backend_start (backend=0x55555560f1a0) at ../subprojects/wlroots/backend/wayland/backend.c:451
i = 0
wl = 0x55555560f1a0
seat = 0x55555560ed30
#21 0x00007ffff7ecb191 in wlr_backend_start (backend=0x55555560f1a0) at ../subprojects/wlroots/backend/backend.c:56
#22 0x00007ffff7ee329e in multi_backend_start (wlr_backend=0x55555560f110) at ../subprojects/wlroots/backend/multi/backend.c:31
backend = 0x55555560f110
sub = 0x555555617880
#23 0x00007ffff7ecb191 in wlr_backend_start (backend=0x55555560f110) at ../subprojects/wlroots/backend/backend.c:56
#24 0x000055555557ca6c in server_start (server=0x5555555feb40 <server>) at ../sway/server.c:322
#25 0x000055555557ba7a in main (argc=1, argv=0x7fffffffdc48) at ../sway/main.c:400
config_path = 0x0
c = -1
verbose = false
allow_unsupported_gpu = false
debug = false
validate = false