Enable g2d renderer feature then weston freeze

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Enable g2d renderer feature then weston freeze

跳至解决方案
2,799 次查看
hankwang
Contributor V

Hi,

      We have BSP 5.15.52_2.1.0 and run qt browser and qt virtual keyboard. We would restart qt browser and qt virtual keyboard several times, then weston shows " ensure_suface_buffer_is_ready: Warning :wait for fence fs=49". We found that this occurs when use-g2d=1. This doesn't occur when use-g2d=0.

     We used BSP 5.4.47_2.2.0 , use-g2d =1 and qt5. We didn't see same symptom. We would like to know what is different about use-g2d between 5.15.52 and 5.4.47.

Note : This symptom occurs very quickly when we enable blur using the qt virtual keyboard feature.We guess whether there is a conflict between the use-g2d function and the blur function in BSP 5.15.52 and QT6.
But disable blur , we would need to restart hundreds of times qt browser and qt virtual keyboard. We could see weston freeze.

 

0 项奖励
回复
1 解答
2,481 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

Please reffer to attached patch to solve weston freeze, and include it on the following path of your Yocto build:

<imx-yocto-bsp-5.15.71-2.2.0>/sources/meta-freescale/recipes-graphics/wayland/weston/

Also ensure to modify he weston recipe to also consider the inclusion of the patch:

<imx-yocto-bsp-5.15.71-2.2.0>/sources/meta-freescale/recipes-graphics/wayland/weston_10.0.0.imx.bb
SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \
file://0001-g2d-renderer.c-Include-sys-stat.h.patch \
file://0001-g2d-renderer-weston-freeze-when-do-ctrl-c-strees-tes.patch \
"

After this, please clear weston recipe (bitbake -c weston) and rebuild full image.

 

Regards

在原帖中查看解决方案

9 回复数
2,639 次查看
hankwang
Contributor V

Hey,

      Does anyone have any suggestions?

Thanks

0 项奖励
回复
2,797 次查看
hankwang
Contributor V

Here is a photo of the error message.

0 项奖励
回复
2,760 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

You should take as based the latest bsp 5.15.71, in order to make sure qt is working, warning does not matter if it show an error please tell us.

https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applicat...

 

Regards

0 项奖励
回复
2,741 次查看
hankwang
Contributor V

Hi ,

       Thank you for your reply. Yes. We tested the new bsp 5.15.71_2.2.0 and have the same problem.

       Our CPU is i.MX8MP and we have the same problem on 8MP EVK board. However, 8MP EVK board bsp

        needs to add the following packages:

        IMAGE_INSTALL:append = " packagegroup-qt6-webengine qtwebengine-tools qtvirtualkeyboard"

0 项奖励
回复
2,623 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

I wasn't able to replicate the issue with 5.15.71 including the additions for qtbrowser. I'm preparing an environment with 5.15.52 to test. Could you please give us a full reproduction steps including log when crash? Additionally, could you please try testing with QT5 instead of QT6? we would like to confirm if there are incompatibilities with QT6 libraries and GPU drivers to report this with graphics team.   Best regards!

0 项奖励
回复
2,607 次查看
hankwang
Contributor V

Hey,

           Here is qt test tool that you can run on i.MX8MP EVK board using BSP 5.15.71 or 5.15.52. You need to add

           webenigne and virtual keyboard package.

          IMAGE_INSTALL:append = " packagegroup-qt6-webengine qtwebengine-tools qtvirtualkeyboard"

           When you boot into the filesystem,  you can execute test_weston.sh. About 10 times or so, the system will freeze.

           When you disable use-g2d and reboot system. You can execute test_weston.sh. The system will not freeze.

           The different is enabling/disabling the use-g2d feature.

            Note: We run the tool with QT5.15. We don't see the system freeze.

0 项奖励
回复
2,516 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hi,

By manually running FastBlur test with gdb, following message was shown after 3-5 executions:
Failed to create wl_display (Connection refused)

After this, weston freeze. With use-gd2=0 on weston.ini, issue does not occur.

This is a bug with qt6 and Will back at you when I have an answer for that, issue does not occur with Qt5.

Regards

0 项奖励
回复
2,482 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

Please reffer to attached patch to solve weston freeze, and include it on the following path of your Yocto build:

<imx-yocto-bsp-5.15.71-2.2.0>/sources/meta-freescale/recipes-graphics/wayland/weston/

Also ensure to modify he weston recipe to also consider the inclusion of the patch:

<imx-yocto-bsp-5.15.71-2.2.0>/sources/meta-freescale/recipes-graphics/wayland/weston_10.0.0.imx.bb
SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \
file://0001-g2d-renderer.c-Include-sys-stat.h.patch \
file://0001-g2d-renderer-weston-freeze-when-do-ctrl-c-strees-tes.patch \
"

After this, please clear weston recipe (bitbake -c weston) and rebuild full image.

 

Regards

2,460 次查看
hankwang
Contributor V

Hi ,

     Thank you for your reply.

     Yes , This patch fixes that problem. But is this workaround?

     Since BSP 5.4.47 has same code ( sync_wait(surface->acquire_fence_fd, -1),  but it works fine with QT

     5.15 (enable G2D).

    I think it may be  that  NXP' G2D  does not support QT6. This is because QT6 can run on weston's render.

    but QT6 can not run on NXP's G2D render. 

    

0 项奖励
回复