Re: Kernel Oops when downloading data from a 4G modem connected via USB

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 4/29/2018 4:44 PM, Amr Bekhit wrote:
> Hello,
> 
> We're working with an embedded system that uses the RK3188 SoC and has a
> Quectel EC25 4G modem connected via USB. We're using Buildroot 2018.02.1 to
> compile the kernel (4.15.16 using the radxarock_defconfig) and root file
> system. The system enumerates the USB just fine and Quectel's quectel-CM
> executable is then used to start QMI and connect to the 4G network. The
> connection is successful, and I can ping websites just fine. However, when
> I come to download a large file, a kernel oops occurs. This happens
> consistently. Here's an example log:
> 
> # wget https://urldefense.proofpoint.com/v2/url?u=http-3A__speedtest.tele2.net_100MB.zip&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=cQBKt4q-qzNVC53rNAwuwplH23V61rHQhhULvdLA0U8&m=jJJIamtosvad_neUIcXyUCTtHjH3ue9cRjgWDi0hOTs&s=sAsFiRlSCGgMQbB2kirQXr2nURDLZn1rEGlMX5JvJ3k&e=
> --2018-04-27 14:54:54--  https://urldefense.proofpoint.com/v2/url?u=http-3A__speedtest.tele2.net_100MB.zip&d=DwIBaQ&c=DPL6_X_6JkXFx7AXWqB0tg&r=cQBKt4q-qzNVC53rNAwuwplH23V61rHQhhULvdLA0U8&m=jJJIamtosvad_neUIcXyUCTtHjH3ue9cRjgWDi0hOTs&s=sAsFiRlSCGgMQbB2kirQXr2nURDLZn1rEGlMX5JvJ3k&e=
> Resolving speedtest.tele2.net... 90.130.70.73, 2a00:800:1010::1
> Connecting to speedtest.tele2.net|90.130.70.73|:80... connected.
> HTTP request sent, awaiting response... 200 OK
> Length: 104857600 (100M) [application/zip]
> Saving to: '100MB.zip'
> 
> 100MB.zip                                        0%[
> 
>    ] 358.58K  1.72MB/s               dwc2 101c0000.usb:
> dwc2_hc_chhltd_intr_dma: Channel 1 - ChHltd set, but reason is unknown
> dwc2 101c0000.usb: hcint 0x00000002, intsts 0x04000029
> dwc2 101c0000.usb: dwc2_update_urb_state_abn(): trimming xfer length
> dwc2 101c0000.usb: dwc2_update_urb_state(): trimming xfer length
> Unable to handle kernel paging request at virtual address 2f0cf7d0
> pgd = e12e3a71
> [2f0cf7d0] *pgd=00000000
> Internal error: Oops: 5 [#1] SMP ARM
> Modules linked in:
> CPU: 1 PID: 196 Comm: wget Not tainted 4.15.16 #2
> Hardware name: Rockchip (Device Tree)
> PC is at kfree_skb_list+0x18/0x28
> LR is at skb_release_data+0x40/0x134
> pc : [<c0508f58>]    lr : [<c05098f8>]    psr: 20000013
> sp : ef085d60  ip : ef085d78  fp : ef085d74
> r10: 00000000  r9 : 00000000  r8 : ee4a1084
> r7 : ef085df8  r6 : 00000000  r5 : ee9b9780  r4 : eeae7f40
> r3 : 00000000  r2 : 00001b40  r1 : 00001380  r0 : 2f0cf7d0
> Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
> Control: 10c5387d  Table: 8e45804a  DAC: 00000051
> Process wget (pid: 196, stack limit = 0x11d0fd5f)
> Stack: (0xef085d60 to 0xef086000)
> 5d60: eeae7f40 ee9b9780 ef085d94 ef085d78 c05098f8 c0508f4c ee9b9780
> 00001600
> 5d80: ee9b9780 ef085df8 ef085dac ef085d98 c0508ec0 c05098c4 ee9b9780
> 00001600
> 5da0: ef085dc4 ef085db0 c0508ed8 c0508ea4 ee4a0cc0 00001600 ef085e4c
> ef085dc8
> 5dc0: c055b948 c0508ed0 effba620 00000000 eeede0b0 00000004 ef085e20
> ee4a0d5c
> 5de0: 00000001 00000000 ee4a115c 00000001 ef085e90 00000a00 5ae339c0
> 1c015810
> 5e00: ef085ef0 7fffffff 5ae339c0 1c015810 ef085e28 ef085e2c 00000000
> 00000000
> 5e20: 00000008 ef085e90 c055b304 ee9bdc00 eeea5500 00002000 ef084000
> 00000000
> 5e40: ef085e74 ef085e50 c0582410 c055b310 00000000 ef085e5c ef085edc
> 00000000
> 5e60: c05823c8 00002000 ef085e8c ef085e78 c04fdb38 c05823d4 ef085ef0
> 00002000
> 5e80: ef085edc ef085e90 c04fdbc4 c04fdb24 00000000 00000000 00000000
> 00001600
> 5ea0: 00000a00 ef085ee8 00000001 00000002 00000000 00000000 00000000
> ef085f08
> 5ec0: ee9bdc00 00000000 00000000 ef085f80 ef085f4c ef085ee0 c01eaf88
> c04fdb48
> 5ee0: 00002000 00000000 00e25b18 00002000 00000000 00000000 00002000
> ef085ee8
> 5f00: 00000001 00000002 ee9bdc00 00000000 00000000 00000000 00000000
> 00000000
> 5f20: 00000000 00000000 be9243e0 ee9bdc00 00000000 00002000 00e25b18
> ef085f80
> 5f40: ef085f7c ef085f50 c01eb044 c01eae94 c02072ac c020720c ef085f7c
> ee9bdc00
> 5f60: ee9bdc00 00e25b18 00002000 c0107c84 ef085fa4 ef085f80 c01eb4b0
> c01eafb8
> 5f80: 00000000 00000000 00000000 00000003 0008ce08 00000003 00000000
> ef085fa8
> 5fa0: c0107aa0 c01eb474 00000000 00000003 00000003 00e25b18 00002000
> 00000000
> 5fc0: 00000000 00000003 0008ce08 00000003 00002000 00000000 000bf64d
> 00000000
> 5fe0: 000850a4 be924470 000164e0 b6cacaf8 60000010 00000003 ffffffff
> ffffffff
> Backtrace:
> [<c0508f40>] (kfree_skb_list) from [<c05098f8>]
> (skb_release_data+0x40/0x134)
>    r5:ee9b9780 r4:eeae7f40
> [<c05098b8>] (skb_release_data) from [<c0508ec0>]
> (skb_release_all+0x28/0x2c)
>    r7:ef085df8 r6:ee9b9780 r5:00001600 r4:ee9b9780
> [<c0508e98>] (skb_release_all) from [<c0508ed8>] (__kfree_skb+0x14/0x20)
>    r5:00001600 r4:ee9b9780
> [<c0508ec4>] (__kfree_skb) from [<c055b948>] (tcp_recvmsg+0x644/0x8c8)
>    r5:00001600 r4:ee4a0cc0
> [<c055b304>] (tcp_recvmsg) from [<c0582410>] (inet_recvmsg+0x48/0xc4)
>    r10:00000000 r9:ef084000 r8:00002000 r7:eeea5500 r6:ee9bdc00 r5:c055b304
>    r4:ef085e90
> [<c05823c8>] (inet_recvmsg) from [<c04fdb38>] (sock_recvmsg+0x20/0x24)
>    r5:00002000 r4:c05823c8
> [<c04fdb18>] (sock_recvmsg) from [<c04fdbc4>] (sock_read_iter+0x88/0xb0)
>    r5:00002000 r4:ef085ef0
> [<c04fdb3c>] (sock_read_iter) from [<c01eaf88>] (__vfs_read+0x100/0x124)
>    r7:ef085f80 r6:00000000 r5:00000000 r4:ee9bdc00
> [<c01eae88>] (__vfs_read) from [<c01eb044>] (vfs_read+0x98/0x104)
>    r8:ef085f80 r7:00e25b18 r6:00002000 r5:00000000 r4:ee9bdc00
> [<c01eafac>] (vfs_read) from [<c01eb4b0>] (SyS_read+0x48/0x80)
>    r8:c0107c84 r7:00002000 r6:00e25b18 r5:ee9bdc00 r4:ee9bdc00
> [<c01eb468>] (SyS_read) from [<c0107aa0>] (ret_fast_syscall+0x0/0x54)
>    r7:00000003 r6:0008ce08 r5:00000003 r4:00000000
> Code: e24cb004 e3500000 1a000000 e89da830 (e5904000)
> ---[ end trace 7a84dd028106284e ]---
> 
> The repeated references to dwc2 in the log made me think there may be a
> problem in the USB driver. Any thoughts?
> 
> Amr
> 

Could you please apply follow patches from linux-usb mailing list:
1. usb: dwc2: hcd: Fix host channel halt flow
2. usb: dwc2: host: Fix transaction errors in host mode
and test again.

Thanks,
Minas
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux