OK, so there are two low-level problems:
1. InProgress error returned by SetProperty('Active',true) call to ofono
for a gprs-context.
Alfonso's first syslog shows that this can happen, but I'm not sure
exactly how to reproduce. NM would've had to start activation, then
Attached bounced down and back up again, without ofono canceling the
context activation. The next time NM tried to activate, in theory it'd
be returned InProgress.
Right now, NMModemOfono::stage1_prepare_done() always emits a failed
MODEM_PREPARE_RESULT for any error returned by ofono in response to the
SetProperty call.
The fix is to check explicitly for error == InProgress, and just return
without emitting a result ( this is the same thing that happens if no
error is returned ).
2. The context in question is already active.
This can be reproduced by killing NetworkManager, when it restarts, it
gets stuck in the Prepare stage.
This is because ofono doesn't send an error if SetProperty('Active',
true) would have no effect on the property's value ( ie. if it's already
true ). Furthermore, as the context 'Settings' property is already
populated, context_property_changed() is never invoked for the
'Settings', so a MODEM_PREPARE_RESULT is never sent, true or false, so
the device is stuck in PREPARE state.
The fix involves the following changes to NMModemOfono:
do_context_activate() should check the cached value of 'Active', and if
true, should call a new function called process_context_settings(),
which should be based on the current context_property_changed(). This
will result in a PREPARE_RESULT being generated, and thus the device
should no longer get stuck in PREPARE state.
In theory this should work, as NM should just deal with any EEXISTS
errors when it tries to re-configure the IP address, routing table
entries, and DNS nameservers. It this *doesn't* just work, then we may
need some upstream assistance.
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to network-manager in Ubuntu.
https://bugs.launchpad.net/bugs/1565717
Title:
No connection after returning from area without coverage
Status in Canonical System Image:
Confirmed
Status in network-manager package in Ubuntu:
In Progress
Bug description:
After moving in an out of my own "faraday cage" an ubuntu phone, NM
got into an state where *both* WiFi and cellular data were
disconnected and NM was not able to recover.
****************
* This still happens with network-manager 1.1.93-0ubuntu1~vivid3, in
phablet@ubuntu-phablet:~$ system-image-cli -i
current build number: 336
device name: krillin
channel: ubuntu-touch/rc-proposed/bq-aquaris.en
last update: 2016-05-17 09:19:51
version version: 336
version ubuntu: 20160517
version device: 20160329-a9bacdb
version custom: 20160505-975-38-9
****************
Originally reported for:
NM version:
network-manager 0.9.10.0-4ubuntu15.1.11
root@ubuntu-phablet:/home/phablet# system-image-cli -i
current build number: 298
device name: krillin
channel: ubuntu-touch/rc-proposed/bq-aquaris.en
last update: 2016-03-30 16:58:21
version version: 298
version ubuntu: 20160330
version device: 20160323-1467d3c
version custom: 20160324--36-54-vivid
phablet@ubuntu-phablet:~$ nmcli d
DEVICE TYPE STATE CONNECTION
ril_0 gsm connecting (prepare) /214050030479893/context1
wlan0 wifi disconnected --
ril_1 gsm unavailable --
ifb0 ifb unmanaged --
ifb1 ifb unmanaged --
lo loopback unmanaged --
ip6tnl0 unknown unmanaged --
sit0 unknown unmanaged --
tunl0 unknown unmanaged --
phablet@ubuntu-phablet:~$ nmcli c
NAME UUID TYPE
DEVICE
WLAN_1609 fe9b17ad-88fa-43b7-bcab-8fbc1985ce42
802-11-wireless --
Wireless 98ff5b6f-b0d9-471a-b867-8a7be51e12c2
802-11-wireless --
Ubuntu 549c352f-8a2b-4e48-b8c8-eb7ab0e53089
802-11-wireless --
/234304107917083/context1 1f192cdc-ccea-2dc3-fa13-619ed3053828 gsm
--
/214321010036211/context1 0992421f-2369-0765-ceaa-ba2a3091e111 gsm
--
/214050030479893/context1 d30e4f19-9d00-ab1f-ab43-6d9c1b628556 gsm
ril_0
/214019301737411/context1 88b28978-e2fc-6336-8665-b0ae78d321ae gsm
--
phablet@ubuntu-phablet:~$ /usr/share/ofono/scripts/list-contexts
[ /ril_1 ]
[ /ril_0 ]
[ /ril_0/context1 ]
Settings = { Gateway=10.50.83.25
DomainNameServers=80.58.61.250,80.58.61.254, Interface=ccmni0
Address=10.50.83.25 Method=static Netmask=255.255.255.0 }
Name = Pepephone
Type = internet
AccessPointName = gprs.pepephone.com
Active = 1
Protocol = ip
AuthenticationMethod = chap
Password =
Preferred = 0
Username =
IPv6.Settings = { }
[ /ril_0/context2 ]
Name = MMS Pepephone
Type = mms
Active = 0
Settings = { }
MessageCenter = http://www.pepephone.com
MessageProxy = 10.138.255.43:8080
Preferred = 0
Password =
AccessPointName = gprs.pepephone.com
Protocol = ip
AuthenticationMethod = chap
Username =
IPv6.Settings = { }
phablet@ubuntu-phablet:~$ ifconfig
ccmni0 Link encap:Ethernet HWaddr 46:23:7c:fb:73:cb
inet addr:10.50.83.25 Mask:255.0.0.0
UP RUNNING NOARP MTU:1500 Metric:1
RX packets:1995 errors:0 dropped:0 overruns:0 frame:0
TX packets:2299 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:603432 (603.4 KB) TX bytes:193513 (193.5 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:11189 errors:0 dropped:0 overruns:0 frame:0
TX packets:11189 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1733281 (1.7 MB) TX bytes:1733281 (1.7 MB)
wlan0 Link encap:Ethernet HWaddr b8:64:91:47:21:b6
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:3184 errors:0 dropped:0 overruns:0 frame:0
TX packets:1626 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:308130 (308.1 KB) TX bytes:172906 (172.9 KB)
phablet@ubuntu-phablet:~$ /usr/share/ofono/scripts/list-modems
[ /ril_1 ]
Serial = 354142069998062
Features = rat sim
Revision = MOLY.WR8.W1315.MD.WG.MP.V37.P5, 2014/05/15 11:49
Manufacturer = Fake Manufacturer
Powered = 1
Lockdown = 0
Interfaces = org.ofono.RadioSettings org.ofono.SimManager
org.ofono.MtkSettings org.ofono.CallVolume org.ofono.VoiceCallManager
org.ofono.NetworkTime
Type = hardware
Model = Fake Modem Model
Online = 1
Emergency = 0
[ org.ofono.RadioSettings ]
TechnologyPreference = gsm
AvailableTechnologies = gsm
FastDormancy = 0
[ org.ofono.SimManager ]
Present = 0
[ org.ofono.MtkSettings ]
Has3G = 0
[ org.ofono.CallVolume ]
MicrophoneVolume = 0
SpeakerVolume = 0
Muted = 0
[ org.ofono.VoiceCallManager ]
EmergencyNumbers = 08 000 999 110 112 911 118 119
[ org.ofono.NetworkTime ]
[ /ril_0 ]
Serial = 354140069999981
Features = gprs ussd net sms rat sim
Revision = MOLY.WR8.W1315.MD.WG.MP.V37.P5, 2014/05/15 11:49
Manufacturer = Fake Manufacturer
Powered = 1
Lockdown = 0
Interfaces = org.ofono.ConnectionManager org.ofono.Phonebook
org.ofono.CallBarring org.ofono.CallForwarding org.ofono.CallSettings
org.ofono.SupplementaryServices org.ofono.NetworkRegistration
org.ofono.PushNotification org.ofono.MessageManager org.ofono.MessageWaiting
org.ofono.RadioSettings org.ofono.SimManager org.ofono.MtkSettings
org.ofono.CallVolume org.ofono.VoiceCallManager org.ofono.NetworkTime
Type = hardware
Model = Fake Modem Model
Online = 1
Emergency = 0
[ org.ofono.ConnectionManager ]
Bearer = gprs
Attached = 1
RoamingAllowed = 0
Powered = 1
Suspended = 0
[ org.ofono.Phonebook ]
[ org.ofono.CallBarring ]
VoiceIncoming = disabled
VoiceOutgoing = disabled
[ org.ofono.CallForwarding ]
VoiceNoReply =
VoiceNoReplyTimeout = 20
VoiceNotReachable = +346808934593085
VoiceUnconditional =
VoiceBusy = +346808934593085
ForwardingFlagOnSim = 0
[ org.ofono.CallSettings ]
CalledLinePresentation = disabled
CallingLineRestriction = disabled
ConnectedLineRestriction = unknown
VoiceCallWaiting = disabled
CallingLinePresentation = enabled
ConnectedLinePresentation = unknown
CallingNamePresentation = unknown
HideCallerId = default
[ org.ofono.SupplementaryServices ]
State = idle
[ org.ofono.NetworkRegistration ]
Technology = gsm
Status = registered
Mode = auto
CellId = 4321
MobileCountryCode = 214
Strength = 41
MobileNetworkCode = 07
LocationAreaCode = 2824
Name = pepephone
[ org.ofono.PushNotification ]
[ org.ofono.MessageManager ]
ServiceCenterAddress = +34609090909
UseDeliveryReports = 0
Bearer = cs-preferred
Alphabet = default
[ org.ofono.MessageWaiting ]
VoicemailWaiting = 0
VoicemailMessageCount = 0
VoicemailMailboxNumber =
[ org.ofono.RadioSettings ]
TechnologyPreference = umts
AvailableTechnologies = gsm umts
FastDormancy = 0
[ org.ofono.SimManager ]
FixedDialing = 0
LockedPins =
Retries = [puk = 10] [pin2 = 3] [pin = 3] [puk2 = 10]
SubscriberNumbers =
PreferredLanguages = es
MobileNetworkCode = 05
ServiceNumbers = [Buzon de Voz (Roaming)] = '+34717700177' [SMS
(Configura Internet)] = '22050' [Atencion al cliente ADSL] = '1214' [Buzon de
Voz] = '22177' [Atencion al cliente] = '1212'
SubscriberIdentity = 214050030479893
CardIdentifier = 8934075782002298987
MobileCountryCode = 214
Present = 1
BarredDialing = 0
PinRequired = none
[ org.ofono.MtkSettings ]
Has3G = 1
[ org.ofono.CallVolume ]
MicrophoneVolume = 0
SpeakerVolume = 0
Muted = 0
[ org.ofono.VoiceCallManager ]
EmergencyNumbers = 112 911
[ org.ofono.NetworkTime ]
phablet@ubuntu-phablet:~$ ip route
phablet@ubuntu-phablet:~$
phablet@ubuntu-phablet:~$ nmcli d show
GENERAL.DEVICE: ril_0
GENERAL.TYPE: gsm
GENERAL.HWADDR: (unknown)
GENERAL.MTU: 0
GENERAL.STATE: 40 (connecting (prepare))
GENERAL.CONNECTION: /214050030479893/context1
GENERAL.CON-PATH:
/org/freedesktop/NetworkManager/ActiveConnection/47
GENERAL.DEVICE: wlan0
GENERAL.TYPE: wifi
GENERAL.HWADDR: B8:64:91:47:21:B6
GENERAL.MTU: 1500
GENERAL.STATE: 30 (disconnected)
GENERAL.CONNECTION: --
GENERAL.CON-PATH: --
...
To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-devices-system-image/+bug/1565717/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp