Messages in this thread |  | | Date | Sat, 20 Jan 2018 10:26:16 +0530 | | From | Pavan Kondeti <> | | Subject | Re: [tip:sched/core] sched/rt: Simplify the IPI based RT balancing logic |
| |
Hi Steve,
On Fri, Jan 19, 2018 at 02:51:15PM -0500, Steven Rostedt wrote: > On Sat, 20 Jan 2018 00:27:56 +0530 > Pavan Kondeti <pkondeti@codeaurora.org> wrote: > > > Hi Steve, > > > > Thanks for the patch. > > > > On Fri, Jan 19, 2018 at 01:12:54PM -0500, Steven Rostedt wrote: > > > On Fri, 19 Jan 2018 13:11:21 -0500 > > > Steven Rostedt <rostedt@goodmis.org> wrote: > > > > > > > void rto_push_irq_work_func(struct irq_work *work) > > > > { > > > > + struct root_domain *rd = > > > > + container_of(work, struct root_domain, rto_push_work); > > > > struct rq *rq; > > > > > > Notice that I also remove the dependency on rq from getting the rd. > > > > > > > Nice. This snippet it self solves the original problem, I reported. > > I will test your patch and let you know the results. > > > > > > I'll break the patch up into two then. One with this snippet, and the > other with the rd ref counting. >
Yeah, this snippet fixed the original problem.
I have not seen "use after free" of rd in my testing. But I can see we are operating on a rd for which refcount is 0. After applying your refcount patch, it never happened. I also verified that we are freeing the rd via IRQ work by dropping the last reference.
Thanks for your help with the patches. Please copy linux-stable for the 1st patch.
Feel free to use Tested-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Thanks, Pavan -- Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc. Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.
|  |