weston issueshttps://gitlab.freedesktop.org/wayland/weston/-/issues2021-04-12T15:14:02Zhttps://gitlab.freedesktop.org/wayland/weston/-/issues/487cheapest blend2021-04-12T15:14:02ZAndre Osku Schmidtcheapest blendi want to draw/animate this thing:
1. draw filled rectangle with dark transparent color, over the size of area</li>
1. draw filled rectangle with light transparent color, over the size of data</li>
1. wait and repeat (i don't need short...i want to draw/animate this thing:
1. draw filled rectangle with dark transparent color, over the size of area</li>
1. draw filled rectangle with light transparent color, over the size of data</li>
1. wait and repeat (i don't need shorter wait time than ~250msec)
this example html/js thing shows exactly what i want:
```html
<canvas width="128" height="32"></canvas>
<script>
const ctx = document.querySelector("canvas").getContext("2d")
setInterval(function(){
ctx.fillStyle = "rgba(0, 0, 0, 0.2)"
ctx.fillRect(0, 0, 128, 32)
ctx.fillStyle = "rgba(0, 255, 0, 0.2)"
for (let i = 0; i < 4; i++) {
let r = Math.sin(Date.now()/1000+(1*i)) * 0.5 + 0.5
ctx.fillRect(0, 0+((32/4)*i), 128*r, 32/4)
}
}, 250)
</script>
```
> ignore the maths and numbers, it's about `fillStyle` and `fillRect`, and how they blend with previous drawing. (you can save that to a file and open in any modern browser)
i was able to boil it down to this opengl/c code:
```c
#include <GL/gl.h>
#include <GLFW/glfw3.h>
#include <unistd.h>
#include <math.h>
int main (void) {
float s = 2.0 / 4;
double t; int i;
GLFWwindow* window;
if (!glfwInit()) return 1;
window = glfwCreateWindow(128, 32, "test", NULL, NULL);
if (!window) { glfwTerminate(); return 2; }
glfwMakeContextCurrent(window);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
while (1) {
t = glfwGetTime();
glColor4f(0, 0, 0, 0.2);
glRectf(-1, -1, 1, 1);
for (i = 0; i < 4; i++) {
glColor4f(0, 1, 0, 0.2);
glRectf(-1, -1+(s*i), sin(t+i), -1+(s*(i+1)));
}
glFlush();
glfwSwapBuffers(window);
usleep(1000 * 250);
}
return 0;
}
```
> build with: `gcc foo.c -o foo $(pkg-config --cflags --libs glfw3 gl) -lm`
that opengl/c code renders the same as the html/js version, but only on x11 (openbox). on wayland with weston (or wayfire) the blending is "all bonkers", so i wonder...
- why does that opengl/c code work on x11?
- why does it not work the same on weston (wayland)? (or does it for you?)
- or it should work, and the bug is somewhere (else)?
- optional: what is the cheapest way to draw this on/for weston/wayland?
as i'm a total wayland/opengl/c noob (and mostly trial-and-error until something (seems) to work >.<*), i would be very thankful for any related/specific clarification (links) :heart:
ps. i wonder if/when we get single buffer with glfw, if that's gonna solve the problem? https://github.com/glfw/glfw/issues/1843https://gitlab.freedesktop.org/wayland/weston/-/issues/485Segfault config keyboard layout2021-10-26T15:04:41ZAntoine PLASKOWSKISegfault config keyboard layout`weston.ini`:
```ini
[keyboard]
keymap_layout=fr
keymap_variant=euro
```
Hit a key from the keyboard like `k` => Segfault
Log: https://pb.mgt.moe/f4da:
<p>
<details>
<summary>Log:</summary>
<pre><code>
Date: 2021-03-27 CET
[14:33:00....`weston.ini`:
```ini
[keyboard]
keymap_layout=fr
keymap_variant=euro
```
Hit a key from the keyboard like `k` => Segfault
Log: https://pb.mgt.moe/f4da:
<p>
<details>
<summary>Log:</summary>
<pre><code>
Date: 2021-03-27 CET
[14:33:00.737] weston 9.0.0
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: 9.0.0
[14:33:00.737] Command line: weston
[14:33:00.737] OS: Linux, 5.10.13-3-ARCH, #1 SMP Fri Feb 5 21:01:39 UTC 2021, armv7l
[14:33:00.737] Using config file '/home/stargateur/.config/weston.ini'
[14:33:00.737] Output repaint window is 7 ms maximum.
[14:33:00.737] Loading module '/usr/lib/libweston-9/drm-backend.so'
[14:33:00.743] initializing drm backend
[14:33:00.747] logind: session control granted
[14:33:00.757] using /dev/dri/card0
[14:33:00.757] DRM: supports atomic modesetting
[14:33:00.757] DRM: supports GBM modifiers
[14:33:00.757] DRM: supports picture aspect ratio
[14:33:00.757] Loading module '/usr/lib/libweston-9/gl-renderer.so'
[14:33:00.848] 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_device
EGL_EXT_platform_wayland EGL_KHR_platform_wayland
EGL_EXT_platform_x11 EGL_KHR_platform_x11 EGL_MESA_platform_gbm
EGL_KHR_platform_gbm EGL_MESA_platform_surfaceless
[14:33:00.850] EGL version: 1.4
[14:33:00.850] EGL vendor: Mesa Project
[14:33:00.850] EGL client APIs: OpenGL OpenGL_ES
[14:33:00.850] EGL extensions: EGL_ANDROID_blob_cache EGL_EXT_buffer_age
EGL_EXT_image_dma_buf_import
EGL_EXT_image_dma_buf_import_modifiers 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_colorspace
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_MESA_query_driver EGL_WL_bind_wayland_display
[14:33:00.850] warning: Disabling render GPU timeline and explicit synchronization due to missing EGL_ANDROID_native_fence_sync extension
[14:33:00.850] EGL_KHR_surfaceless_context available
[14:33:00.855] GL version: OpenGL ES 3.1 Mesa 20.3.4
[14:33:00.855] GLSL version: OpenGL ES GLSL ES 3.10
[14:33:00.855] GL vendor: Broadcom
[14:33:00.855] GL renderer: V3D 4.2
[14:33:00.855] GL extensions: GL_EXT_blend_minmax GL_EXT_multi_draw_arrays
GL_EXT_texture_compression_s3tc GL_EXT_texture_compression_dxt1
GL_EXT_texture_format_BGRA8888
GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth24
GL_OES_element_index_uint GL_OES_fbo_render_mipmap
GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_standard_derivatives
GL_OES_stencil8 GL_OES_texture_3D GL_OES_texture_float
GL_OES_texture_half_float GL_OES_texture_half_float_linear
GL_OES_texture_npot GL_OES_vertex_half_float
GL_EXT_draw_instanced GL_EXT_texture_sRGB_decode
GL_OES_EGL_image GL_OES_depth_texture
GL_OES_packed_depth_stencil GL_EXT_texture_type_2_10_10_10_REV
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_pack_reverse_row_order
GL_ANGLE_texture_compression_dxt3
GL_ANGLE_texture_compression_dxt5
GL_EXT_occlusion_query_boolean GL_EXT_texture_rg
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_KHR_texture_compression_astc_ldr GL_NV_pixel_buffer_object
GL_OES_depth_texture_cube_map GL_OES_required_internalformat
GL_OES_surfaceless_context GL_EXT_color_buffer_float
GL_EXT_sRGB_write_control GL_EXT_separate_shader_objects
GL_EXT_shader_implicit_conversions GL_EXT_shader_integer_mix
GL_EXT_base_instance GL_EXT_compressed_ETC1_RGB8_sub_texture
GL_EXT_draw_elements_base_vertex GL_EXT_primitive_bounding_box
GL_EXT_shader_io_blocks GL_EXT_texture_border_clamp
GL_KHR_context_flush_control GL_NV_image_formats
GL_OES_draw_elements_base_vertex GL_OES_primitive_bounding_box
GL_OES_shader_io_blocks GL_OES_texture_border_clamp
GL_OES_texture_stencil8
GL_OES_texture_storage_multisample_2d_array
GL_EXT_buffer_storage GL_EXT_float_blend
GL_EXT_geometry_point_size GL_EXT_geometry_shader
GL_KHR_no_error GL_KHR_texture_compression_astc_sliced_3d
GL_OES_EGL_image_external_essl3 GL_OES_geometry_point_size
GL_OES_geometry_shader GL_OES_shader_image_atomic
GL_EXT_texture_compression_s3tc_srgb
GL_MESA_shader_integer_functions GL_KHR_parallel_shader_compile
GL_EXT_EGL_image_storage GL_MESA_framebuffer_flip_y
GL_EXT_texture_query_lod
[14:33:00.856] GL ES 2 renderer features:
read-back format: BGRA
wl_shm sub-image to texture: yes
EGL Wayland extension: yes
[14:33:00.873] event0 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD: is tagged by udev as: Keyboard
[14:33:00.874] event0 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD: device is a keyboard
[14:33:00.881] event1 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD Keyboard: is tagged by udev as: Keyboard
[14:33:00.881] event1 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD Keyboard: device is a keyboard
[14:33:00.890] event2 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD Consumer Control: is tagged by udev as: Keyboard
[14:33:00.890] event2 - Logitech G513 RGB MECHANICAL GAMING KEYBOARD Consumer Control: device is a keyboard
[14:33:00.964] event3 - USB Optical Mouse: is tagged by udev as: Mouse
[14:33:00.965] event3 - USB Optical Mouse: device is a pointer
xkbcommon: ERROR: Couldn't process include statement for 'fr(euro)'
xkbcommon: ERROR: Abandoning symbols file "(unnamed)"
xkbcommon: ERROR: Failed to compile xkb_symbols
xkbcommon: ERROR: Failed to compile keymap
[14:33:00.986] failed to compile global XKB keymap
[14:33:00.986] tried rules evdev, model pc105, layout fr, variant euro, options (null)
[14:33:00.986] libinput: configuring device "Logitech G513 RGB MECHANICAL GAMING KEYBOARD".
xkbcommon: ERROR: Couldn't process include statement for 'fr(euro)'
xkbcommon: ERROR: Abandoning symbols file "(unnamed)"
xkbcommon: ERROR: Failed to compile xkb_symbols
xkbcommon: ERROR: Failed to compile keymap
[14:33:00.998] failed to compile global XKB keymap
[14:33:00.998] tried rules evdev, model pc105, layout fr, variant euro, options (null)
[14:33:00.998] libinput: configuring device "Logitech G513 RGB MECHANICAL GAMING KEYBOARD Keyboard".
xkbcommon: ERROR: Couldn't process include statement for 'fr(euro)'
xkbcommon: ERROR: Abandoning symbols file "(unnamed)"
xkbcommon: ERROR: Failed to compile xkb_symbols
xkbcommon: ERROR: Failed to compile keymap
[14:33:01.009] failed to compile global XKB keymap
[14:33:01.009] tried rules evdev, model pc105, layout fr, variant euro, options (null)
[14:33:01.009] libinput: configuring device "Logitech G513 RGB MECHANICAL GAMING KEYBOARD Consumer Control".
[14:33:01.009] libinput: configuring device "USB Optical Mouse".
[14:33:01.036] DRM: head 'HDMI-A-1' found, connector 32 is connected, EDID make 'IVM', model 'PL2488H', serial '0'
[14:33:01.038] DRM: head 'HDMI-A-2' found, connector 39 is disconnected.
[14:33:01.038] Registered plugin API 'weston_drm_output_api_v1' of size 12
[14:33:01.038] Registered plugin API 'weston_drm_virtual_output_api_v1' of size 24
[14:33:01.038] Chosen EGL config details: id: 17 rgba: 8 8 8 0 buf: 24 dep: 0 stcl: 0 int: 1-1 type: win vis_id: XRGB8888 (0x34325258)
[14:33:01.039] Output HDMI-A-1 (crtc 74) video modes:
1920x1080@60.0, preferred, current, 148.5 MHz
1920x1080@60.0 16:9, 148.5 MHz
1920x1080@59.9 16:9, 148.4 MHz
1920x1080@60.0 16:9, 74.2 MHz
1920x1080@59.9 16:9, 74.2 MHz
1920x1080@50.0, 148.5 MHz
1920x1080@50.0 16:9, 148.5 MHz
1920x1080@50.0, 74.2 MHz
1920x1080@50.0 16:9, 74.2 MHz
1600x1200@60.0, 162.0 MHz
1680x1050@59.9, 119.0 MHz
1280x1024@75.0, 135.0 MHz
1280x1024@60.0, 108.0 MHz
1440x900@75.0, 136.8 MHz
1440x900@59.9, 88.8 MHz
1280x960@60.0, 108.0 MHz
1152x864@75.0, 108.0 MHz
1280x720@60.0 16:9, 74.2 MHz
1280x720@59.9 16:9, 74.2 MHz
1280x720@50.0, 74.2 MHz
1280x720@50.0 16:9, 74.2 MHz
1024x768@75.0, 78.8 MHz
1024x768@70.1, 75.0 MHz
1024x768@60.0, 65.0 MHz
832x624@74.6, 57.3 MHz
800x600@75.0, 49.5 MHz
800x600@72.2, 50.0 MHz
800x600@60.3, 40.0 MHz
800x600@56.2, 36.0 MHz
720x576@50.0, 27.0 MHz
720x576@50.0 16:9, 27.0 MHz
720x576@50.0 4:3, 27.0 MHz
720x480@60.0 16:9, 27.0 MHz
720x480@60.0 4:3, 27.0 MHz
720x480@59.9 16:9, 27.0 MHz
720x480@59.9 4:3, 27.0 MHz
640x480@75.0, 31.5 MHz
640x480@72.8, 31.5 MHz
640x480@66.7, 30.2 MHz
640x480@60.0 4:3, 25.2 MHz
640x480@59.9, 25.2 MHz
640x480@59.9 4:3, 25.2 MHz
720x400@70.1, 28.3 MHz
[14:33:01.040] associating input device event0 with output HDMI-A-1 (none by udev)
[14:33:01.040] associating input device event1 with output HDMI-A-1 (none by udev)
[14:33:01.040] associating input device event2 with output HDMI-A-1 (none by udev)
[14:33:01.040] associating input device event3 with output HDMI-A-1 (none by udev)
[14:33:01.040] Output 'HDMI-A-1' enabled with head(s) HDMI-A-1
[14:33:01.040] Compositor capabilities:
arbitrary surface rotation: yes
screen capture uses y-flip: yes
presentation clock: CLOCK_MONOTONIC, id 1
presentation clock resolution: 0.000000001 s
[14:33:01.040] Loading module '/usr/lib/weston/desktop-shell.so'
[14:33:01.041] launching '/usr/lib/weston/weston-keyboard'
[14:33:01.044] launching '/usr/lib/weston/weston-desktop-shell'
</code></pre>
</details>
</p>
This segfault happen to me on weston v5 too on Rasberry pi OS but I didn't keep the log.
This work well if I just put:
```ini
[keyboard]
keymap_layout=fr
```https://gitlab.freedesktop.org/wayland/weston/-/issues/484race condition with messages to/from weston-launch2021-04-10T22:32:10ZJonathan Marlerrace condition with messages to/from weston-launchWe ran into an intermittent issue where weston will encounter an error if we switch the virtual terminal too quickly. In analyzing the code, we realized that there is a race condition inherent with the current design.
The race conditio...We ran into an intermittent issue where weston will encounter an error if we switch the virtual terminal too quickly. In analyzing the code, we realized that there is a race condition inherent with the current design.
The race condition occurs when weston sends the `WESTON_LAUNCHER_OPEN` message to weston-launch and receives the corresponding `fd` handle value. The `WESTON_LAUNCHER_OPEN` message would have been triggered by the `WESTON_LAUNCHER_ACTIVATE` message sent from weston-launch. The problem is that if weston-launch receives a `VT_RELEASE` signal from the kernel before it receives the `WESTON_LAUNCHER_OPEN` message from weston, then weston-launch will send the `WESTON_LAUNCHER_DEACTIVATE` message when weston is going to be expecting the `fd` handle value next.
The inherent problem here is that both weston-launch and weston can asynchronously send messages at any point in time, but weston expects that after sending WESTON_LAUNCHER_OPEN, that weston-launch will always respond with the fd handle value reply.
One solution would be to open 2 sockets pairs and use one for asynchronous message initiated by each endpoint. Another solution would be to reserve a msg id for the WESTON_LAUNCHER_OPEN reply and modify weston to receive it asynchronously somehow.https://gitlab.freedesktop.org/wayland/weston/-/issues/481fbdev frame buffer format not supported2022-01-20T12:04:28Zkchfbdev frame buffer format not supportedI'm trying to get weston with fbdev backend working. The simple framebuffer setup by bootloader accepts just the two formats "r5g6b5" or "a8b8g8r8". Our format setting is "a8b8g8r8" and the output of fbset as expected is:
```
mode "...I'm trying to get weston with fbdev backend working. The simple framebuffer setup by bootloader accepts just the two formats "r5g6b5" or "a8b8g8r8". Our format setting is "a8b8g8r8" and the output of fbset as expected is:
```
mode "1024x768-0"
#D: 0.000 MHz, H: 0.000 kHz, V: 0.000 Hz
geometry 1024 768 1024 768 32
timings 0 0 0 0 0 0 0
accel false
rgba 8/0,8/8,8/16,8/24
endmode
```
After starting weston with fbev backend it fails with **Frame buffer uses an unsupported format.**
The complete output:
```
[23:19:39.873] weston 5.0.0
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: unknown (not built from git or tarball)
[23:19:39.873] Command line: weston --tty=1
[23:19:39.873] OS: Linux, 4.19.0-xilinx-v2019.1, #1 SMP PREEMPT Thu Mar 18 20:46:07 UTC 2021, armv7l
[23:19:39.874] Using config file '/home/root/.config/weston.ini'
[23:19:39.874] Output repaint window is 7 ms maximum.
[23:19:39.874] Loading module '/usr/lib/libweston-5/fbdev-backend.so'
[23:19:39.876] initializing fbdev backend
[23:19:39.878] Opening fbdev frame buffer.
[23:19:39.878] Calculating pixman format from:
- type: 0 (aux: 0)
- visual: 2
- bpp: 32 (grayscale: 0)
- red: offset: 0, length: 8, MSB: 0
- green: offset: 8, length: 8, MSB: 0
- blue: offset: 16, length: 8, MSB: 0
- transp: offset: 24, length: 8, MSB: 0
[23:19:39.878] Frame buffer uses an unsupported format.
[23:19:39.878] Failed to get frame buffer info: No such file or directory
[23:19:39.878] Creating frame buffer head failed.
[23:19:39.898] fatal: failed to create compositor backend
```
Which formats supports the fbdev frame buffer? What is the background of not supporting "a8b8g8r8?https://gitlab.freedesktop.org/wayland/weston/-/issues/480framebuffer backend not supporting alpha channel2021-03-18T07:49:18Zcurious_beastframebuffer backend not supporting alpha channelI've got weston with fbdev backend working but no matter what, the alpha channel didn't make it into the framebuffer. 🙁
When I took a screenshot with `cat /dev/fb0 > screenshot.data`, it always ended up with alpha='ff' (while with the xs...I've got weston with fbdev backend working but no matter what, the alpha channel didn't make it into the framebuffer. 🙁
When I took a screenshot with `cat /dev/fb0 > screenshot.data`, it always ended up with alpha='ff' (while with the xserver it always was alpha='00').
I've tried the following things:
weston config (weston.ini):
[core]
backend=fbdev-backend.so # also tried with drm-backend.so, but this won't fill the framebuffer, and on the screen it looked exactly the same as fbdev
[keyboard]
keymap_layout=de
repeat-keys=40 # tracking key repeats for long key press detection in delhi-gui didn't work, despite key repeat working with e.g. zoom
[shell]
type=desktop-shell.so # also tried fullscreen-shell.so and ivi-shell.so, the desktop always looked the same, not sure what these do?
# background-image= # tried with empty image, image with alpha channel set to 0
background-color=0x00000000 # 0xaarrggbb / tried with 0x00ffffff, 0x50505050 and some others, but no transparent framebuffer
[launcher]
path=/usr/bin/weston-terminal
icon=/usr/share/icons/gnome/24x24/apps/terminal.png
[launcher]
icon=/usr/share/icons/gnome/24x24/apps/terminal.png
I also tried to get another wayland compositor working that is specifically made
as "kiosk compositor", which means it runs only one app in fullscreen.
The compositor is called 'cage': https://github.com/Hjdskes/cagehttps://gitlab.freedesktop.org/wayland/weston/-/issues/479Memory leakage when execute weston-simple-egl on BeagleBone Black2021-05-30T16:52:01ZTakayuki OkamotoMemory leakage when execute weston-simple-egl on BeagleBone BlackI am seeing memory leak when weston-simple-egl is executed.
I have attached the full result of the Valgrind.
[weston-simple-egl-valgrind-20210315-am335x-evm.log](/uploads/0e1d421a8bbf899661ae916ca2e31d27/weston-simple-egl-valgrind-202103...I am seeing memory leak when weston-simple-egl is executed.
I have attached the full result of the Valgrind.
[weston-simple-egl-valgrind-20210315-am335x-evm.log](/uploads/0e1d421a8bbf899661ae916ca2e31d27/weston-simple-egl-valgrind-20210315-am335x-evm.log)
At first, the issue seems to be related to the GPU library the TI provided.
But the program directly uses this GPU library, the memory leakage isn't happend.
Based on this result, the issue seems to be related to Wayland/Weston.
I tried the patch of https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/250, but It had no effect on this problem.
Background information
Hardware:
BeagleBone Black or am335x-evm
Software:
PROCESSOR-SDK-LINUX-AM335X 06_01_00_08
linux-kernel 4.19.59
weston 5.0.0
Do you have any idea to solve this or is there any other debug suggestions?https://gitlab.freedesktop.org/wayland/weston/-/issues/474[Q] how to use address sanitizer?2021-02-26T10:12:59ZJunil Kim[Q] how to use address sanitizer?Sorry, it would a silly question.
I think many developers already have tried to use asan for weston. So I've like to get advice regarding this.
I've just tried to enable address sanitizer for weston build like the following.
```
$ CC=c...Sorry, it would a silly question.
I think many developers already have tried to use asan for weston. So I've like to get advice regarding this.
I've just tried to enable address sanitizer for weston build like the following.
```
$ CC=clang CXX=clang++ meson --reconfigure build-clang -Ddoc=true -Db_sanitize=address
```
And tried ninja build
```
$ ninja -C build-clang -v
```
But undefined error occurred.
```
undefined reference to `__asan_init'
```
Plz, could you let me have an advice for this?https://gitlab.freedesktop.org/wayland/weston/-/issues/473Firefox developer version/nightly build doesn't display in kiosk shell2021-03-03T21:52:42ZFabrice DesréFirefox developer version/nightly build doesn't display in kiosk shellI'm trying to launch Firefox in the kiosk shell on a pinephone (aarch64-unknown-linux-gnu target). The result is a full black screen with no obvious error thrown. Using the desktop shell works fine, including maximizing the Firefox windo...I'm trying to launch Firefox in the kiosk shell on a pinephone (aarch64-unknown-linux-gnu target). The result is a full black screen with no obvious error thrown. Using the desktop shell works fine, including maximizing the Firefox window.
Here's the wayland log: https://pastebin.com/SadcqrQehttps://gitlab.freedesktop.org/wayland/weston/-/issues/471Expose proper fixture, test and case names in TAP report2021-02-17T12:54:48ZPekka Paalanenppaalanen@gmail.comExpose proper fixture, test and case names in TAP reportThe following discussion from !550 should be addressed:
- [ ] @pq started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/550#note_795772):
> Fine-tune the sub-test names in the TAP report. See if I c...The following discussion from !550 should be addressed:
- [ ] @pq started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/550#note_795772):
> Fine-tune the sub-test names in the TAP report. See if I can drop the counter number, and maybe let test programs override the generic names invented by the harness.Pekka Paalanenppaalanen@gmail.comPekka Paalanenppaalanen@gmail.comhttps://gitlab.freedesktop.org/wayland/weston/-/issues/469kiosk-shell app-ids not working2022-06-03T16:42:40ZAaron Bricekiosk-shell app-ids not workingI have weston 9.0 running with kiosk-shell on an i.MX arm board with two HDMI displays. I am trying to get two chromium ozone wayland windows to open, one on each screen, but they both seem to always open on the same screen. My test ca...I have weston 9.0 running with kiosk-shell on an i.MX arm board with two HDMI displays. I am trying to get two chromium ozone wayland windows to open, one on each screen, but they both seem to always open on the same screen. My test case is to run weston with the following weston.ini:
```
[core]
shell=kiosk-shell.so
idle-time=0
[shell]
[output]
name=HDMI-A-1
mode=1920x1080@60
app-ids=Chrome-testa
[output]
name=HDMI-A-2
mode=1920x1080@60
app-ids=Chrome-testb
```
I run:
```
export CHROME_DESKTOP=Chrome-testa.desktop
chromium --use-gl=egl --no-first-run --incognito --ozone-platform=wayland --user-data-dir=chrome-testa --in-process-gpu https://google.com
```
and then:
```
export CHROME_DESKTOP=Chrome-testb.desktop
chromium --use-gl=egl --no-first-run --incognito --ozone-platform=wayland --user-data-dir=chrome-testb --in-process-gpu https://cnn.com
```
`weston-debug proto` shows:
[2021-02-10 12:18:01.243][proto] client 0xaaaaffdbd6d0 rq xdg_toplevel@24.set_app_id("Chrome-testa")
for the first chromium, and:
[2021-02-10 12:19:41.768][proto] client 0xaaaaffdbd030 rq xdg_toplevel@24.set_app_id("Chrome-testb")
for the second chromium, but they both show up on the same output. If I move the mouse cursor over to the other screen before starting the second chromium process then they show up on different screens, but trying to start them from systemd.
Logs:
[scene.log](/uploads/def64782f6e8c9518db55346c5641dc7/scene.log)
[testa.log](/uploads/31399184a1b999b9bda241733b2e0468/testa.log)
[testb.log](/uploads/3db857711c41a691560941f3022db116/testb.log)https://gitlab.freedesktop.org/wayland/weston/-/issues/468weston-launch --user="User1" hangs terminal2021-02-07T16:07:04ZPiotr Oniszczukweston-launch --user="User1" hangs terminalHi,
Im trying to automate startup of my app in Linux based appliance (minimyth2).
OS is minimal sw. stack (no systemd; sysV rc scripts init style) required by **App.** to run under weston.
Currently all works ok when I:
1. log into tty...Hi,
Im trying to automate startup of my app in Linux based appliance (minimyth2).
OS is minimal sw. stack (no systemd; sysV rc scripts init style) required by **App.** to run under weston.
Currently all works ok when I:
1. log into tty as _User1_
1. kick **weston-launch**
1. start **App.** i.e. in weston terminal
I want to automate above to auto-start **App.** under user _User1_ at appliance boot.
I'm trying to achieve this since last few days without success.
My concept is: use in rc scripts **weston-launch** to start weston compositor & expect from **weston-launch** required setup of things like auto creation of weston IPC socket at _/var/run/xdg/User1_ needed by **App** to communicate with compositor, etc.
`/var/run/xdg/User1` dir is prior created with owner of _User1_ and 0700 rights.
Having all this i want to start in rc.scripts App as _User1_ with _XGD_RUNDIR=/var/run/xdg/User1_
env. set.
Unfortunately above hangs system at boot.
I found a bit relevant report here (#410) and i'm following
https://gitlab.freedesktop.org/wayland/weston/-/issues/401#note_506239
I started to verify steep-by-steep.
Launching term as root and typing:
`weston-launch --tty=/dev/tty1 --user="User1"`
makes terminal hang...
Is this bug or i'm doing something wrong?https://gitlab.freedesktop.org/wayland/weston/-/issues/466Weston fails to wake up second monitor's display, and then crashes after kill...2021-02-16T05:29:36ZSiva SundaramWeston fails to wake up second monitor's display, and then crashes after killing its processEnvironment:
Kernel: Linux 5.10.9-201 (x68-64)
OS: Fedora Release 33
Weston Version: 8.0.0-6
Wayland X Org Server Version: 1.20.10-1
GPU: AMD Radeon 550 (amdgpu) - two monitors, one connected to Display Port and and the other connected ...Environment:
Kernel: Linux 5.10.9-201 (x68-64)
OS: Fedora Release 33
Weston Version: 8.0.0-6
Wayland X Org Server Version: 1.20.10-1
GPU: AMD Radeon 550 (amdgpu) - two monitors, one connected to Display Port and and the other connected to DVI output
Description: Running weston compositor using 2 monitors w/Xwayland module loaded. Weston compositor enters the sleep mode after the set idle time (30 sec.) has expired, and then when trying to wake the compositor up w/the keyboard or pointer movement, the second monitor fails to wake up (screen stays blank). Subsequently, after killing the weston process (killall weston), the OS crashes
[weston.ini](/uploads/df7e2699d7dd09aaf3f58f3dda9bc6e5/weston.ini)
[weston.log](/uploads/66c5de8f7e55b1173223c66fee1f69b1/weston.log)
[lshw.out](/uploads/1e84f8556b01f048465d6bd0a08f2729/lshw.out)https://gitlab.freedesktop.org/wayland/weston/-/issues/464Wayland firefox and thunderbird outputs are scrambled2020-12-30T12:29:56ZJohn GoodWayland firefox and thunderbird outputs are scrambledNewest versions of Firefox (e.g. 78.5.0) and Thunderbird (e.g. 78.5.1) are sometimes displayed scrambled (dots, lines, diagonally inclined text and images, black screen, rapidly blinking...).
Steps to reproduce: almost often when resizi...Newest versions of Firefox (e.g. 78.5.0) and Thunderbird (e.g. 78.5.1) are sometimes displayed scrambled (dots, lines, diagonally inclined text and images, black screen, rapidly blinking...).
Steps to reproduce: almost often when resizing the applications and then rapidly sweeping the cursor through them. Also, sometimes this happens when the applications are first shown or when typing text. When the applications get refreshed, they recover a normal aspect (thus, it is impossible to take a screenshot of the artifacts). The same applications are shown normally when running under XWayland. The problem seems independent of the graphic card (it appears with nvidia under nouveau and intel).https://gitlab.freedesktop.org/wayland/weston/-/issues/463Multiple colour shades coming when connecting 1280x800 resolution display2021-01-04T13:12:19ZBhanuchander UdhayakumarMultiple colour shades coming when connecting 1280x800 resolution displayI am just trying to integrate a HDMI display having 1280 x 800 resolution : [display info](https://www.waveshare.com/wiki/10.1inch_HDMI_LCD_(B)_(with_case)) with Google coral developer board : [link](https://coral.ai/products/dev-board/)...I am just trying to integrate a HDMI display having 1280 x 800 resolution : [display info](https://www.waveshare.com/wiki/10.1inch_HDMI_LCD_(B)_(with_case)) with Google coral developer board : [link](https://coral.ai/products/dev-board/).
After changing the resolution (1280 x 800) in the file : **weston.ini**. while connecting the display to the board i can get the display modes as shown below... (but not showing my current resolution 1280x800)
```
mendel@mocha-ibis:~$ cat /sys/class/drm/card0-HDMI-A-1/modes
3840x2160
1920x1080
1280x720
720x480
```
The display started showing multiple colour shades which is not expected one...
Please guide me / suggest me, Is any thing there to be configured to fix this issue..https://gitlab.freedesktop.org/wayland/weston/-/issues/462Follow-up from "Draft: Framework changes needed for HDR"2021-02-25T13:16:06ZPekka Paalanenppaalanen@gmail.comFollow-up from "Draft: Framework changes needed for HDR"The following discussion from !132 should be addressed:
- [ ] @harishkrupo started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/132#note_720648):
> Can avoid two texture lookups by replacing with:
...The following discussion from !132 should be addressed:
- [ ] @harishkrupo started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/132#note_720648):
> Can avoid two texture lookups by replacing with:
> ```suggestion:-1+0
> vec2 uv = texture2D(tex1, v_texcoord).rg - vec2(0.5);
> u = uv.x;
> v = uv.y;
> ```
I'm creating this issue for the three texture lookup optimizations that could be done as proposed above and in !132.
Before these can land, I would like to ensure that they are all covered by CI first. I think `XYUV` is the missing piece in tests.
More things to do here:
- consolidate magic values: https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/132#note_771939
- implement shader garbage collection for too-long-unused shadersPekka Paalanenppaalanen@gmail.comPekka Paalanenppaalanen@gmail.comhttps://gitlab.freedesktop.org/wayland/weston/-/issues/460Follow-up from "Allow using launcher-direct on non-default seat with non-root...2021-01-20T10:06:02ZPekka Paalanenppaalanen@gmail.comFollow-up from "Allow using launcher-direct on non-default seat with non-root user"The following discussion from !494 should be addressed:
- [ ] @marius.vlad0 started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/494#note_726625): (+1 comment)
> Reviewed-by: Marius Vlad <marius.vl...The following discussion from !494 should be addressed:
- [ ] @marius.vlad0 started a [discussion](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/494#note_726625): (+1 comment)
> Reviewed-by: Marius Vlad <marius.vlad@collabora.com>
>
> Btw, I think this is pretty cool to have/use. Also, there are other users of launcher-direct.
>
> I've discovered some kind of quirk while using it and in revolves around multiple outputs for that DRM-node. With udev you can tell libinput, which output to assign a specific input by using `ENV{WL_OUTPUT}`. Had a to dig a bit in libpinput to find out this.
>
> Anyway, think maybe a follow-up doc page for this non-root launcher-direct might be useful to have, or an example with the udev rule?
Make the doc. Maybe a page in the Sphinx docs?Pekka Paalanenppaalanen@gmail.comPekka Paalanenppaalanen@gmail.comhttps://gitlab.freedesktop.org/wayland/weston/-/issues/457Moving client leaves previous image on ivi-shell2020-11-30T01:54:22ZJunMoving client leaves previous image on ivi-shellI've changed a SoC chip from included arm gpu to imagination gpu recently.
I ran weston-simple-shm and moved the location from <0,0,250,250> to <100,100,250,250> with LayerManagerControl tool.
On chip with arm gpu, the previous image(0,0...I've changed a SoC chip from included arm gpu to imagination gpu recently.
I ran weston-simple-shm and moved the location from <0,0,250,250> to <100,100,250,250> with LayerManagerControl tool.
On chip with arm gpu, the previous image(0,0,250,250) is cleared, but on new chip with imagination gpu, the previous image remains.
So I reported to imagination that there is an issue, but they said that there is different implementation each vendor.
> "for EGL_BUFFER_DESTROYED, the spec. leave each GPU vendor decide if they want to destroy color buffer contents or change by the swapbuffer operation. From our previous debugging experience on ARM, it choose the first one.(destroy color buffer contents which might imply color buffer clear) IMG implement the second one.(changed by the swapbuffer operation which imply we just keep the content on color buffer so we will see the previous content) So if ARM EGL_SWAP_BEHAVIOR is this and if they will do color buffer clear for the EGL_BUFFER_DESTROYED swap behavior, we won't see this issue on ARM."
The arm gpu clears color buffer immediately, but img gpu keeps color buffer until eglSwapBuffers(). So If the GL_BLEND is enabled in first draw-call of gles context, img gpu refer to the previous image(framebuffer) and blending them. I attached dump of egl/gles calls.
![1606451068](/uploads/e2f3ccfa5b189f51f24045e26db91542/1606451068.png)
Additionally, I ran same test with pixman renderer and there is still previous image. So I confused that is this intended? or am I missing something?
Thanks.https://gitlab.freedesktop.org/wayland/weston/-/issues/456Define a startup file to launch the application after weston-launch is started.2022-03-04T10:09:26Zsajcho-aarch64Define a startup file to launch the application after weston-launch is started.After launching weston-launch there is some way to launch the application after launching weston.
Multiple keyboard shortcuts to launch different applications.
Thank you.After launching weston-launch there is some way to launch the application after launching weston.
Multiple keyboard shortcuts to launch different applications.
Thank you.https://gitlab.freedesktop.org/wayland/weston/-/issues/454Window position incorrect after restoring from fullscreen mode2022-06-20T17:59:27ZMarcel KorpelWindow position incorrect after restoring from fullscreen modeAfter returning from fullscreen mode, the window position of the restored window is changed: the window is about 20 pixels moved to the left and the top.
To reproduce, open a browser, e.g. Chromium, press F11 to go to fullscreen mode, a...After returning from fullscreen mode, the window position of the restored window is changed: the window is about 20 pixels moved to the left and the top.
To reproduce, open a browser, e.g. Chromium, press F11 to go to fullscreen mode, and return by pressing F11 again. Do this several times in a row. The first time, the window position of a maximized Chromium window still seems correct, but every other time you can see the window move up and left.https://gitlab.freedesktop.org/wayland/weston/-/issues/453`libweston-10.so.0: cannot open shared object file: No such file or directory`2021-08-24T05:23:18ZPaul Menzel`libweston-10.so.0: cannot open shared object file: No such file or directory`Using Debian Sid/unstable, and building and installing Weston 9.0.0-54-gcf83b48b to `/usr/local`, executing `/usr/local/bin/weston` fails:
# which weston
/usr/local/bin/weston
# weston
weston: error while loading shared ...Using Debian Sid/unstable, and building and installing Weston 9.0.0-54-gcf83b48b to `/usr/local`, executing `/usr/local/bin/weston` fails:
# which weston
/usr/local/bin/weston
# weston
weston: error while loading shared libraries: libweston-10.so.0: cannot open shared object file: No such file or directory
The shared library is installed
# find /usr -name "libweston-10.so.0"
/usr/local/lib/x86_64-linux-gnu/libweston-10.so.0
and setting `LD_LIBRARY_PATH=/usr/local/lib/x86_64-linux-gnu/`, Weston starts.
Can Weston do something about that, or is that a problem with Debian’s multi-arch setup?