Xwayland

Pekka Paalanen ppaalanen at gmail.com
Tue Sep 10 08:01:39 UTC 2019


On Fri, 6 Sep 2019 12:09:19 -0400
Jd Lyons <lyons_dj at yahoo.com> wrote:

> > On Sep 6, 2019, at 3:14 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:
> > 
> > On Thu, 5 Sep 2019 11:36:50 -0400
> > Jd Lyons <lyons_dj at yahoo.com> wrote:
> >   
> >> On Sep 5, 2019, at 3:55 AM, Pekka Paalanen <ppaalanen at gmail.com> wrote:

> >>> If you redirect weston's both stdout and stderr to a file, you might
> >>> catch more messages from Xwayland which would hopefully shed more light
> >>> to why it seems to crash.
> >>>   
> >> 
> >> How may I go about redirecting that to a file?  
> > 
> > If you're using bash as your shell, then to whatever command you use to
> > start Weston, append: &> mylog.txt
> > 
> > You can also drop the '--log' weston option, so Weston logs go into the
> > same file too. Unfortunately '--log' does not capture the stdout/stderr
> > of other programs, that's why this manual fiddling is necessary.
> > 
> >   
> 
> Doesn’t seem to offer much more than the log option:

Hi,

indeed, that's unfortunate.

> Date: 2019-09-06 EDT
> [11:38:08.663] weston 6.0.1
>                https://wayland.freedesktop.org
>                Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
>                Build: 6.0.1
> [11:38:08.663] Command line: /usr/bin/weston
> [11:38:08.663] OS: Linux, 4.16.0-1-powerpc64, #1 SMP Debian 4.16.5-1 (2018-04-29), ppc64
> [11:38:08.692] Using config file '/home/jam/.config/weston.ini'
> [11:38:08.709] Output repaint window is 7 ms maximum.
> [11:38:08.752] Loading module '/usr/lib/powerpc64-linux-gnu/libweston-6/drm-backend.so'
> [11:38:08.833] initializing drm backend
> [11:38:08.838] logind: session control granted
> [11:38:08.841] using /dev/dri/card0
> [11:38:08.841] DRM: supports universal planes
> [11:38:08.841] DRM: does not support atomic modesetting
> [11:38:08.841] DRM: does not support picture aspect ratio
> [11:38:08.859] Loading module '/usr/lib/powerpc64-linux-gnu/libweston-6/gl-renderer.so'
> [11:38:12.800] EGL client extensions: EGL_EXT_device_base
>                EGL_EXT_device_enumeration EGL_EXT_device_query
>                EGL_EXT_platform_base EGL_KHR_client_get_all_proc_addresses
>                EGL_EXT_client_extensions EGL_KHR_debug
>                EGL_EXT_platform_wayland EGL_EXT_platform_x11
>                EGL_MESA_platform_gbm EGL_MESA_platform_surfaceless
> [11:38:12.802] EGL version: 1.4
> [11:38:12.802] EGL vendor: Mesa Project
> [11:38:12.802] EGL client APIs: OpenGL OpenGL_ES 
> [11:38:12.802] EGL extensions: EGL_EXT_buffer_age EGL_EXT_image_dma_buf_import
>                EGL_KHR_cl_event2 EGL_KHR_config_attribs EGL_KHR_create_context
>                EGL_KHR_create_context_no_error EGL_KHR_fence_sync
>                EGL_KHR_get_all_proc_addresses EGL_KHR_gl_renderbuffer_image
>                EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_3D_image
>                EGL_KHR_gl_texture_cubemap_image EGL_KHR_image
>                EGL_KHR_image_base EGL_KHR_image_pixmap
>                EGL_KHR_no_config_context EGL_KHR_reusable_sync
>                EGL_KHR_surfaceless_context EGL_EXT_pixel_format_float
>                EGL_KHR_wait_sync EGL_MESA_configless_context
>                EGL_MESA_drm_image EGL_MESA_image_dma_buf_export
>                EGL_WL_bind_wayland_display
> [11:38:12.802] warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
> [11:38:12.802] EGL_KHR_surfaceless_context available
> [11:38:13.217] GL version: OpenGL ES 2.0 Mesa 19.1.4
> [11:38:13.218] GLSL version: OpenGL ES GLSL ES 1.0.16
> [11:38:13.218] GL vendor: nouveau
> [11:38:13.218] GL renderer: NV43
> [11:38:13.218] GL extensions: GL_EXT_blend_minmax GL_EXT_multi_draw_arrays
>                GL_EXT_texture_filter_anisotropic
>                GL_EXT_texture_compression_s3tc GL_EXT_texture_compression_dxt1
>                GL_EXT_texture_format_BGRA8888 GL_OES_depth24
>                GL_OES_element_index_uint GL_OES_fbo_render_mipmap
>                GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_stencil8
>                GL_OES_texture_3D GL_OES_texture_npot GL_OES_vertex_half_float
>                GL_OES_EGL_image GL_OES_depth_texture
>                GL_OES_packed_depth_stencil GL_NV_conditional_render
>                GL_OES_get_program_binary GL_APPLE_texture_max_level
>                GL_EXT_discard_framebuffer GL_EXT_read_format_bgra
>                GL_EXT_frag_depth GL_NV_fbo_color_attachments
>                GL_OES_EGL_image_external GL_OES_EGL_sync
>                GL_OES_vertex_array_object GL_ANGLE_texture_compression_dxt3
>                GL_ANGLE_texture_compression_dxt5
>                GL_EXT_occlusion_query_boolean GL_EXT_unpack_subimage
>                GL_NV_draw_buffers GL_NV_read_buffer GL_NV_read_depth
>                GL_NV_read_depth_stencil GL_NV_read_stencil GL_EXT_draw_buffers
>                GL_EXT_map_buffer_range GL_KHR_debug
>                GL_OES_required_internalformat GL_OES_surfaceless_context
>                GL_EXT_separate_shader_objects GL_EXT_draw_elements_base_vertex
>                GL_EXT_texture_border_clamp GL_KHR_context_flush_control
>                GL_OES_draw_elements_base_vertex GL_OES_texture_border_clamp
>                GL_KHR_no_error GL_EXT_disjoint_timer_query
>                GL_EXT_texture_compression_s3tc_srgb
>                GL_KHR_parallel_shader_compile GL_EXT_depth_clamp
> [11:38:13.218] GL ES 2 renderer features:
>                read-back format: BGRA
>                wl_shm sub-image to texture: yes
>                EGL Wayland extension: yes
> [11:38:13.286] event0  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: is tagged by udev as: Keyboard
> [11:38:13.286] event0  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: device is a keyboard
> [11:38:13.293] event1  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: is tagged by udev as: Keyboard Mouse
> [11:38:13.293] event1  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: device is a pointer
> [11:38:13.293] event1  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: device is a keyboard
> [11:38:13.300] event2  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: is tagged by udev as: Keyboard
> [11:38:13.300] event2  - Microsoft Microsoft® 2.4GHz Transceiver v7.0: device is a keyboard
> [11:38:13.306] event3  - HID 05ac:1000: is tagged by udev as: Keyboard
> [11:38:13.307] event3  - HID 05ac:1000: device is a keyboard
> [11:38:13.369] event4  - HID 05ac:1000: is tagged by udev as: Mouse
> [11:38:13.370] event4  - HID 05ac:1000: device is a pointer
> [11:38:14.039] libinput: configuring device "Microsoft Microsoft® 2.4GHz Transceiver v7.0".
> [11:38:14.039] libinput: configuring device "Microsoft Microsoft® 2.4GHz Transceiver v7.0".
> [11:38:14.039] libinput: configuring device "Microsoft Microsoft® 2.4GHz Transceiver v7.0".
> [11:38:14.039] libinput: configuring device "HID 05ac:1000".
> [11:38:14.039] libinput: configuring device "HID 05ac:1000".
> [11:38:14.071] DRM: head 'DVI-I-1' found, connector 38 is connected, EDID make 'DEL', model 'DELL 1704FPT', serial 'Y42994B1AAHK'
> [11:38:14.114] DRM: head 'DVI-I-2' found, connector 41 is disconnected.
> [11:38:14.114] Registered plugin API 'weston_drm_output_api_v1' of size 24
> [11:38:14.114] Registered plugin API 'weston_drm_virtual_output_api_v1' of size 48
> [11:38:14.114] Chosen EGL config details:
>                RGBA bits: 8 8 8 0
>                swap interval range: 1 - 1
> [11:38:14.114] Output DVI-I-1 (crtc 35) video modes:
>                1280x1024 at 60.0, preferred, current, 108.0 MHz
>                1280x1024 at 75.0, 135.0 MHz
>                1152x864 at 75.0, 108.0 MHz
>                1024x768 at 75.0, 78.8 MHz
>                1024x768 at 60.0, 65.0 MHz
>                800x600 at 75.0, 49.5 MHz
>                800x600 at 60.3, 40.0 MHz
>                640x480 at 75.0, 31.5 MHz
>                640x480 at 59.9, 25.2 MHz
>                720x400 at 70.1, 28.3 MHz
> [11:38:14.114] associating input device event0 with output DVI-I-1 (none by udev)
> [11:38:14.114] associating input device event1 with output DVI-I-1 (none by udev)
> [11:38:14.114] associating input device event2 with output DVI-I-1 (none by udev)
> [11:38:14.114] associating input device event3 with output DVI-I-1 (none by udev)
> [11:38:14.114] associating input device event4 with output DVI-I-1 (none by udev)
> [11:38:14.114] Output 'DVI-I-1' enabled with head(s) DVI-I-1
> [11:38:14.115] Compositor capabilities:
>                arbitrary surface rotation: yes
>                screen capture uses y-flip: yes
>                presentation clock: CLOCK_MONOTONIC, id 1
>                presentation clock resolution: 0.000000001 s
> [11:38:14.162] Loading module '/usr/lib/powerpc64-linux-gnu/weston/desktop-shell.so'
> [11:38:14.238] launching '/usr/lib/powerpc64-linux-gnu/weston-keyboard'
> [11:38:14.295] Loading module '/usr/lib/powerpc64-linux-gnu/libweston-6/xwayland.so'
> [11:38:14.551] Registered plugin API 'weston_xwayland_v1' of size 32
> [11:38:14.551] Registered plugin API 'weston_xwayland_surface_v1' of size 16
> [11:38:14.551] xserver listening on display :0
> [11:38:14.551] launching '/usr/lib/powerpc64-linux-gnu/weston-desktop-shell'
> [11:38:26.717] Spawned Xwayland server, pid 610
> [11:38:27.486] xserver crashing too fast: 4

Well, it does stay up half a second... but no automatic backtrace from
Xwayland.

The "crashing too fast" means Xwayland crashes during its init before
it can send SIGUSR1 to Weston to say it's ready to accept X11 clients.

The "4" is the exit status of Xwayland, maybe that means something -
would have to read the Xwayland sources.

Hm, just realized. It's not crashing. It's exiting with an error. So
there probably is no backtrace or core dump to be had. It's up to
decipher the "4" now.


> Unimplemented windowOp 22 <——tying to launch glxgear
> Unimplemented windowOp 23 <——trying to launch firefox
> Unimplemented windowOp 22
> Unimplemented windowOp 23
> 
> Shouldn’t we see this:
> 
> exec of '/usr/bin/Xwayland :1 -rootless -listen 54 -listen 55 -wm 56 -terminate’

No, this is only printed when the exec fails. On success, it prints
"Spawned Xwayland server, pid ...".

> If /usr/bin/Xwayland is not installed we see this exec, however, if
> it is installed only the xwayland.so seem to get loaded?

If you want, you could file an issue at
https://gitlab.freedesktop.org/xorg/xserver/issues explaining that on
your particular platform, Xwayland exits early with error code 4. That
way it won't be forgotten, and maybe a slightly more focused audience
will see it.


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20190910/fc5b848f/attachment.sig>


More information about the wayland-devel mailing list