[Bug] Modem reset (Probable fatal error on the modem)

asked 2015-12-21 00:45:40 +0300

slashdotted gravatar image

Hello,

I came across a bug that causes the modem to reset. The phone will then ask for the sim card pin code (the phone does not reboot). This happened to me twice this week, both times when (apparently) the phone was switching between 4G/3G/2G because of poor connectivity. From the logs (dmesg, see below) it seems like a modem firmware error (Probable fatal error on the modem). Did anyone encounter a similar problem?

thanks

PS. I'm sure this is not due to the "well known" sim card slot issue (performed the sim card slot test without problems) PS. I'm on version 2.0.0.10, my network is Sunrise (Switzerland)

[17997.829326] Disabling non-boot CPUs ...
[17997.829998] msm_pm_enter
[17997.829998] msm_pm_enter: power collapse
[17997.829998] msm_rpmrs_show_resources: resource pxo: buffered 1, value 0x0
[17997.829998] msm_rpmrs_show_resources: resource L2_cache: value 0
[17997.829998] msm_rpmrs_show_resources: resource vdd_mem: buffered 1, value 0x40800000
[17997.829998] msm_rpmrs_show_resources: resource vdd_dig: buffered 1, value 0x0
[17997.829998] msm_rpmrs_show_resources: resource rpm_ctl: buffered 0, value 0x0
[17997.829998] msm_mpm_irqs_detectable: cannot monitor 000000,00000000,00000000,00000000,00000000,00000000,00020000,00000000,00000000,00000000,00000000,00000000,00000000,00000000
[17997.829998] msm_pm_enter: limit c000fe34: pxo 0, l2_cache 0, vdd_mem 1, vdd_dig 1
[17997.829998] msm_pm_enter: return
[17997.829998] gic_show_resume_irq: 70 triggered
[17997.832531] PM: noirq resume of devices complete after 2.105 msecs
[17997.837872] SMSM Int Modem->Apps
[17997.837872] 
SMSM: Modem SMSM state changed to SMSM_RESET.
[17997.837903] SMSM snapshot wake lock
[17997.837903] wakeup wake lock: smsm_snapshot
[17997.837933] Notify: start reset
[17997.837964] SMSM Change 0: 00001929->00000129
[17997.837964] SMSM Change 1: 08008029->08008041
[17997.837964] Probable fatal error on the modem.
[17997.837964] modem subsystem failure reason: fws_task.c:245:Firmware generated fatal error..
[17997.837964] subsys-restart: subsystem_restart_dev(): Restart sequence requested for modem, restart_level = 3.
[17997.837994] SMSM snapshot wake unlock
[17997.838727] PM: early resume of devices complete after 0.640 msecs
[17997.840527] pm8xxx_irq_block_handler: Show resume wakeup pmirq = 78
[17997.840588] SMD Int LPASS->Apps
[17997.840619] SMD ch15 'sys_mon' Data event r50/w21
[17997.840680] subsys-restart: subsystem_shutdown(): [c2f6aac0]: Shutting down modem
[17997.841626] [TP] synaptics_resume() +++
[17997.841657] [TP] synaptics_resume() ---
[17997.841687] l3gd20_gyr 12-006a: resume
[17997.842237] smem: DIAG ''
[17997.842816] smem: CRASH LOG 'ERR crash log report.  Version 3.

Error in file fws_task.c, line 245
Error message: Firmware generated fatal error.
Time of crash (m-d-y h:m:s): 12-20-2015 3:53:22
Uptime (h:m:s): 10:34:07
Build ID: P4V.49677.JOLLA_SHIP.CLEAN

REX_TCB ptr: 0x8cedf5f0
tcb.task_name: IST 98

Coredump ARCH type is: ERR_ARCH_QDSP6
Register values from coredump:
 QDSP6_GP_R0 : 0x00000000
 QDSP6_GP_R1 : 0x8ceb1828
 QDSP6_GP_R2 : 0x00000000
 QDSP6_GP_R3 : 0x8cdeab08
 QDSP6_GP_R4 : 0x000000fe
 QDSP6_GP_R5 : 0x55d0fbe0
 QDSP6_GP_R6 : 0x00000000
 QDSP6_GP_R7 : 0x00000001
 QDSP6_GP_R8 : 0xe353f7cf
 QDSP6_GP_R9 : 0x20c49ba5
QDSP6_GP_R10 : 0xffdf7b00
QDSP6_GP_R11 : 0x00000000
QDSP6_GP_R12 : 0xffdf7b00
QDSP6_GP_R13 : 0x0004afff
QDSP6_GP_R14 : 0x8900cd98
QDSP6_GP_R15 : 0x00000002
QDSP6_GP_R16 : 0x8ac54cf8
QDSP6_GP_R17 : 0x00000000
QDSP6_GP_R18 : 0x00000000
QDSP6_GP_R19 : 0x00000000
QDSP6_GP_R20 : 0x89a7c900
QDSP6_GP_R21 : 0x00000000
QDSP6_GP_R22 : 0x00000000
QDSP6_GP_R23 : 0x00000000
QDS
[17997.844770] PM: resume of devices complete after 6.043 msecs
[17997.846265] msm_suspend_end, is_wakeup_from_pc = 1
[17997.856032] QSEECOM: qseecom_receive_req: Interrupted: exiting wait_rcv_req loop
[17997.856062] QSEECOM: qseecom_ioctl: failed qseecom_receive_req: -512
[17997.856093] QSEECOM: qseecom_receive_req: Interrupted: exiting wait_rcv_req loop
[17997.856093] QSEECOM: qseecom_ioctl: failed qseecom_receive_req: -512
[17997.846296] Restarting tasks ... done.
[17997.932424] PM: suspend exit 2015-12-20 21:00:18.088440290 UTC
[17997.932455] suspend: exit suspend, ret = 0 (2015-12-20 21:00:18.088440290 UTC)
[17998.102942] smd_pkt_read notifying reset for smd_pkt_dev id:7
[17998.105383] smd_pkt_read notifying reset for smd_pkt_dev id:6
[17998.105444] smd_pkt_read notifying reset for smd_pkt_dev id:5
[17998.105505] smd_pkt_read notifying reset for smd_pkt_dev id:4
[17998.105536] smd_pkt_read notifying reset for smd_pkt_dev id:3
[17998.105566] smd_pkt_read notifying reset for smd_pkt_dev id:2
[17998.105627] smd_pkt_read notifying reset for smd_pkt_dev id:1
[17998.105658] smd_pkt_read notifying reset for smd_pkt_dev id:0
[17998.109290] modem_ramdump modem_reset_reason = 0
[17998.109320] kevent_trigger: queue event work event id is 5
[17998.109412] kevent_work: send kobject uevent, EVENT=ModemCrashNoRamdump
[17998.118568] subsys-restart: subsystem_powerup(): [c2f6aac0]: Powering up modem
[17998.422276] ADDRCONF(NETDEV_UP): rmnet0: link is not ready
[17998.979975] pil pil1: modem_fw: Brought out of reset
[17999.110846] smd_pkt_read: pid: 1072, tgid: 691, task name: qmuxd
[18001.188521] pil pil2: modem: Brought out of reset
[18001.188643] subsys-restart: subsystem_restart_wq_func(): [c2f6aac0]: Restart sequence for modem completed.
[18001.824565] Notify: smsm init
[18005.101599] handle_bam_mux_cmd: dropping invalid LCID 10 reserved 1 cmd 1 pad 0 ch 10 len 0
[18005.107825] handle_bam_mux_cmd: dropping invalid LCID 11 reserved 1 cmd 1 pad 0 ch 11 len 0
[18006.972284] [TSL277X_P][Before] raw=338, status=0, far=500, near=683
[18006.972314] [TSL277X_P][After] far=500, near=683, from=249, to=683
[18006.973840] [TP] setting sleep mode 0
[18011.204574] PM: suspend entry 2015-12-20 21:00:31.359925232 UTC
[18005.068881] sps:BAM 0x124c2000 enabled: ver:0x5, number of pipes:6
[18011.213944] Freezing user space processes ... 
[18011.245105] (elapsed 0.03 seconds) done.
[18011.744175] Freezing remaining freezable tasks ... (elapsed 0.08 seconds) done.
[18011.824748] Suspending console(s) (use no_console_suspend to debug)
[18011.828533] l3gd20_gyr 12-006a: suspend
[18011.828624] [TP] synaptics_suspend() +++
[18011.828624] [TP] synaptics_suspend() ---
[18011.836499] PM: suspend of devices complete after 10.651 msecs
[18011.837079] PM: late suspend of devices complete after 0.579 msecs
[18011.838238] [TP] synaptics_suspend_noirq() +++
[18011.838238] [TP] synaptics_suspend_noirq() ---
[18011.838421] PM: noirq suspend of devices complete after 1.342 msecs
[18011.838452] Disabling non-boot CPUs ...
edit retag flag offensive close delete

Comments

Similar experience with Proximus (Belgium), 4G network unstable.

Not sure it's to be seen as a bug: in case of lost connection, it makes sense to ask PIN code again if the cell tower has changed (think of IMSI catching devices).

objectifnul ( 2015-12-21 00:53:52 +0300 )edit

Network disconnections (because of poor signal) should be handled gracefully and should not cause a crash of the modem subsystem (see log), so it's definitely a bug.

The PIN code should normally be asked only when rebooting the device, and then stored somewhere in memory by the modem firmware. What I see from the log is that the firmware crashed and reset itself, loosing the pin code in the process.

slashdotted ( 2015-12-21 08:54:37 +0300 )edit