Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MaterialContainerTransform] Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x20 in tid 6227 (RenderThread) #4538

Open
mwshubham opened this issue Jan 15, 2025 · 8 comments

Comments

@mwshubham
Copy link

https://issuetracker.google.com/issues/388685478

Description:
This is happening from when user goes from list to detail and then click back.
The list screen is simple android views like recycler view and card.
However, detail view contain some native android views followed by web view and ads component (mostly web as well).
Also, during trasition we have transition via MaterialContainerTransform.

Android API version: Mostly All

Material Library version: 1.12.0

Device: Mostly All

Stack Trace:

01-09 13:33:30.491 11587 11321 11321 F DEBUG   : pid: 6018, tid: 6227, name: RenderThread  >>> com.dummypackagenamehere <<<
01-09 13:33:30.491 11587 11321 11321 F DEBUG   : uid: 11587
01-09 13:33:30.491 11587 11321 11321 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0000000000000020
01-09 13:33:30.491 11587 11321 11321 F DEBUG   : Cause: null pointer dereference
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x0  0000000000000000  x1  0000000000000002  x2  0000000000000000  x3  0000000000000001
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x4  0000000000000001  x5  0000000000000000  x6  0000000000000001  x7  0000000000000001
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x8  19104d080693c318  x9  19104d080693c318  x10 0000006fa9b4d718  x11 000000000000006d
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x12 0000000000000004  x13 0000000000000001  x14 0000000000000000  x15 0000000000000000
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x16 0000006ef55d0690  x17 b400006e1aacaa80  x18 0000006e1a0b6000  x19 0000000000000000
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x20 0000000000000000  x21 0000006e1b8f8240  x22 0000000000000000  x23 0000000000000000
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x24 0000000000000000  x25 0000000000000000  x26 0000000000000000  x27 0000000000000000
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     x28 0000000000000000  x29 0000006e1b8f8140
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :     lr  0000006fa9879d14  sp  0000006e1b8f8140  pc  0000006fa9a13a80  pst 0000000060001000
01-09 13:33:30.491 11587 11321 11321 F DEBUG   : backtrace:
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #00 pc 0000000000413a80  /system/lib64/libhwui.so (SkSurface::getCanvas()+16) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #01 pc 0000000000279d10  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::GLFunctorDrawable::onDraw(SkCanvas*)+832) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #02 pc 0000000000310ec4  /system/lib64/libhwui.so (SkDrawable::draw(SkCanvas*, SkMatrix const*)+116) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #03 pc 0000000000682b78  /system/lib64/libhwui.so (skgpu::v1::Device::drawDrawable(SkCanvas*, SkDrawable*, SkMatrix const*)+344) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #04 pc 00000000002571c8  /system/lib64/libhwui.so (android::uirenderer::$_37::__invoke(void const*, SkCanvas*, SkMatrix const&)+136) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.491 11587 11321 11321 F DEBUG   :       #05 pc 0000000000254280  /system/lib64/libhwui.so (android::uirenderer::DisplayListData::draw(SkCanvas*) const+128) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #06 pc 000000000023cd24  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::RenderNodeDrawable::drawContent(SkCanvas*) const+1748) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #07 pc 000000000023d44c  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::RenderNodeDrawable::forceDraw(SkCanvas*) const+284) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #08 pc 000000000027f460  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaPipeline::renderLayersImpl(android::uirenderer::LayerUpdateQueue const&, bool)+496) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #09 pc 0000000000280710  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaPipeline::renderFrame(android::uirenderer::LayerUpdateQueue const&, SkRect const&, std::__1::vector<android::sp<android::uirenderer::RenderNode>, std::__1::allocator<android::sp<android::uirenderer::RenderNode> > > const&, bool, android::uirenderer::Rect const&, sk_sp<SkSurface>, SkMatrix const&)+608) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #10 pc 000000000027e554  /system/lib64/libhwui.so (android::uirenderer::skiapipeline::SkiaOpenGLPipeline::draw(android::uirenderer::renderthread::Frame const&, SkRect const&, SkRect const&, android::uirenderer::LightGeometry const&, android::uirenderer::LayerUpdateQueue*, android::uirenderer::Rect const&, bool, android::uirenderer::LightInfo const&, std::__1::vector<android::sp<android::uirenderer::RenderNode>, std::__1::allocator<android::sp<android::uirenderer::RenderNode> > > const&, android::uirenderer::FrameInfoVisualizer*)+484) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #11 pc 000000000028595c  /system/lib64/libhwui.so (android::uirenderer::renderthread::CanvasContext::draw()+1100) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #12 pc 00000000002885e4  /system/lib64/libhwui.so (std::__1::__function::__func<android::uirenderer::renderthread::DrawFrameTask::postAndWait()::$_0, std::__1::allocator<android::uirenderer::renderthread::DrawFrameTask::postAndWait()::$_0>, void ()>::operator()() (.c1671e787f244890c877724752face20)+900) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #13 pc 0000000000278124  /system/lib64/libhwui.so (android::uirenderer::WorkQueue::process()+580) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #14 pc 000000000029929c  /system/lib64/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+412) (BuildId: 06248f1e9d61afac9be0a44167687c27)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #15 pc 0000000000013480  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+416) (BuildId: 263dd89cc6d0dd79143c59615c4821ef)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #16 pc 00000000000fba4c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 3908c7c57fa04c64df24425cf16523cf)
01-09 13:33:30.492 11587 11321 11321 F DEBUG   :       #17 pc 000000000008e5f0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 3908c7c57fa04c64df24425cf16523cf)
@mwshubham mwshubham added the bug label Jan 15, 2025
@mwshubham
Copy link
Author

Related Open issue: #1249

@leticiarossi
Copy link
Contributor

could you provide a small sample app that reproduces the issue?

@mwshubham
Copy link
Author

Currently, This is happening in live project which might have complex views / web views etc. Given stack trace doesn't point to any one of the application component. Hard for now to replicate is small sample.

Based on the bug report: https://drive.google.com/file/d/1JRHxej3uR-puPOhGJwtx82apV-nvKVkp/view?usp=sharing
https://issuetracker.google.com/issues/388685478#comment4

Do you have any suggestion which component could be possible cause of this. Is their any way to get more information on this fatal error happening on the render thread to understand what render thread was processing.

@mwshubham
Copy link
Author

Interestingly, this is happening on material 1.12.0. while not happening on its predecessor 1.12.0-rc01

Assuming only change in both version is transition lib update.

https://mvnrepository.com/artifact/com.google.android.material/material/1.12.0-rc01
contains https://mvnrepository.com/artifact/androidx.transition/transition/1.5.0-rc01

While

https://mvnrepository.com/artifact/com.google.android.material/material/1.12.0
contains https://mvnrepository.com/artifact/androidx.transition/transition/1.5.0

@leticiarossi
Copy link
Contributor

@hunterstich could you take a look?

@mwshubham
Copy link
Author

Interestingly, this is happening on material 1.12.0. while not happening on its predecessor 1.12.0-rc01

Assuming only change in both version is transition lib update.

https://mvnrepository.com/artifact/com.google.android.material/material/1.12.0-rc01 contains https://mvnrepository.com/artifact/androidx.transition/transition/1.5.0-rc01

While

https://mvnrepository.com/artifact/com.google.android.material/material/1.12.0 contains https://mvnrepository.com/artifact/androidx.transition/transition/1.5.0

Apologies. This is now happening with 1.12.0-rc01 as well with the same frequency. Will check further.

@mwshubham
Copy link
Author

1.12.0 - May 02, 2024
Crash: Yes
Return Animation: Yes

1.12.0-rc01 - Apr 04, 2024
Crash: Yes
Return Animation: Yes

1.12.0-beta01 - Mar 21, 2024
Crash: Yes
Return Animation: Yes

1.12.0-alpha03 - Jan 10, 2024
Crash: Yes
Return Animation: Yes

1.12.0-alpha02 - Dec 06, 2023
Crash: Yes
Return Animation: Yes

1.12.0-alpha01 - Nov 13, 2023
Crash: No
Return Animation: No

1.6.1 - May 31, 2022
Crash: No
Return Animation: No

We reviewed multiple version available and found out starting from version 1.12.0-alpha02 return animation started working for us however, crash also started appearing. Previously we use to have 1.6.1 version. But with update of old fragment / activity libraries, our return animation stopped and hence we updated to latest stable i.e. 1.12.0 and from then the issue started coming.

For verification we have also released a beta with slide animation instead of MaterialContainerTransform to validate the same and found that our hypothesis is correct.

Requesting material and transition team to review this.

@mwshubham
Copy link
Author

@leticiarossi @hunterstich Can you please take a look. Let me know if you need more info.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants