Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Very strange crash in sprite renderer (on tegra K1) on unity 5.1.3p3

Discussion in 'Android' started by MXAdd, Jan 22, 2016.

  1. MXAdd

    MXAdd

    Joined:
    Apr 23, 2015
    Posts:
    74
    Hi

    We experience very strange crash on Android device (android 4.4.4, Tegra K1, 4GB of RAM)
    callstack (always) is:

    Code (CSharp):
    1.  
    2. I/DEBUG   (  141): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    3. I/DEBUG   (  141): Build fingerprint: 'nvidia/ardbeg/ardbeg:4.4.4/KTU84P/eng.yin.20160109.182020:eng/debug,release-keys'
    4. I/DEBUG   (  141): Revision: '0'
    5. I/DEBUG   (  141): pid: 3003, tid: 3034, name: UnityGfxDeviceW  >>> com.censored.none <<<
    6. I/DEBUG   (  141): signal 7 (SIGBUS), code 1 (BUS_ADRALN), fault addr 975ed436
    7. I/DEBUG   (  141):     r0 000b000b  r1 8cd15ee4  r2 fffffff4  r3 00140015
    8. I/DEBUG   (  141):     r4 8cd15f20  r5 975ed436  r6 0000000b  r7 0000001b
    9. I/DEBUG   (  141):     r8 001160e4  r9 0000000b  sl 0025c420  fp 748af410
    10. I/DEBUG   (  141):     ip 75a38908  sp 75a38920  lr 707e2a14  pc 7088eb08  cpsr 800e0010
    11. I/DEBUG   (  141):     d0  0004000100030002  d1  0003000100000000
    12. I/DEBUG   (  141):     d2  0006000700050001  d3  0004000600050000
    13. I/DEBUG   (  141):     d4  0000000000000000  d5  0000000000000000
    14. I/DEBUG   (  141):     d6  0000000000000000  d7  0000000000000000
    15. I/DEBUG   (  141):     d8  0000000000000000  d9  0000000000000000
    16. I/DEBUG   (  141):     d10 0000000000000000  d11 0000000000000000
    17. I/DEBUG   (  141):     d12 0000000000000000  d13 0000000000000000
    18. I/DEBUG   (  141):     d14 0000000000000000  d15 0000000000000000
    19. I/DEBUG   (  141):     d16 000000000007d400  d17 0000000000003200
    20. I/DEBUG   (  141):     d18 0000000000080600  d19 0000000000000000
    21. I/DEBUG   (  141):     d20 0000000000000000  d21 bf800000bf80419a
    22. I/DEBUG   (  141):     d22 0000000000000000  d23 00000000bca40106
    23. I/DEBUG   (  141):     d24 00000000be049ae6  d25 00000000a6800000
    24. I/DEBUG   (  141):     d26 3e049ae600000000  d27 0000000000000000
    25. I/DEBUG   (  141):     d28 0000000000000000  d29 00000000baa1b5c8
    26. I/DEBUG   (  141):     d30 3f4ec294bf9ed825  d31 3f8000003f0e38e3
    27. I/DEBUG   (  141):     scr 60000012
    28. I/DEBUG   (  141):
    29. I/DEBUG   (  141): backtrace:
    30. I/DEBUG   (  141):     #00  pc 002a5b08  /data/app-lib/com.censored.none-1/libunity.so (GfxDevice::DynamicBatchSprite(Matrix4x4f const*, SpriteVertex const*, unsigned int, unsigned short const*, unsigned int, ColorRGBA32)+208)
    31. I/DEBUG   (  141):     #01  pc 0046d85c  /data/app-lib/com.censored.none-1/libunity.so (GfxDeviceWorker::RunCommand(ThreadedStreamBuffer&)+6340)
    32. I/DEBUG   (  141):     #02  pc 004719e4  /data/app-lib/com.censored.none-1/libunity.so (GfxDeviceWorker::Run()+20)
    33. I/DEBUG   (  141):     #03  pc 0046bf80  /data/app-lib/com.censored.none-1/libunity.so (GfxDeviceWorker::RunGfxDeviceWorker(void*)+80)
    34. I/DEBUG   (  141):     #04  pc 003ef9a0  /data/app-lib/com.censored.none-1/libunity.so (Thread::RunThreadWrapper(void*)+84)
    35. I/DEBUG   (  141):     #05  pc 0000d1b0  /system/lib/libc.so (__thread_entry+72)
    36. I/DEBUG   (  141):     #06  pc 0000d348  /system/lib/libc.so (pthread_create+240)
    37.  
    crash happends ALWAYS after playing the level for a while (3 minutes or so)
    (essencially unsing sprites renderer for few minutes ...)

    there is plenty of free RAM on device at the moment of crash (our game utilises mere 500MB of ram, while there is still about 2GB of ram free (system eats another 500MB), so this is no out-of-memory issue)

    we use unity 5.1.3p3 (but we'v tried on 5.1.3f1 - still that same)
    and for various reasons we cannot migrate to higher version of unity at the moment.

    Any idea why the crash happends ? (seems like the NEON tries to read/write some unaligned memory while transfering sprite data to openGL buffer (aparently returned pointer is no 16bit aligned ??))

    Any idea how to prevent it ? (other than not using sprite renderer at all :p)