Messages in this thread | | | Date | Fri, 11 Dec 2015 22:46:35 +0800 | From | Minfei Huang <> | Subject | Re: Some confusion about the period of updating new function in ftrace |
| |
On 12/11/15 at 09:22P, Steven Rostedt wrote: > On Fri, 11 Dec 2015 18:52:42 +0800 > Minfei Huang <mnfhuang@gmail.com> wrote: > > > Hi, Steven. > > > > There is a confusion which blocks my step to go further for ftrace. > > > > Does ftrace guarantee that the replaced function is finished while > > ftrace is replacing the functions? In the other word, is there a > > possible that new function starts to run, while old function is also > > running (maybe this function is called before replacing the function). > > No there is no such guarantee. That is up to the function callbacks to > handle themselves. >
Got it.
> > > > Function schedule_on_each_cpu maybe fails to excute, if there is no > > enough memory to be allocated? Then kernel may be unstable, if ftrace > > continues, without handling the error, does it? > > > > Previously, I posted a patch to fix this issue, and you nacked it. > > > > [PATCH] workqueue: Add the allocation flags to function > > schedule_on_each_cpu_gfp > > Ah that patch. Actually __GFP_NOFAIL is pretty much deprecated. The > real solution is to manually do the schedule on each CPU. > > I can whip up a patch for that.
Thanks for your explanation.
Thanks Minfei
| |