usb: gadget: bam_data: Call IPA disconnect routines synchronously
During a composition switch, disconnect will be handled prior to
function driver unbind. However, since bam_data_disconnect()
schedules a separate work function to handle the heavyweight BAM/IPA
teardown there is a chance that the function-specific disconnect
routines get executed after the cleanup routines, leading to
inconsistent state. For example, rndis_ipa_cleanup() would get called
from rndis_qc_unbind() before rndis_ipa_pipe_disconnect_notify() has
executed, which will lead to failure on the next re-bind. Fix this by
moving the function-specific IPA disconnect routines to be called
directly from bam_data_disconnect().
Change-Id: I638c8a824df73f506e697ac0f9c88f8c119ac1fa
Signed-off-by:
Jack Pham <jackp@codeaurora.org>
Loading
Please register or sign in to comment