OpenAL crashes on Google Play Console

Create issue
Issue #153 resolved
Henrique Gemignani created an issue

Hello,

I'm having a reasonable number of crashes occuring in libopenal.so being reported via the Google Play Console's Crash reports.

Here's the most popular:

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
  native: pc 000000000000c0dc  /data/app/game.bundle.id/lib/arm/libopenal.so
  native: pc 0000000000017851  /data/app/game.bundle.id/lib/arm/libopenal.so (alcDeviceResumeSOFT+76)
  native: pc 00000000000e4d35  /data/app/game.bundle.id/lib/arm/liblove.so (_ZN4love5audio6openal5Audio6resumeEv+6)
  native: pc 00000000000e974d  /data/app/game.bundle.id/lib/arm/liblove.so (_ZNK4love5event3sdl5Event18convertWindowEventERK9SDL_Event+452)
  native: pc 00000000000ea461  /data/app/game.bundle.id/lib/arm/liblove.so (_ZNK4love5event3sdl5Event7convertERK9SDL_Event+1640)
  native: pc 00000000000ea6ed  /data/app/game.bundle.id/lib/arm/liblove.so (_ZN4love5event3sdl5Event4pumpEv+32)
  native: pc 00000000000e7a5b  /data/app/game.bundle.id/lib/arm/liblove.so (_ZN4love5event6w_pumpEP9lua_State+14)
  native: pc 00000000000df8b5  /data/app/game.bundle.id/lib/arm/liblove.so
  native: pc 000000000002f1c4  /data/app/game.bundle.id/lib/arm/libjnlua5.1.so
  native: pc 00000000000dfb49  /data/app/game.bundle.id/lib/arm/liblove.so (SDL_main+244)
  native: pc 00000000001caae5  /data/app/game.bundle.id/lib/arm/liblove.so (Java_org_libsdl_app_SDLActivity_nativeInit+216)
  native: pc 00000000023ccd11  /data/app/game.bundle.id/oat/arm/base.odex

It occurs in Android 6.0, 7.0 and 7.1, no obvious bias. No device as well, with plenty of occurences in Galaxy S6, S7 and S7 Edge. This one has about 2.6k reports out of 2.1k users.

Second crash:

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
backtrace:
  native: pc 000000000000c0dc  /data/app-lib/game.bundle.id/libopenal.so
  native: pc 0000000000017851  /data/app-lib/game.bundle.id/libopenal.so (alcDeviceResumeSOFT+76)
  native: pc 00000000000e4d35  /data/app-lib/game.bundle.id/liblove.so (love::audio::openal::Audio::resume()+6)
  native: pc 00000000000e974d  /data/app-lib/game.bundle.id/liblove.so (love::event::sdl::Event::convertWindowEvent(SDL_Event const&) const+452)

458 reports, 412 users. 93% Android 4.4, rest is Android 4.3. No obvious device bias.

Third crash:

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR)
backtrace:
  native: pc 000000000000ba74  /mnt/asec/game.bundle.id/lib/arm/libopenal.so
  native: pc 0000000000017e0b  /mnt/asec/game.bundle.id/lib/arm/libopenal.so (alcDestroyContext+54)
  native: pc 00000000000e4f8d  /mnt/asec/game.bundle.id/lib/arm/liblove.so (_ZN4love5audio6openal5AudioD2Ev+60)
  native: pc 00000000000e4fb9  /mnt/asec/game.bundle.id/lib/arm/liblove.so (_ZN4love5audio6openal5AudioD0Ev+4)
  native: pc 00000000000e1e6b  /mnt/asec/game.bundle.id/lib/arm/liblove.so
  native: pc 00000000000df8b5  /mnt/asec/game.bundle.id/lib/arm/liblove.so
  native: pc 000000000002f1c4  /mnt/asec/game.bundle.id/lib/arm/libjnlua5.1.so
  native: pc 00000000000311a4  /mnt/asec/game.bundle.id/lib/arm/libjnlua5.1.so

419 reports, 403 users. 50% Android 7.0, but there's also 6.0, 7.1, 5.1, 5.0. No 4.X. No obvious device bias. The libjnlua5.1.so steps below makes me think this is during the lua_close, especially since love::audio::openal::Audio::~Audio is being called.

There's also another report for 5.X exclusive with alcDeviceResumeSOFT on resume.

It goes without saying that I've never been able to reproduce any of these locally. Any ideas on why is this happening, or strategies to try to mitigate then? I'm open to testing changes in production, if necessary.

Comments (3)

  1. Martin Felis repo owner

    No idea. Only thing that comes to mind would be to try newer versions of OpenAL. (Should be done anyway as reported by you in #154). I'll try to have a look at that.

  2. Henrique Gemignani reporter

    In the end we did indeed update OpenAL and I think this went away. If I find some time (hahaha) I may submit a PR for that update, but apparently there's been an additional OpenAL-Soft update since then.

  3. Log in to comment