qq_32763075 2022-01-12 14:37 采纳率: 0%
浏览 377

app静置若干小时突然报错GL error: Out of memory!

开发app过程中发现每次第二天来上班的时候,app已经挂了,设备的以太网也自己关闭了,纳闷是怎么回事,导出了一下log发现

01-11 22:00:03.066 E/Fence   (  153): Throttling EGL Production: fence 85 didn't signal in 3000 ms
01-11 22:00:55.567 E/OpenGLRenderer(25946): GL error:  Out of memory!
01-11 22:00:55.568 F/OpenGLRenderer(25946): GL errors! frameworks/base/libs/hwui/renderthread/CanvasContext.cpp:550
01-11 22:00:55.569 F/libc    (25946): Fatal signal 6 (SIGABRT), code -6 in tid 25973 (RenderThread)
01-11 22:00:55.570 W/        (  180): debuggerd: handling request: pid=25946 uid=10044 gid=10044 tid=25973
01-11 22:00:55.669 F/DEBUG   (26129): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
01-11 22:00:55.670 F/DEBUG   (26129): Build fingerprint: 'Android/rk3128_box/rk3128_box:7.1.2/NHG47K/linlin08311438:userdebug/test-keys'
01-11 22:00:55.670 F/DEBUG   (26129): Revision: '0'
01-11 22:00:55.671 F/DEBUG   (26129): ABI: 'arm'
01-11 22:00:55.672 F/DEBUG   (26129): pid: 25946, tid: 25973, name: RenderThread  >>> cn.cleartv.intercom <<<
01-11 22:00:55.672 F/DEBUG   (26129): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
01-11 22:00:55.691 F/DEBUG   (26129): Abort message: 'GL errors! frameworks/base/libs/hwui/renderthread/CanvasContext.cpp:550'
01-11 22:00:55.692 F/DEBUG   (26129):     r0 00000000  r1 00006575  r2 00000006  r3 00000008
01-11 22:00:55.692 F/DEBUG   (26129):     r4 925ff978  r5 00000006  r6 925ff920  r7 0000010c
01-11 22:00:55.692 F/DEBUG   (26129):     r8 9266c7c0  r9 00000000  sl aa96123c  fp aa961238
01-11 22:00:55.692 F/DEBUG   (26129):     ip 00000002  sp 925fef38  lr aacd6267  pc aacd8ac4  cpsr 20070010
01-11 22:00:55.729 F/DEBUG   (26129): 
01-11 22:00:55.729 F/DEBUG   (26129): backtrace:
01-11 22:00:55.729 F/DEBUG   (26129):     #00 pc 00049ac4  /system/lib/libc.so (tgkill+12)
01-11 22:00:55.729 F/DEBUG   (26129):     #01 pc 00047263  /system/lib/libc.so (pthread_kill+34)
01-11 22:00:55.730 F/DEBUG   (26129):     #02 pc 0001d515  /system/lib/libc.so (raise+10)
01-11 22:00:55.730 F/DEBUG   (26129):     #03 pc 00019061  /system/lib/libc.so (__libc_android_abort+34)
01-11 22:00:55.730 F/DEBUG   (26129):     #04 pc 00017024  /system/lib/libc.so (abort+4)
01-11 22:00:55.730 F/DEBUG   (26129):     #05 pc 0000c3c9  /system/lib/libcutils.so (__android_log_assert+112)
01-11 22:00:55.730 F/DEBUG   (26129):     #06 pc 000240d7  /system/lib/libhwui.so
01-11 22:00:55.731 F/DEBUG   (26129):     #07 pc 00025ad3  /system/lib/libhwui.so
01-11 22:00:55.731 F/DEBUG   (26129):     #08 pc 00029095  /system/lib/libhwui.so (_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv+80)
01-11 22:00:55.731 F/DEBUG   (26129):     #09 pc 0000e345  /system/lib/libutils.so (_ZN7android6Thread11_threadLoopEPv+140)
01-11 22:00:55.731 F/DEBUG   (26129):     #10 pc 00066685  /system/lib/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+80)
01-11 22:00:55.732 F/DEBUG   (26129):     #11 pc 00046d33  /system/lib/libc.so (_ZL15__pthread_startPv+22)
01-11 22:00:55.732 F/DEBUG   (26129):     #12 pc 00019aad  /system/lib/libc.so (__start_thread+6)

以为是内存泄漏了,直接挂profiler放了一晚上,最后图像是这样的:

img

看起来内存是没什么问题的,突然就死掉了

不过重点不是app自己死了,他引发了各种系统服务ANR,watchDog打了个日志直接把系统重启了

img

这个现象大概有如下特点:

  • app静置后出现该现象的事件从一个多小时到十多个小时不等
  • 每次出现问题后系统会进入几分钟到几十分钟不等的无限ANR(大部分是android.intent.action.TIME_TICK在com.android.systemui中的ANR)和重启各种系统服务的过程,一般会连续重启好几次
  • 只在某个类型的板卡设备中出现(不清楚是)

帮忙测试的同事跟我反馈,不装我们app就不会有问题,挂了几天都没事,所以觉得应该还是我这app做错了什么事。
百度发现有人也遇到过类似情况,不过他是文件句柄fd泄露了,我这边也测试了一下并没有什么问题。

这阵子我在尝试把代码一部分一部分注释掉看看是哪里引发的问题。有没有人见过这种情况,可能是什么导致的?

  • 写回答

2条回答 默认 最新

  • 方~ 圓 2023-09-25 10:29
    关注

    应该是rk3128 gpu模块的问题,持续长时间频繁刷新导致。如时间显示不要到秒级。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月12日

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?