lkml.org 
[lkml]   [2021]   [Jul]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v10 0/6] Re-introduce TX FIFO resize for larger EP bursting
    From
    Date
    Hi,

    Op 23-07-2021 om 13:23 schreef Felipe Balbi:
    > Ferry Toth <fntoth@gmail.com> writes:
    >
    >> Hi
    >>
    >> Op 23-07-2021 om 08:59 schreef Felipe Balbi:
    >>> Hi,
    >>>
    >>> Ferry Toth <fntoth@gmail.com> writes:
    >>>>>> kernel: configfs-gadget gadget: u_audio_start_playback:451 Error!
    >>>>>> kernel: configfs-gadget gadget: u_audio_start_playback:451 Error!
    >>>>>> kernel: dwc3 dwc3.0.auto: request 00000000fbc71244 was not queued to ep5in
    >>>>>> kernel: dwc3 dwc3.0.auto: request 00000000ad1b8c18 was not queued to ep5in
    >>>>>> kernel: dwc3 dwc3.0.auto: Fifosize(2154) > RAM size(2022) ep5in
    >>>>>> depth:115540359
    >>>>>> kernel: configfs-gadget gadget: u_audio_start_playback:451 Error!
    >>>>>> kernel: configfs-gadget gadget: u_audio_start_playback:451 Error!
    >>>>>> kernel: dwc3 dwc3.0.auto: request 000000003c32dcc5 was not queued to ep5in
    >>>>>> kernel: dwc3 dwc3.0.auto: request 00000000b2512aa9 was not queued to ep5in
    >>>>>>
    >>>>>> Removing uac2 from the config makes the call trace go away, but the R/W
    >>>>>> speed does not change.
    >>>> I am testing with 5.14.0-rc2 and now related error appears (not in rc1).
    >>>> Disabling uac2 solves it still. Any idea what it could be?
    >>>>
    >>>> BUG: unable to handle page fault for address: 0000000500000000
    >>>> #PF: supervisor instruction fetch in kernel mode
    >>>> #PF: error_code(0x0010) - not-present page
    >>>> PGD 0 P4D 0
    >>>> Oops: 0010 [#1] SMP PTI
    >>>> CPU: 0 PID: 494 Comm: irq/14-dwc3 Not tainted
    >>>> 5.14.0-rc2-edison-acpi-standard #1
    >>> (cool that you're running on ACPI heh)
    >> Thanks to Andy this is Edison-Arduino board with ACPI.
    >>>> Hardware name: Intel Corporation Merrifield/BODEGA BAY, BIOS 542
    >>>> 2015.01.21:18.19.48
    >>>> RIP: 0010:0x500000000
    >>>> Code: Unable to access opcode bytes at RIP 0x4ffffffd6.
    >>>> RSP: 0018:ffffa4d00045fc28 EFLAGS: 00010046
    >>>> RAX: 0000000500000000 RBX: ffff8cd546aed200 RCX: 0000000000000000
    >>>> RDX: 0000000000000000 RSI: ffff8cd547bfcae0 RDI: ffff8cd546aed200
    >>>> RBP: ffff8cd547bfcae0 R08: 0000000000000000 R09: 0000000000000001
    >>>> R10: ffff8cd541fd28c0 R11: 0000000000000000 R12: ffff8cd547342828
    >>>> R13: ffff8cd546aed248 R14: 0000000000000000 R15: ffff8cd548b1d000
    >>>> FS: 0000000000000000(0000) GS:ffff8cd57e200000(0000) knlGS:0000000000000000
    >>>> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    >>>> CR2: 0000000500000000 CR3: 000000000311e000 CR4: 00000000001006f0
    >>>> Call Trace:
    >>>> ? dwc3_remove_requests.constprop.0+0x14d/0x170
    >>>> ? __dwc3_gadget_ep_disable+0x7a/0x160
    >>>> ? dwc3_gadget_ep_disable+0x3d/0xd0
    >>>> ? usb_ep_disable+0x1c/0x
    >>>> ? u_audio_stop_capture+0x79/0x120 [u_audio]
    >>>> ? afunc_set_alt+0x73/0x80 [usb_f_uac2]
    >>>> ? composite_setup+0x224/0x1b90 [libcomposite]
    >>>> ? __dwc3_gadget_kick_transfer+0x160/0x400
    >>>> ? dwc3_gadget_ep_queue+0xf3/0x1a0
    >>>> ? configfs_composite_setup+0x6b/0x90 [libcomposite]
    >>>> ? configfs_composite_setup+0x6b/0x90 [libcomposite]
    >>>> ? dwc3_ep0_interrupt+0x459/0xa40
    >>>> ? dwc3_thread_interrupt+0x8ee/0xf40
    >>>> ? __schedule+0x235/0x6c0
    >>>> ? disable_irq_nosync+0x10/0x10
    >>>> ? irq_thread_fn+0x1b/0x60
    >>>> ? irq_thread+0xc0/0x160
    >>>> ? irq_thread_check_affinity+0x70/0x70
    >>>> ? irq_forced_thread_fn+0x70/0x70
    >>>> ? kthread+0x122/0x140
    >>>> ? set_kthread_struct+0x40/0x40
    >>>> ? ret_from_fork+0x22/0x30
    >>> Do you mind enabling dwc3 traces and collecting them? Trying to figure
    >>> out how we got here.
    >>>
    >> I'll try if I can get the same error by booting with USB in host mode
    >> and then switch to device mode. If so I can enable traces and collect as
    >> you explained me before.
    >>
    >> I'll try before monday, as then I fly for a holiday and will not be
    >> available before rc5.
    > you can enable all of those with kernel cmdline :-)
    >
    > https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
    >
    > you need ftrace_dump_on_oops=1 and also need the correct options on
    > trace_buf_size and trace_event.
    >
    On Edison-Arduino I have a switch to go to device mode, after which udev
    triggers a script configure gadgets through configfs.

    I tried to log following these instructions:

    https://www.kernel.org/doc/html/latest/driver-api/usb/dwc3.html#reporting-bugs <https://www.kernel.org/doc/html/latest/driver-api/usb/dwc3.html#reporting-bugs>

    Unfortunately the kernel crashes so badly I can not get to the ` cp
    /t/trace /root/trace.txt` line (after a while the watchdog kicks).

    What to do next?


    BTW there is a secondary problem not related to dwc3: the console is not
    working well and loosing chars. I can connect through wifi/ssh though.

    \
     
     \ /
      Last update: 2021-07-24 23:01    [W:2.887 / U:0.160 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site