Re: [PATCH 1/5] ftrace: Synchronize variable setting withbreakpoints

From: Steven Rostedt
Date: Thu May 31 2012 - 16:49:26 EST


On Thu, 2012-05-31 at 22:40 +0200, Peter Zijlstra wrote:
> On Thu, 2012-05-31 at 16:37 -0400, Steven Rostedt wrote:
> > On Thu, 2012-05-31 at 22:26 +0200, Peter Zijlstra wrote:
> >
> > > Right, but when you loose stop-machine you could simply do 30k
> > > kmap_atomic/kunmap_atomic's consecutively since you're not holding
> > > anybody up.
> >
> > It requires 3 IPIs per update too. Thus that's 90,000 IPIs you are
> > blasting^Wsending to all CPUs.
>
> Uhm, no.
>

----------------------------------+
> for_each() { |
> kmap_atomic() |
> frob int3 |
> kunmap_atomic(); |
> } |
> |
> sync-ipi-broadcast(); +--- Break points applied
> |
> for_each() { |
> kmap_atomic(); |
> frob tail |
> kunmap_atomic(); |
> } |
----------------------------------+

Note, for the above time, the entire kernel has breakpoints added, and
every function is taking a hit due to it. By slowing down this process,
the rest of the system *will* be impacted. Ideally, we want to finish it
as quick as possible. Not to mention, the kmap_atomics will be slowed
down by the breakpoints that are attached to them.

-- Steve

>
> sync-ipi-broadcast();
>
> for_each() {
> kmap_atomic();
> frob head
> kunmap_atomic();
> };
>
> sync-ipi-broadcast();
>
> How is that sending 90k ipis?


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/