lkml.org 
[lkml]   [2015]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] hrtimer: Replace cpu_base->active_bases with a direct check of the active list
On Thu, 9 Apr 2015, Peter Zijlstra wrote:
> On Thu, Apr 09, 2015 at 11:18:52AM +0200, Thomas Gleixner wrote:
> > On Thu, 9 Apr 2015, Peter Zijlstra wrote:
> > > On Thu, Apr 09, 2015 at 09:20:39AM +0200, Ingo Molnar wrote:
> > > > if at least one base is active (on my fairly standard system all cpus
> > > > have at least one active hrtimer base all the time - and many cpus
> > > > have two bases active), then we run hrtimer_get_softirq_time(), which
> > > > dirties the cachelines of all 4 clock bases:
> > > >
> > > > base->clock_base[HRTIMER_BASE_REALTIME].softirq_time = xtim;
> > > > base->clock_base[HRTIMER_BASE_MONOTONIC].softirq_time = mono;
> > > > base->clock_base[HRTIMER_BASE_BOOTTIME].softirq_time = boot;
> > > > base->clock_base[HRTIMER_BASE_TAI].softirq_time = tai;
> > > >
> > > > so in practice we not only touch every cacheline in every timer
> > > > interrupt, but we _dirty_ them, even the inactive ones.
> > > >
> > >
> > > Urgh we should really _really_ kill that entire softirq mess.
> >
> > That's the !highres part. We cannot kill that one unless we remove all
> > support for machines which do not provide hardware for highres
> > support.
>
> Oops, sorry I mixed up the two. Doesn't take away from the fact that I'd
> like to get rid of the highres softirq fallback path.

Indeed.



\
 
 \ /
  Last update: 2015-04-09 12:21    [W:0.129 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site