WAM crash on Raspberry Pi 3 / master

Description

I'm getting this crash on current AGL master, on RPi3:

Aug 31 11:52:13 raspberrypi3 kernel: Unhandled prefetch abort: breakpoint debug exception (0x002) at 0x728fd1c8
Aug 31 11:52:13 raspberrypi3 kernel: audit: type=1701 audit(1567252333.000:11): auid=4294967295 uid=1001 gid=1001 ses=4294967295 subj=System pid=452 comm="WebAppMgr" exe="/usr/bin/WebAppMgr" sig=5 res=1
Aug 31 11:52:13 raspberrypi3 audit[452]: ANOM_ABEND auid=4294967295 uid=1001 gid=1001 ses=4294967295 subj=System pid=452 comm="WebAppMgr" exe="/usr/bin/WebAppMgr" sig=5 res=1
Aug 31 11:52:13 raspberrypi3 WebAppMgr[452]: [0831/115213.014582:FATAL:wayland_buffer_manager.cc(386)] zwp_linux_buffer_params.create failed

Build config:

Build Configuration:
BB_VERSION = "1.40.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "arm-agl-linux-gnueabi"
MACHINE = "raspberrypi3"
DISTRO = "poky-agl"
DISTRO_VERSION = "8.90.0+snapshot-20190831"
TUNE_FEATURES = "arm armv7ve vfp thumb neon vfpv4 callconvention-hard"
TARGET_FPU = "hard"
meta-raspberrypi = "HEAD:c71d79efc5a06a0c896c278c94f5b14413bb4d69"
meta-qt5 = "HEAD:1520d5b2b2beec5e1c3209d3178219e93ef08bca"
meta-agl-profile-graphical-qt5
meta-agl-profile-graphical = "HEAD:dcda26bd13b88f51a197324d4894fe189f9dc504"
meta-pipewire
meta-html5-framework = "HEAD:ca764441c712804d00562f838a4ef00c881750e9"
meta-agl-demo = "HEAD:63d61630c728adaa3465c8f319e586a765d9804b"
meta-oe
meta-multimedia
meta-networking
meta-python
meta-filesystems = "HEAD:9b3b907f30b0d5b92d58c7e68289184fda733d3e"
meta-agl-profile-core
meta-agl-distro
meta-agl-bsp = "HEAD:dcda26bd13b88f51a197324d4894fe189f9dc504"
meta-security = "HEAD:31dc4e7532fa7a82060e0b50e5eb8d0414aa7e93"
meta-perl = "HEAD:9b3b907f30b0d5b92d58c7e68289184fda733d3e"
meta-security
meta-app-framework = "HEAD:dcda26bd13b88f51a197324d4894fe189f9dc504"
meta
meta-poky = "HEAD:d43a86de1a37ce9daede726a49231547a21429a5"

Environment

None

Activity

Walt Miner 
November 19, 2019 at 4:21 PM

Close for HH 8.0.3 release

Antia Puentes 
October 9, 2019 at 8:37 AM

The Gerrit CL is  now merged for Halibut and master.  Marking the issue as fixed.

Antia Puentes 
October 7, 2019 at 2:26 PM

Pull request was accepted. Gerrit CL to bump the chromium version can be found here: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-devel/+/22582

 

Antia Puentes 
October 7, 2019 at 1:39 PM

Pull request reverting the offending commit "[BACKPORT] [ozone/wayland] Use gbm with in-process-gpu mode" created:

https://github.com/webosose/chromium68/pull/20

The behaviour introduced by that commits breaks web apps in the Raspberry Pi. For this to work correctly we have to backport:

 

which it is not straightforward, because the commit is recent and depends on refactorizations and changes not present in our repository.
 
Specifically, to avoid the crash, we are interested in lines 52-65  https://chromium-review.googlesource.com/c/chromium/src/+/1795326/11/ui/ozone/platform/wayland/host/wayland_zwp_linux_dmabuf.cc#b53 
but it is recommended to backport the whole patch. For this reason and the ones commented above, we are now reverting the problematic commit with the intention of recovering those in the future once we use a more recent chromium version.

Antia Puentes 
October 3, 2019 at 4:21 PM

Upstream patch "[ozone/wayland] Fix crash when there is no zwp_linux_dmabuf " does not fix the issue.

The backtrace for the original crash is:

(gdb) bt
#0 operator() () at ./../../git/src/base/logging.cc:856
#1 logging::LogMessage::~LogMessage () at ./../../git/src/base/logging.cc:856
#2 0x71879ce6 in ui::WaylandBufferManager::CreateFailed () at ../../git/src/ui/ozone/platform/wayland/wayland_buffer_manager.cc:386
#3 0x706f1b5c in ffi_call_VFP () at ../libffi-3.2.1/src/arm/sysv.S:377
#4 0x706f21f0 in ffi_call (cif=0x7ede30e4, fn=<optimized out>, rvalue=0x0, avalue=<optimized out>) at ../libffi-3.2.1/src/arm/ffi.c:344
#5 0x7306585c in wl_closure_invoke () at ../../git/src/third_party/wayland/src/src/connection.c:935
#6 0x73063b64 in dispatch_event () at ../../git/src/third_party/wayland/src/src/wayland-client.c:1310
#7 0x73064616 in dispatch_queue () at ../../git/src/third_party/wayland/src/src/wayland-client.c:1456
#8 wl_display_dispatch_queue_pending () at ../../git/src/third_party/wayland/src/src/wayland-client.c:1698
#9 0x7187bae8 in ui::WaylandConnection::OnFileCanReadWithoutBlocking () at ../../git/src/ui/ozone/platform/wayland/wayland_connection.cc:344
#10 0x71888698 in WaylandSourceDispatch () at ../../git/src/ui/ozone/platform/wayland/wayland_fd_watcher_glib.cc:37
#11 0x70a384ce in g_main_dispatch (context=0x207acb0) at ../../glib-2.58.0/glib/gmain.c:3182
#12 g_main_context_dispatch (context=context@entry=0x207acb0) at ../../glib-2.58.0/glib/gmain.c:3847
#13 0x70a38766 in g_main_context_iterate (context=context@entry=0x207acb0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../glib-2.58.0/glib/gmain.c:3920
#14 0x70a387c8 in g_main_context_iteration (context=0x207acb0, may_block=1) at ../../glib-2.58.0/glib/gmain.c:3981
#15 0x72925d30 in base::MessagePumpGlib::Run () at ./../../git/src/base/message_loop/message_pump_glib.cc:305
#16 0x7293fff0 in base::RunLoop::Run () at ./../../git/src/base/run_loop.cc:102
#17 0x75ce84a8 in app_runtime::AppRuntimeBrowserMainParts::MainMessageLoopRun () at ../../git/src/neva/app_runtime/browser/app_runtime_browser_main_parts.cc:188
#18 0x721013f6 in content::BrowserMainLoop::RunMainMessageLoopParts () at ./../../git/src/content/browser/browser_main_loop.cc:978
#19 0x721014fc in content::BrowserMainRunnerImpl::Run () at ./../../git/src/content/browser/browser_main_runner_impl.cc:169
#20 0x721081e0 in content::BrowserMain () at ./../../git/src/content/browser/browser_main.cc:61
#21 0x720663ce in content::RunBrowserProcessMain () at ../../git/src/content/app/content_main_runner_impl.cc:624
#22 0x720678ee in content::ContentMainRunnerImpl::Run () at ../../git/src/content/app/content_main_runner_impl.cc:973
#23 0x7290af36 in service_manager::Main () at ../../git/src/services/service_manager/embedder/main.cc:461
#24 0x71a7edda in content::ContentMain () at ../../git/src/content/app/content_main.cc:19
#25 0x728fd75c in webos::WebOSMain::Run () at ../../git/src/webos/app/webos_main.cc:53
#26 0x70e56102 in SharedBrowserProcessRuntime::run (this=<optimized out>, argc=6, argv=0x7ede3a54) at /usr/src/debug/wam/git-r0/git/src/agl/WebRuntimeAGL.cpp:456
#27 0x70e56a30 in WebRuntimeAGL::run (this=0x7ede38dc, argc=6, argv=0x7ede3a54) at /usr/src/debug/wam/git-r0/git/src/agl/WebRuntimeAGL.cpp:485
#28 0x0047da9a in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Fixed

Details

Assignee

Reporter

Labels

Hardware Platform(s) Affected

Raspberry Pi 3

Affects versions

Priority

Created August 31, 2019 at 11:55 AM
Updated November 19, 2019 at 4:21 PM
Resolved October 9, 2019 at 8:37 AM