Enable g2d renderer feature then weston freeze

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Enable g2d renderer feature then weston freeze

Jump to solution
3,000 Views
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 Kudos
Reply
1 Solution
2,682 Views
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

View solution in original post

9 Replies
2,840 Views
hankwang
Contributor V

Hey,

      Does anyone have any suggestions?

Thanks

0 Kudos
Reply
2,998 Views
hankwang
Contributor V

Here is a photo of the error message.

0 Kudos
Reply
2,961 Views
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 Kudos
Reply
2,942 Views
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 Kudos
Reply
2,824 Views
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 Kudos
Reply
2,808 Views
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 Kudos
Reply
2,717 Views
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 Kudos
Reply
2,683 Views
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,661 Views
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 Kudos
Reply