Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-30 Thread Joonwoo Park
Hi Thomas, Please find patch v3 which makes only tick_do_timer_cpu to run deferral timer wheel to reduce cache bouncing and let me know what you think. Thanks, Joonwoo >From 0c91f82a0b43b247f1ed310212ef3aada7ccc9f7 Mon Sep 17 00:00:00 2001 From: Joonwoo Park Date: Thu, 11 Sep 2014 15:34:25

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-30 Thread Joonwoo Park
Hi Thomas, Please find patch v3 which makes only tick_do_timer_cpu to run deferral timer wheel to reduce cache bouncing and let me know what you think. Thanks, Joonwoo From 0c91f82a0b43b247f1ed310212ef3aada7ccc9f7 Mon Sep 17 00:00:00 2001 From: Joonwoo Park joonw...@codeaurora.org Date: Thu,

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-24 Thread Saravana Kannan
On 03/19/2015 05:10 PM, Saravana Kannan wrote: On 09/23/2014 11:33 AM, Thomas Gleixner wrote: On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = _tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-24 Thread Saravana Kannan
On 03/19/2015 05:10 PM, Saravana Kannan wrote: On 09/23/2014 11:33 AM, Thomas Gleixner wrote: On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = boot_tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this

Re: Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-19 Thread Saravana Kannan
On 09/23/2014 11:33 AM, Thomas Gleixner wrote: On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = _tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this implementation is going to go nowhere. Hi Thomas, To

Re: Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2015-03-19 Thread Saravana Kannan
On 09/23/2014 11:33 AM, Thomas Gleixner wrote: On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = boot_tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this implementation is going to go nowhere. Hi Thomas,

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-26 Thread Joonwoo Park
On Tue, Sep 23, 2014 at 08:33:34PM +0200, Thomas Gleixner wrote: > On Mon, 15 Sep 2014, Joonwoo Park wrote: > > +#ifdef CONFIG_SMP > > +static struct tvec_base *tvec_base_deferral = _tvec_bases; > > +#endif > > In principle I like the idea of a deferrable wheel, but this > implementation is going

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-26 Thread Joonwoo Park
On Tue, Sep 23, 2014 at 08:33:34PM +0200, Thomas Gleixner wrote: On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = boot_tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this implementation is going to go

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-23 Thread Thomas Gleixner
On Mon, 15 Sep 2014, Joonwoo Park wrote: > +#ifdef CONFIG_SMP > +static struct tvec_base *tvec_base_deferral = _tvec_bases; > +#endif In principle I like the idea of a deferrable wheel, but this implementation is going to go nowhere. First of all making it SMP only is silly. The deferrable stuff

Re: [PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-23 Thread Thomas Gleixner
On Mon, 15 Sep 2014, Joonwoo Park wrote: +#ifdef CONFIG_SMP +static struct tvec_base *tvec_base_deferral = boot_tvec_bases; +#endif In principle I like the idea of a deferrable wheel, but this implementation is going to go nowhere. First of all making it SMP only is silly. The deferrable

[PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-15 Thread Joonwoo Park
When a deferrable work (INIT_DEFERRABLE_WORK, etc.) is queued via queue_delayed_work() it's probably intended to run the work item on any CPU that isn't idle. However, we queue the work to run at a later time by starting a deferrable timer that binds to whatever CPU the work is queued on which is

[PATCH v2 RESEND/RFC] timer: make deferrable cpu unbound timers really not bound to a cpu

2014-09-15 Thread Joonwoo Park
When a deferrable work (INIT_DEFERRABLE_WORK, etc.) is queued via queue_delayed_work() it's probably intended to run the work item on any CPU that isn't idle. However, we queue the work to run at a later time by starting a deferrable timer that binds to whatever CPU the work is queued on which is