Messages in this thread | | | Subject | Re: [PATCH] rpmsg: glink: Remove channel decouple from rpdev release | From | Chris Lew <> | Date | Fri, 11 Oct 2019 11:43:23 -0700 |
| |
On 10/9/2019 10:04 PM, Stephen Boyd wrote: > Quoting Chris Lew (2019-10-08 18:33:45) >> If a channel is being rapidly restarted and the kobj release worker is >> busy, there is a chance the the rpdev_release function will run after >> the channel struct itself has been released. >> >> There should not be a need to decouple the channel from rpdev in the >> rpdev release since that should only happen from the channel close >> commands. >> >> Signed-off-by: Chris Lew <clew@codeaurora.org> > > Fixes tag? The whole thing sounds broken and probably is still racy in > the face of SMP given that channel->rpdev is tested for "published" or > not. Can you describe the race that you're closing more? >
Thanks Stephen, will add Fixes tag and try to describe the race better.
I agree that the whole thing sounds broken, the glink channel cleanup code has a couple bugs that need to be addressed in a more extensive patch. This patch is more to address the immediate issue of a use-after-free from one of the races.
-- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
| |