Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
usb: dwc2: host: Avoid use of chan->qh after qh freed
When poking around with USB devices with slub_debug enabled, I found another obvious use after free. Turns out that in dwc2_hc_n_intr() I was in a state when the contents of chan->qh was filled with 0x6b, indicating that chan->qh was freed but chan still had a reference to it. Let's make sure that whenever we free qh we also make sure we remove a reference from its channel. The bug fixed here doesn't appear to be new--I believe I just got lucky and happened to see it while stress testing. Acked-by: John Youn <[email protected]> Signed-off-by: Douglas Anderson <[email protected]> Reviewed-by: Kever Yang <[email protected]> Tested-by: Heiko Stuebner <[email protected]> Tested-by: Stefan Wahren <[email protected]> Signed-off-by: Felipe Balbi <[email protected]>
- Loading branch information