All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/3] Fix crash when network is lost
@ 2012-05-31  9:59 Guillaume Zajac
  2012-05-31  9:59 ` [RFC 1/3] gprs-context: Add new driver entry Guillaume Zajac
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Guillaume Zajac @ 2012-05-31  9:59 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 1455 bytes --]

Hi,

Problem description:
Some Huawei modems are trying to keep PPP session with the network alive even if the network is lost.
Thus oFono PPP session with the modem is never ended. Currently when network is lost, oFono will release the active contexts into the core however the context is still active at driver level. If the connection with the network is established again and we try to enable a data call, we have a crash.

This issue is very tricky there might be multiple solutions, here is one I discussed with Denis yesterday.
A new driver entry is added to release context into the driver in shutting down the PPP session between oFono and the modem.
Then ofono_context_deactivated() is called to signal the context is inactive at driver level.
In the case we lost the network and we are reattaching to the network but the PPP session had no time to be released, there is a mechanism to wait for the previous context to be released and then signal modem is reattached to the network. ConnMan can do again a data call.

Guillaume Zajac (3):
  gprs-context: Add new driver entry
  gprs-context: Add new driver entry definition
  gprs: Release context in driver and core when network is lost

 drivers/atmodem/gprs-context.c |   11 +++++
 include/gprs-context.h         |    2 +
 src/gprs.c                     |   84 ++++++++++++++++++++++++++++++----------
 3 files changed, 76 insertions(+), 21 deletions(-)

-- 
1.7.5.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-06-01  7:59 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-31  9:59 [RFC 0/3] Fix crash when network is lost Guillaume Zajac
2012-05-31  9:59 ` [RFC 1/3] gprs-context: Add new driver entry Guillaume Zajac
2012-05-31 22:46   ` Denis Kenzior
2012-05-31  9:59 ` [RFC 2/3] gprs-context: Add new driver entry definition Guillaume Zajac
2012-05-31  9:59 ` [RFC 3/3] gprs: Release context in driver and core when network is lost Guillaume Zajac
2012-05-31 22:45   ` Denis Kenzior
2012-06-01  7:59     ` Guillaume Zajac

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.