Linux Power Management development
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Peter Zijlstra <peterz@infradead.org>,
	linux-kernel@vger.kernel.org, mingo@kernel.org,
	tglx@linutronix.de, Linux PM list <linux-pm@vger.kernel.org>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	David Vrabel <david.vrabel@citrix.com>
Subject: Re: [PATCH 08/09] tick/xen: Provide and use tick_suspend_local() and tick_resume_local()
Date: Wed, 25 Mar 2015 16:44:45 -0400	[thread overview]
Message-ID: <20150325204445.GA4065@l.oracle.com> (raw)
In-Reply-To: <3797850.XzqKU1ZfKa@vostro.rjw.lan>

On Wed, Mar 25, 2015 at 09:57:18PM +0100, Rafael J. Wysocki wrote:
> On Wednesday, March 25, 2015 04:13:09 PM Konrad Rzeszutek Wilk wrote:
> > On Wed, Mar 25, 2015 at 01:11:04PM +0100, Rafael J. Wysocki wrote:
> > > From: Thomas Gleixner <tglx@linutronix.de>
> > > 
> > > Xen calls on every cpu into tick_resume() which is just wrong.
> > > tick_resume() is for the syscore global suspend/resume invocation.
> > > What XEN really wants is a per cpu local resume function.
> > > 
> > > Provide a tick_resume_local() function and use it in XEN.
> > > 
> > > Also provide a complementary tick_suspend_local() and modify
> > > tick_unfreeze() and tick_freeze(), respectively, to use the
> > > new local tick resume/suspend functions.
> > > 
> > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> > > Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> > > Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> > > Cc: David Vrabel <david.vrabel@citrix.com>
> > > [ rjw: Combined two patches, rebased, modified subject/changelog ]
> > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> > > ---
> > >  arch/x86/xen/suspend.c       |    2 -
> > >  include/linux/tick.h         |    6 ++--
> > >  kernel/time/tick-broadcast.c |   24 ++++++++++++------
> > >  kernel/time/tick-common.c    |   57 +++++++++++++++++++++++++++++--------------
> > >  kernel/time/tick-internal.h  |    8 ++++--
> > >  5 files changed, 66 insertions(+), 31 deletions(-)
> > > 
> > > Index: linux-pm/arch/x86/xen/suspend.c
> > > ===================================================================
> > > --- linux-pm.orig/arch/x86/xen/suspend.c
> > > +++ linux-pm/arch/x86/xen/suspend.c
> > > @@ -85,7 +85,7 @@ static void xen_vcpu_notify_restore(void
> > >  	if (smp_processor_id() == 0)
> > >  		return;
> > >  
> > > -	tick_resume();
> > > +	tick_resume_local();
> > 
> > I am looking at Linus's tree and I see:
> > 
> > 82 static void xen_vcpu_notify_restore(void *data)                                 
> >  83 {                                                                               
> >  84         unsigned long reason = (unsigned long)data;                             
> >  85                                                                                 
> >  86         /* Boot processor notified via generic timekeeping_resume() */          
> >  87         if ( smp_processor_id() == 0)                                           
> >  88                 return;                                                         
> >  89                                                                                 
> >  90         clockevents_notify(reason, NULL);                                       
> >  91 }                             
> > 
> > So there must be another patch that altered the clockevents_notify?
> 
> Yes, there is.  It is the [06/09] in this series
> (https://patchwork.kernel.org/patch/6090631/).
> 
> I should have CCed it to you too, sorry about that.

That is alright.
> 
> > Is there an git tree with all of these patches?
> 
> Not yet, but they all are in the linux-pm patchwork at
> 
> https://patchwork.kernel.org/project/linux-pm/list/
> 
> I can create a branch in the linux-pm.git tree for them if that helps,
> please let me know.

If it is not too much trouble.. 

Thank you.
> 
> 
> -- 
> I speak only for myself.
> Rafael J. Wysocki, Intel Open Source Technology Center.

  reply	other threads:[~2015-03-25 20:45 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20150216121435.203983131@infradead.org>
2015-03-25 12:04 ` [PATCH 00/09] Some kernel/time cleanups (related to timer_suspend/resume) Rafael J. Wysocki
2015-03-25 12:05   ` [PATCH 01/09] clockevents: Remove CONFIG_GENERIC_CLOCKEVENTS_BUILD Rafael J. Wysocki
2015-03-25 12:06   ` [PATCH 02/09] tick: Move clocksource related stuff to timekeeping.h Rafael J. Wysocki
2015-03-25 12:06   ` [PATCH 03/09] tick: Simplify tick-internal.h Rafael J. Wysocki
2015-03-25 12:07   ` [PATCH 04/09] tick: Move core only declarations and functions to core Rafael J. Wysocki
2015-03-25 12:08   ` [PATCH 05/09] clockevents: Remove extra local_irq_save in clockevents_exchange_device() Rafael J. Wysocki
2015-03-25 12:09   ` [PATCH 06/09] clockevents: Make suspend/resume calls explicit Rafael J. Wysocki
2015-03-25 12:09   ` [PATCH 07/09] tick: Make tick_resume_broadcast_oneshot static Rafael J. Wysocki
2015-03-25 12:11   ` [PATCH 08/09] tick/xen: Provide and use tick_suspend_local() and tick_resume_local() Rafael J. Wysocki
2015-03-25 20:13     ` Konrad Rzeszutek Wilk
2015-03-25 20:57       ` Rafael J. Wysocki
2015-03-25 20:44         ` Konrad Rzeszutek Wilk [this message]
2015-03-25 21:36           ` Rafael J. Wysocki
     [not found]     ` <tip-f46481d0a7cb942b84145acb80ad43bdb1ff8eb4@git.kernel.org>
2015-04-03 13:21       ` [PATCH][fix for tip/timers/core] timers / PM: Fix up tick_unfreeze() Rafael J. Wysocki
2015-04-03 13:31         ` [PATCH][cleanup for tip/timers/core] timers / PM: Drop unnecessary braces from tick_freeze() Rafael J. Wysocki
2015-03-25 12:11   ` [PATCH 09/09] arm: bl_switcher: Kill tick suspend hackery Rafael J. Wysocki
2015-03-25 12:34     ` Nicolas Pitre
2015-03-25 12:13   ` [PATCH 00/09] Some kernel/time cleanups (related to timer_suspend/resume) Rafael J. Wysocki
2015-03-31 22:45   ` [GIT PULL] kernel/time cleanups (related to tick_suspend/resume) Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150325204445.GA4065@l.oracle.com \
    --to=konrad.wilk@oracle.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rjw@rjwysocki.net \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox