Bug 1276431

Summary: LTE modem Unable to negotiate IPV4
Product: [Fedora] Fedora Reporter: Andrew Cathrow <andrew>
Component: NetworkManagerAssignee: Lubomir Rintel <lkundrak>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: dcbw, lkundrak, psimerda
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-12-20 15:14:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Cathrow 2015-10-29 16:33:53 UTC
Not sure if this should be NetworkManager, ModemManager or elsewhere.


Since moving to Fedora 23 I'm unable to reliably get a connection to my GSM carrier through the built in LTE modem.

While the modem connects I don't get IPV4 configuration.
Currently I can reproduce this 100% of the time, however previously I was able to successfully get a connection. 
I've tried going back through previous kernels but not found a working config again.


Thinkpad X1 with built in Sierra Wireless modem
Sierra Wireless EM7345 4G LTE

Bus 001 Device 003: ID 1199:a001 Sierra Wireless, Inc. 


Fully updated (as of oct-29-2015) Fedora 23 with 
  kernel-4.2.3-300.fc23.x86_64
  NetworkManager-1.0.6-7.fc23.x86_64
  ModemManager-1.4.10-2.fc23.x86_64



ModemManager log shows
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect started...
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (4/8): Wait to get fully enabled
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (5/8): Register
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (6/8): Bearer
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (7/8): Connect
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (registered -> connecting)
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connecting -> connected)
Oct 29 12:09:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (8/8): All done
Oct 29 12:09:44 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connected -> disconnecting)
Oct 29 12:09:44 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (disconnecting -> registered)
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect started...
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (4/8): Wait to get fully enabled
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (5/8): Register
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (6/8): Bearer
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (7/8): Connect
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (registered -> connecting)
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connecting -> connected)
Oct 29 12:10:14 aic-thinkpad.cathrow.org ModemManager[1094]: <info>  Simple connect state (8/8): All done

NetworkManager log shows

Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): Activation: starting connection 'T-Mobile LTE' (d08edc6c-4ffb-4e38-a994-d5492a6b00d5)
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): device state change: disconnected -> prepare (reason 'none') [30 40 0]
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): modem state changed, 'registered' --> 'connecting' (reason: user-requested)
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): modem state changed, 'connecting' --> 'connected' (reason: user-requested)
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): device state change: prepare -> config (reason 'none') [40 50 0]
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): device state change: config -> ip-config (reason 'none') [50 70 0]
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): IPv4 configuration disabled
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): device state change: ip-config -> secondaries (reason 'ip-config-unavailable') [70 90 5]
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): device state change: secondaries -> activated (reason 'none') [90 100 0]
Oct 29 12:10:14 aic-thinkpad.cathrow.org NetworkManager[1243]: <info>  (cdc-wdm0): Activation: successful, device activated.


For this interface ifconfig shows no IP address

wwp0s20u4: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST>  mtu 1428
        ether 26:e9:38:c4:be:41  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


Connection details
connection.id:                          T-Mobile LTE
connection.uuid:                        d08edc6c-4ffb-4e38-a994-d5492a6b00d5
connection.interface-name:              --
connection.type:                        gsm
connection.autoconnect:                 no
connection.autoconnect-priority:        0
connection.timestamp:                   1446135081
connection.read-only:                   no
connection.permissions:                 
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:                 
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
ipv4.method:                            auto
ipv4.dns:                               
ipv4.dns-search:                        
ipv4.addresses:                         
ipv4.gateway:                           --
ipv4.routes:                            
ipv4.route-metric:                      -1
ipv4.ignore-auto-routes:                no
ipv4.ignore-auto-dns:                   no
ipv4.dhcp-client-id:                    --
ipv4.dhcp-send-hostname:                yes
ipv4.dhcp-hostname:                     --
ipv4.never-default:                     no
ipv4.may-fail:                          yes
ipv6.method:                            ignore
ipv6.dns:                               
ipv6.dns-search:                        
ipv6.addresses:                         
ipv6.gateway:                           --
ipv6.routes:                            
ipv6.route-metric:                      -1
ipv6.ignore-auto-routes:                no
ipv6.ignore-auto-dns:                   no
ipv6.never-default:                     no
ipv6.may-fail:                          yes
ipv6.ip6-privacy:                       -1 (unknown)
ipv6.dhcp-send-hostname:                yes
ipv6.dhcp-hostname:                     --
serial.baud:                            115200
serial.bits:                            8
serial.parity:                          none
serial.stopbits:                        1
serial.send-delay:                      0
ppp.noauth:                             yes
ppp.refuse-eap:                         no
ppp.refuse-pap:                         no
ppp.refuse-chap:                        no
ppp.refuse-mschap:                      no
ppp.refuse-mschapv2:                    no
ppp.nobsdcomp:                          no
ppp.nodeflate:                          no
ppp.no-vj-comp:                         no
ppp.require-mppe:                       no
ppp.require-mppe-128:                   no
ppp.mppe-stateful:                      no
ppp.crtscts:                            no
ppp.baud:                               0
ppp.mru:                                0
ppp.mtu:                                0
ppp.lcp-echo-failure:                   0
ppp.lcp-echo-interval:                  0
gsm.number:                             *99#
gsm.username:                           --
gsm.password:                           <hidden>
gsm.password-flags:                     0 (none)
gsm.apn:                                fast.t-mobile.com
gsm.network-id:                         --
gsm.pin:                                <hidden>
gsm.pin-flags:                          0 (none)
gsm.home-only:                          no
GENERAL.NAME:                           T-Mobile LTE
GENERAL.UUID:                           d08edc6c-4ffb-4e38-a994-d5492a6b00d5
GENERAL.DEVICES:                        cdc-wdm0
GENERAL.STATE:                          activated
GENERAL.DEFAULT:                        no
GENERAL.DEFAULT6:                       no
GENERAL.VPN:                            no
GENERAL.ZONE:                           --
GENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/ActiveConnection/4
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/Settings/10
GENERAL.SPEC-OBJECT:                    /
GENERAL.MASTER-PATH:                    --

 mbimcli -p -d /dev/cdc-wdm0 --query-device-caps
[/dev/cdc-wdm0] Device capabilities retrieved:
	      Device type: 'embedded'
	   Cellular class: 'gsm'
	      Voice class: 'no-voice'
	        Sim class: 'removable'
	       Data class: 'gprs, edge, umts, hsdpa, hsupa, lte'
	         SMS caps: 'pdu-receive, pdu-send'
	        Ctrl caps: 'reg-manual'
	     Max sessions: '16'
	Custom data class: 'unknown'
	        Device ID: '<removed>'
	    Firmware info: 'FIH7160_V1.2_WW_01.1415.07'
	    Hardware info: 'XMM7160_V1.2_MBIM_GNSS_NAND_RE'

mmcli -L

Found 1 modems:
	/org/freedesktop/ModemManager1/Modem/0 [Generic] MBIM [8086:9CB1]

mmcli -m 0

/org/freedesktop/ModemManager1/Modem/0 (device id 'a3a770f3817405a1c917d55dbf4736d2f9dbb82c')
  -------------------------
  Hardware |   manufacturer: 'Generic'
           |          model: 'MBIM [8086:9CB1]'
           |       revision: 'FIH7160_V1.2_WW_01.1415.07'
           |      supported: 'gsm-umts, lte'
           |        current: 'gsm-umts, lte'
           |   equipment id: '<removed>'
  -------------------------
  System   |         device: '/sys/devices/pci0000:00/0000:00:14.0/usb1/1-4'
           |        drivers: 'cdc_acm, cdc_mbim'
           |         plugin: 'Generic'
           |   primary port: 'cdc-wdm0'
           |          ports: 'wwp0s20u4 (net), cdc-wdm0 (mbim), ttyACM0 (at)'
  -------------------------
  Numbers  |           own : '15712342389'
  -------------------------
  Status   |           lock: 'none'
           | unlock retries: 'sim-pin2 (10)'
           |          state: 'registered'
           |    power state: 'on'
           |    access tech: 'lte'
           | signal quality: '0' (cached)
  -------------------------
  Modes    |      supported: 'allowed: 2g, 3g, 4g; preferred: none'
           |        current: 'allowed: 2g, 3g, 4g; preferred: none'
  -------------------------
  Bands    |      supported: 'unknown'
           |        current: 'unknown'
  -------------------------
  IP       |      supported: 'ipv4, ipv6, ipv4v6'
  -------------------------
  3GPP     |           imei: '<removed>'
           |  enabled locks: 'fixed-dialing'
           |    operator id: '310260'
           |  operator name: 'T-Mobile '
           |   subscription: 'unknown'
           |   registration: 'home'
  -------------------------
  SIM      |           path: '/org/freedesktop/ModemManager1/SIM/0'

  -------------------------
  Bearers  |          paths: '/org/freedesktop/ModemManager1/Bearer/0'




When connected, nmcli con shows
T-Mobile LTE            d08edc6c-4ffb-4e38-a994-d5492a6b00d5  gsm              cdc-wdm0   

I 'believe' that when it worked in the past the device was ttyACM0 rather than cdc-wdm0.

Looking at the cdc_ncm module I see

cat /sys/module/cdc_ncm/parameters/prefer_mbim 
Y

I tried adding a .conf file to /etc/modprobe.d/ 
which had "options cdc_ncm prefer_mbim=N"

However this setting didn't appear to be picked up.
If you believe this is required then I can debug further.

Comment 1 Andrew Cathrow 2015-10-29 16:54:27 UTC
cat /etc/modprobe.d/ncm.conf 
options cdc_ncm prefer_mbim=N

and then 
dracut --force 

to rebuilt initramfs fixed this.


Before I just close this I'm curious as to what the underlying problem was.
I thought that support for MBIM was in the userspace now, or is that just for selected drivers? If so could this be automated?

Comment 2 Fedora End Of Life 2016-11-24 12:58:22 UTC
This message is a reminder that Fedora 23 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 23. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '23'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 23 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 3 Fedora End Of Life 2016-12-20 15:14:31 UTC
Fedora 23 changed to end-of-life (EOL) status on 2016-12-20. Fedora 23 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.