← Back to team overview

touch-packages team mailing list archive

[Bug 1379572] Re: [krillin] Restart ofono, cause repeated crashes in ril plugin

 

This bug was due to my lack of understanding of the way upstart works.

I've confirmed that crashes and subsequent respawns will use the
original environment variables.

That said, if ofono is restarted ( stop ofono/start ofono, or restart
ofono ), the environment variables are not set in the user's session (
as rild.conf didn't run in the user session ), so the default values of
'ril' and 1 are used.

So lesson learned, if you want to restart ofono on krillin, make sure to
specify the environment variables.

** Changed in: lxc-android-config (Ubuntu)
       Status: New => Invalid

** Changed in: lxc-android-config (Ubuntu)
     Assignee: Alfonso Sanchez-Beato (alfonsosanchezbeato) => (unassigned)

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to lxc-android-config in
Ubuntu.
https://bugs.launchpad.net/bugs/1379572

Title:
  [krillin] Restart ofono, cause repeated crashes in ril plugin

Status in “lxc-android-config” package in Ubuntu:
  Invalid

Bug description:
  On krillin, if ofono is restarted on the command-line, or crashes and
  restart, it will repeatedly crash in the ril plugin's
  ril_radio_state_change() function, as the environment variables used
  to communicate the ril device-type and number of SIM slots are
  replaced by the values in the upstart override file for ofono ( which
  the env vars to 'ril' and 1 respectively ).

  This means that the rildev plugin loads the wrong ofono device plugin
  ( ril instead of mtk ), which then repeatedly asserts when it gets
  back a garbage radio state change unsolicited message from rild.

  ofonod[29128]: oFono version 1.12
  ofonod[29128]: Excluding udev hardware detection
  ofonod[29128]: Excluding Sim Access Profile Plugins
  ofonod[29128]: Excluding Hands-Free Profile Plugins
  ofonod[29128]: Excluding Provisioning Plugin
  ofonod[29128]: RILDEV detected modem type ril, 1 SIM slot(s)
  ofonod[29128]: ril_radio_state_changed: state: SIM_READY ril->ofono_online: 0
  **
  ERROR:plugins/ril.c:148:ril_radio_state_changed: assertion failed: (FALSE)

  Program received signal SIGABRT, Aborted.
  0xb6d8e8e6 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
  (gdb)

  This was reproduced on krillin rtm #94.

  I *think* the correct fix is to change the env statements in the ofono
  override job to leave off the assignments:

  env OFONO_RIL_DEVICE
  env OFONO_RIL_NUM_SIM_SLOTS

  ...and then in rild.conf, if the respective android properties aren't
  set, use the defaults previously set in ofono.override.

  Note, I've only reproduced this via the 'restart'.  I haven't verified
  that an ofono crash and respawn behaves the same, but I'm pretty sure
  it does.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/lxc-android-config/+bug/1379572/+subscriptions


References