Re: [PATCH][GIT PULL] tracing: Fix compile issue for trace_sched_wakeup.c

Masami Hiramatsu
2010-10-22T04:56:38Z

(2010/10/21 20:03), Peter Zijlstra wrote:
> On Thu, 2010-10-21 at 07:01 -0400, Steven Rostedt wrote:
>> On Thu, 2010-10-21 at 09:22 +0200, Peter Zijlstra wrote:
>>> On Thu, 2010-10-21 at 11:58 +0900, Masami Hiramatsu wrote:
>>>
>>>> It seems there can be a bug in stop_machine() routine under
>>>> heavy use. usually that is called just once at a time, but jump
>>>> label and optprobe might call it heavily (thousands times?).
>>>> So some racy situation can be happen easily.
>>>
>>> There are people doing hotplug stress testing, that too results in heavy
>>> stop_machine usage.
>>
>> But with hotplug, isn't there a bit more time between stop machine
>> calls? That is, you need to do a bit of work to bring down or up a CPU,
>> and that will slow down the number of stop machine calls together.
>>
>> Here, we do a simple change and call stop machine() several times.
>>
>> Although, I agree, I do not think the bug is in stop machine itself, but
>> perhaps the way we are using it might have some niche anomaly that we
>> are hitting.
>
> Possibly, but wouldn't it make sense to batch up the work and simply
> call stop_machine only once? I mean, if you already know you're going to
> do this...
>

Yeah, here is what I had tried;

http://sourceware.org/ml/systemtap/2010-q2/msg00294.html

I agree that the crash will just disappear with this API,
but it will be just hidden, still remains inside kernel.

Anyway, this batch patching is needed from performance
viewpoint too. I'll rework on it.

Thank you,

--
Masami HIRAMATSU
2nd Dept. Linux Technology Center
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com