E Crash signal 11 (SIGSEGV) on some Android devices

Hello,

i have crashes on some android devices without any real exception.

    8  09-08 07:29:02.269  1915  1934 I Unity   :
    9  09-08 07:29:02.363   357   357 I SFPerfTracer:      triggers: (rate: 2339:88055) (compose: 0:3) (post: 0:11) (render: 67:15798) (105:774648 frames) (106:829078)
   10: 09-08 07:29:02.363   357   357 D SFPerfTracer:        layers: (1:10) (FocusedStackFrame (0xb7a4f478): 0:4932)* (DimLayer (0xb7b10d90): 0:44)* (DimLayer (0xb7b004a0): 0:14)* (StatusBar (0xb7a79708): 0:95957)* (com.android.systemui.ImageWallpaper (0xb7aec9d8): 0:3554)* (DimLayer (0xb7ada060): 0:3129)* (DimLayer (0xb7adc250): 0:457)* (NavigationBar (0xb7b0b5f8): 0:185)* (de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity (0xb7ae1190): 0:42)* (SurfaceView (0xb7a7d1d8): 106:8538)
   11  09-08 07:29:02.510  1840  2348 D WifiStateMachine: starting scan for "Byte"WPA_PSK with 2462,5180
   12  09-08 07:29:02.599  1821  1834 D TCMD    : NL - Read 56 bytes from update socket.
   ..
   16  09-08 07:29:05.870  1840 28671 D NetlinkSocketObserver: NeighborEvent{elapsedMs=287989795, fe80::ca0e:14ff:fe62:20e, [C80E1462020E], RTM_NEWNEIGH, NUD_STALE}
   17  09-08 07:29:06.742   357   357 I SFPerfTracer:      triggers: (rate: 2339:88057) (compose: 0:3) (post: 0:11) (render: 67:15798) (5:774743 frames) (6:829180)
   18: 09-08 07:29:06.742   357   357 D SFPerfTracer:        layers: (1:10) (FocusedStackFrame (0xb7a4f478): 0:4932)* (DimLayer (0xb7b10d90): 0:44)* (DimLayer (0xb7b004a0): 0:14)* (StatusBar (0xb7a79708): 0:95959)* (com.android.systemui.ImageWallpaper (0xb7aec9d8): 0:3554)* (DimLayer (0xb7ada060): 0:3129)* (DimLayer (0xb7adc250): 0:457)* (NavigationBar (0xb7b0b5f8): 0:185)* (de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity (0xb7ae1190): 0:42)* (SurfaceView (0xb7a7d1d8): 6:8638)
   19  09-08 07:29:09.478   357   357 I SFPerfTracer:      triggers: (rate: 2339:88060) (compose: 0:3) (post: 0:11) (render: 67:15798) (71:774880 frames) (72:829319)
   20: 09-08 07:29:09.479   357   357 D SFPerfTracer:        layers: (1:10) (FocusedStackFrame (0xb7a4f478): 0:4932)* (DimLayer (0xb7b10d90): 0:44)* (DimLayer (0xb7b004a0): 0:14)* (StatusBar (0xb7a79708): 0:95961)* (com.android.systemui.ImageWallpaper (0xb7aec9d8): 0:3554)* (DimLayer (0xb7ada060): 0:3129)* (DimLayer (0xb7adc250): 0:457)* (NavigationBar (0xb7b0b5f8): 0:185)* (de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity (0xb7ae1190): 0:42)* (SurfaceView (0xb7a7d1d8): 72:8776)
   21  09-08 07:29:11.540   451   615 I ThermalEngine: Sensor:chg_therm:32000 mC
   22  09-08 07:29:11.870  1840 28671 D NetlinkSocketObserver: NeighborEvent{elapsedMs=287995795, 192.168.178.1, [C80E1462020E], RTM_NEWNEIGH, NUD_STALE}
   23  09-08 07:29:12.233   357   357 I SFPerfTracer:      triggers: (rate: 2339:88061) (compose: 0:3) (post: 0:11) (render: 67:15798) (112:774992 frames) (113:829433)
   24: 09-08 07:29:12.233   357   357 D SFPerfTracer:        layers: (1:10) (FocusedStackFrame (0xb7a4f478): 0:4932)* (DimLayer (0xb7b10d90): 0:44)* (DimLayer (0xb7b004a0): 0:14)* (StatusBar (0xb7a79708): 1:95962)* (com.android.systemui.ImageWallpaper (0xb7aec9d8): 0:3554)* (DimLayer (0xb7ada060): 0:3129)* (DimLayer (0xb7adc250): 0:457)* (NavigationBar (0xb7b0b5f8): 0:185)* (de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity (0xb7ae1190): 0:42)* (SurfaceView (0xb7a7d1d8): 113:8890)
   25  09-08 07:29:12.564 19874 19874 W ChromiumNet: type=1400 audit(0.0:16600): avc: denied { ioctl } for uid=10050 path="socket:[1515982]" dev="sockfs" ino=1515982 ioctlcmd=8b1b scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:untrusted_app:s0:c512,c768 tclass=udp_socket permissive=0
   26  09-08 07:29:12.564 19874 19874 W ChromiumNet: type=1400 audit(0.0:16601): avc: denied { ioctl } for uid=10050 path="socket:[1515983]" dev="sockfs" ino=1515983 ioctlcmd=8b1b scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:r:untrusted_app:s0:c512,c768 tclass=udp_socket permissive=0
   ..
1915  2024 E CRASH   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000028
1915  2024 E CRASH   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
   31  09-08 07:29:12.573  1915  2024 E CRASH   : Build fingerprint: 'motorola/victara_retde/victara:6.0/MPE24.49-18/15:user/release-keys'
   32  09-08 07:29:12.573  1915  2024 E CRASH   : Revision: 'p2bf'
   33: 09-08 07:29:12.573  1915  2024 E CRASH   : pid: 1915, tid: 2024, name: FMOD nonblockin  >>> de.bundle.identifier <<<
   34  09-08 07:29:12.573  1915  2024 E CRASH   :     r0 00000001  r1 05a8354f  r2 00000000  r3 b6cdda98
   35  09-08 07:29:12.573  1915  2024 E CRASH   :     r4 00000000  r5 05a8354f  r6 a25b0650  r7 00000000
   ..
   39  09-08 07:29:12.573  1915  2024 E CRASH   : backtrace:
   40  09-08 07:29:12.655  1840  2434 D GraphicsStats: Buffer count: 10
   41: 09-08 07:29:12.655  1840  2420 I WindowState: WIN DEATH: Window{af7e9cb u0 de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity}
   42: 09-08 07:29:12.661  1840  2420 W WindowManager: Force-removing child win Window{80cbc64 u0 SurfaceView} from container Window{af7e9cb u0 de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity}
   43  09-08 07:29:12.698   473   473 I Zygote  : Process 1915 exited due to signal (11)
   44  09-08 07:29:12.708  1840  2434 W WindowManager: Failed looking up window
   ..
   49  09-08 07:29:12.708  1840  2434 W WindowManager:     at android.os.BinderProxy.sendDeathNotice(Binder.java:558)
   50  09-08 07:29:12.708  1840  2434 I WindowState: WIN DEATH: null
   51: 09-08 07:29:12.710  1840  1853 I ActivityManager: Process de.bundle.identifier (pid 1915) has died
   52: 09-08 07:29:12.711  1840  1853 W ActivityManager: Force removing ActivityRecord{2b71592 u0 de.bundle.identifier/com.unity3d.player.UnityPlayerNativeActivity t6708}: app died, no saved state
   53  09-08 07:29:12.715  1840  1853 I ActivityManager: moveHomeStack, setupComplete:true
   54  09-08 07:29:12.750  1840  1853 I ActivityManager: Config changes=480 {1.0 262mcc2mnc de_DE ldltr sw360dp w360dp h568dp 480dpi nrml port finger -keyb/v/h -nav/h s.71?spn}

The app crashes only on switching scene or loading additive scenes. I´m doing a ping to google dns to check if internet is available every 3-4 seconds. Maybe an uncomplete ping and scene loading at the same time does this. If i disable the ping, it works much better and the crash happens less times…

sometimes it crashes without any exception with a simple:

  • ActivityManager: Process de.bundle.identifier (pid 17165) (adj 0) has died.
  • ActivityManager: Force removing ActivityRecord{4268fc60 u0 de.bundle.identifier/com.unity3d.player.UnityPlayerActivity}: app died, no saved state
09-08 13:14:16.499  1937  1937 V LvOutput: initCheck: 0
09-08 13:14:16.499  1937  1937 V LvOutput: detachEffects: detach processing for output 2, stream 3, session 574
09-08 13:14:16.499  1937  1937 V LvOutput: detachEffects: no output processing was attached to this stream
09-08 13:14:16.499  2357  3314 D SensorService: SensorDevice::activating sensor handle=0 ns=200000000
09-08 13:14:16.499  2357  5467 I ActivityManager: Process de.bundle.identifier (pid 17165) (adj 0) has died.
09-08 13:14:16.499  2357  5467 W ActivityManager: Force removing ActivityRecord{4268fc60 u0 de.bundle.identifier/com.unity3d.player.UnityPlayerActivity}: app died, no saved state
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: stopOutput() output 2, stream 3, session 574
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: changeRefCount() stream 3, count 0
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: getNewDevice() selected device 0
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: setOutputDevice() output 2 device 0000 force 0 delayMs 184
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: setOutputDevice() prevDevice 0002
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [13], return media strategy
09-08 13:14:16.504  1937  1937 W AudioPolicyManagerBase: stream type [14], return media strategy
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: setOutputDevice() setting same device 0000 or null device for output 2
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: checkOutputForStrategy(0002,0002,3)
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: getOutputsForDevice device 0002 -> 0002
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: getOutputsForDevice device 0002 -> 0002
09-08 13:14:16.504  1937  1937 V AudioPolicyManagerBase: releaseOutput() 2
09-08 13:14:16.509  2357  2924 W AudioService:   AudioFocus   audio focus client died
09-08 13:14:16.514  2357  3314 D iNemoSensor: setDelay(): handle(0), en(200000000)
09-08 13:14:16.514  2357  2924 I AudioService:  AudioFocus  abandonAudioFocus(): removing entry for android.media.AudioManager$426d02b0<native proxy object>
09-08 13:14:16.514  2357  3314 I iNemoSensor: update_delay wanted_accel = 200000000
09-08 13:14:16.514  2357  2532 W InputDispatcher: channel ~ Consumer closed input channel or an error occurred.  events=0x9
09-08 13:14:16.514  2357  2532 E InputDispatcher: channel ~ Channel is unrecoverably broken and will be disposed!
09-08 13:14:16.514  2357  2367 W InputDispatcher: Attempted to unregister already unregistered input channel
09-08 13:14:16.524  1933  2204 I SurfaceFlinger: id=375 Removed TurfaceView (0/5)
09-08 13:14:16.524  1933  1933 I SurfaceFlinger: id=375 Removed TurfaceView (-2/5)
09-08 13:14:16.529  2357  2414 D AkmSensor: MeasureSNGLoop: interval.interval = 200000000, doze_max = 196000, prms->enabled = 2
09-08 13:14:16.539  2357  2367 D LockPatternUtils: isPcwEnable = null
09-08 13:14:16.599  1933  2204 I SurfaceFlinger: id=374 Removed VnityPlayer (2/4)
09-08 13:14:16.599  1933  1933 I SurfaceFlinger: id=374 Removed VnityPlayer (-2/4)
09-08 13:14:16.619  1933  2205 I SurfaceFlinger: id=374 Removed VnityPlayer (-2/4)
09-08 13:14:16.619  2357  2367 V WindowManager: Window{426b0200 u0 Keyguard}mOrientationRequetedFromKeyguard=false
09-08 13:14:16.619  2357  2367 V WindowManager: Window{426b0200 u0 Keyguard}mOrientationRequetedFromKeyguard=false
09-08 13:14:16.634  2357  2905 W WindowManager: Failed looking up window
09-08 13:14:16.634  2357  2905 W WindowManager: java.lang.IllegalArgumentException: Requested window android.os.BinderProxy@442afa08 does not exist
09-08 13:14:16.634  2357  2905 W WindowManager:     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:10038)
09-08 13:14:16.634  2357  2905 W WindowManager:     at com.android.server.wm.WindowManagerService.windowForClientLocked(WindowManagerService.java:10029)
09-08 13:14:16.634  2357  2905 W WindowManager:     at com.android.server.wm.WindowState$DeathRecipient.binderDied(WindowState.java:1157)
09-08 13:14:16.634  2357  2905 W WindowManager:     at android.os.BinderProxy.sendDeathNotice(Binder.java:470)
09-08 13:14:16.634  2357  2905 W WindowManager:     at dalvik.system.NativeStart.run(Native Method)
09-08 13:14:16.639  2357  5467 I power   : *** acquire_dvfs_lock : lockType : 1  freq : 1200000

Unity 5.3 & Unity 5.4.0p4
Devices (with crashes):

  • Samsung Galaxy S3 (Android 4.3)
  • Motorola Moto X (Android 6)

Devices (without crashes):

  • Nexus 5X (Android 7)
  • Nexus 9 (Android 6)
  • all iPhones
  • Galaxy Tab S2 (Android 6)

Hope someone got a idea.

Regards

Looks like FMOD nonblocking thread is crashing.

Could you submit a bug report? Please attach your project, if it’s huge - would be awesome if you could strip it down to minimum.

Thanks!

1 Like

Thank you for your answer. I have to get the permissions from our customer to send the project. Can i do something to workaround that crash?

Will submit a bug report with project as soon as i get the ok from our customer.

Thanks

I’m getting unexplained intermittent signal 11’s on some low end android devices in release during async scene loading. Not sure if it’s a similar issue to the OPs.

F/libc ( 4915): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x1a7dac in tid 4982 (UnityGfxDeviceW)
I/WindowState( 463): WIN DEATH: Window{283262e1 u0 SurfaceView}
I/WindowState( 463): WIN DEATH: Window{5605eeb u0 com.stardotstar.Entreprenaws.Education/com.unity3d.player.UnityPlayerActivity}

There’s no further details.

@pixxelbob looks like it’s not the same issue. Do you have multi-threaded rendering enabled? If so - try disabling it and check whether the crash is gone.

@Yury-Habets , Ok thanks, Yes it is, Crash seems to be present on devices with Tegra 3 GPUs, Nexus 7, Xperia Tab S etc.
I will try a fresh build for those devices without Multi-threaded rendering.

I’m having the same error on a Moto X, using Unity 5.3.4.

At the beginning of the app I’m playing a video using Handheld.PlayFullScreenMovie() and loading a level aftwerwards, and after that video I get the crash on that device.

So I just added an additional yield return new WaitForSeconds(0.5f); after the 2 common yield return new WaitForEndOfFrame(); I use in the coroutine that triggers the video.

This extra waiting probably lets the device close the video display correctly, and thus avoiding the error. I’m guessing this is being triggered when trying to load another level and not having stopped correctly a previous routine/process/somethingLikeThat.

IEnumerator PlaySplashVideo()
    {
        Handheld.PlayFullScreenMovie("Video/Logo-1536x2048.mp4", Color.black, FullScreenMovieControlMode.CancelOnInput);
    
        // This needs to be called to execute things after the video finishes playing
        yield return new WaitForEndOfFrame();
        yield return new WaitForEndOfFrame();
        yield return new WaitForSeconds(0.5f); // This fixes the Signal 11 error for me.
    
        LoadLevel();
    }