Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-12-20 Thread Anna-Maria Gleixner
On Tue, 19 Dec 2017, Peter Zijlstra wrote: > On Tue, Dec 19, 2017 at 09:58:44AM +0100, Sebastian Andrzej Siewior wrote: > > this is late I know… > > > > On 2017-09-27 18:40:26 [+0200], Peter Zijlstra wrote: > > > - removed superfluous local_bh_disable(), since local_irq_disable() > > >alread

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-12-19 Thread Peter Zijlstra
On Tue, Dec 19, 2017 at 09:58:44AM +0100, Sebastian Andrzej Siewior wrote: > this is late I know… > > On 2017-09-27 18:40:26 [+0200], Peter Zijlstra wrote: > > - removed superfluous local_bh_disable(), since local_irq_disable() > >already implies much the same. > > it is not superfluous. >

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-12-19 Thread Sebastian Andrzej Siewior
this is late I know… On 2017-09-27 18:40:26 [+0200], Peter Zijlstra wrote: > - removed superfluous local_bh_disable(), since local_irq_disable() >already implies much the same. it is not superfluous. > Please consider... > > @@ -1768,7 +1786,6 @@ int hrtimers_dead_cpu(unsigned int scpu) >

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-28 Thread Peter Zijlstra
On Thu, Sep 28, 2017 at 09:59:50AM +0200, Thomas Gleixner wrote: > On Wed, 27 Sep 2017, Peter Zijlstra wrote: > > On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > > static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base, > > struct hrtimer_clock_bas

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-28 Thread Thomas Gleixner
On Wed, 27 Sep 2017, Peter Zijlstra wrote: > On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base, > struct hrtimer_clock_base *base, > struct hrtimer *timer, ktime_t *now,

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-27 Thread Peter Zijlstra
On Wed, Sep 27, 2017 at 04:22:39PM +0200, Anna-Maria Gleixner wrote: > I know and Thomas was unhappy about that as well, but we did not come > up with a better solution. > > The nasty alternative is: > > static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base, > struct

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-27 Thread Peter Zijlstra
On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > @@ -540,12 +539,23 @@ static ktime_t __hrtimer_get_next_event( > > hrtimer_update_next_timer(cpu_base, NULL); > > + if (!cpu_base->softirq_activated) { > + active = cpu_base->active_bases & HRTIMER_ACTI

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-27 Thread Anna-Maria Gleixner
On Tue, 26 Sep 2017, Peter Zijlstra wrote: > On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > > static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base, > > struct hrtimer_clock_base *base, > > - struct hrtimer *timer, ktime_t *n

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-26 Thread Peter Zijlstra
On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > static void __run_hrtimer(struct hrtimer_cpu_base *cpu_base, > struct hrtimer_clock_base *base, > - struct hrtimer *timer, ktime_t *now) > + struct hrtimer *ti

Re: [PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-09-26 Thread Peter Zijlstra
On Thu, Aug 31, 2017 at 12:23:42PM -, Anna-Maria Gleixner wrote: > @@ -184,6 +188,7 @@ struct hrtimer_cpu_base { > unsigned intclock_was_set_seq; > boolmigration_enabled; > boolnohz_active; > + boo

[PATCH 17/25] hrtimer: Implementation of softirq hrtimer handling

2017-08-31 Thread Anna-Maria Gleixner
From: Anna-Maria Gleixner hrtimers are executed always in hard irq context. If a hrtimer callback function needs to be exectued in softirq context, the detour using tasklets is required. To facilitate this, also in regards to real time specific handling of hrtimers, new clock ids ease the use of