Thread (11 messages) 11 messages, 5 authors, 2021-08-27

Re: [PATCH v2 1/3] Revert "usb: gadget: u_audio: add real feedback implementation"

From: Ferry Toth <hidden>
Date: 2021-08-27 20:41:13
Also in: linux-arm-msm, linux-devicetree, linux-doc, lkml

Op 27-08-2021 om 10:29 schreef Greg Kroah-Hartman:
On Thu, Aug 26, 2021 at 08:57:37PM +0200, Ferry Toth wrote:
quoted
This reverts commit e89bb4288378b85c82212b60dc98ecda6b3d3a70.

The commit is part of a series with commit
24f779dac8f3efb9629adc0e486914d93dc45517 causing a BUG on dwc3
hardware, at least on Intel Merrifield platform when configured
through configfs:
BUG: kernel NULL pointer dereference, address: 0000000000000008
...
RIP: 0010:dwc3_gadget_del_and_unmap_request+0x19/0xe0
...
Call Trace:
  dwc3_remove_requests.constprop.0+0x12f/0x170
  __dwc3_gadget_ep_disable+0x7a/0x160
  dwc3_gadget_ep_disable+0x3d/0xd0
  usb_ep_disable+0x1c/0x70
  u_audio_stop_capture+0x79/0x120 [u_audio]
  afunc_set_alt+0x73/0x80 [usb_f_uac2]
  composite_setup+0x224/0x1b90 [libcomposite]

Pavel's suggestion to add
`echo "adaptive" > functions/uac2.usb0/c_sync` to the configfs script
resolves the issue.
Thinh suggests "the crash is probably because of f_uac2 prematurely
freeing feedback request before its completion. usb_ep_dequeue() is
asynchronous. dwc2() may treat it as a synchronous call so you didn't
get a crash."

Revert as this is a regression and the kernel shouldn't crash depending
on configuration parameters.
Are these normal configuration options in the wild, or is this just
something that you "can do"?
It's a work around suggested by Pavel, a line that can be added to 
configfs script.
quoted
Signed-off-by: Ferry Toth <redacted>
I need an ack from the original authors to revert all this...
A fix has appeared:
https://lore.kernel.org/linux-usb/1jfsuvw817.fsf@starbuckisacylon.baylibre.com/T/#m922149b7e74204c8ed1bed2c624910ab4eafd43c (local)

This has been acked by Felipe. If we can get that in 5.14.0 it would be 
preferable to reverting this series.
thanks,

greg k-h
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help