All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Wang <wangyun@linux.vnet.ibm.com>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Borislav Petkov <bp@alien8.de>, Tejun Heo <tj@kernel.org>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Jiri Kosina <jkosina@suse.cz>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Tony Luck <tony.luck@intel.com>,
	linux-kernel@vger.kernel.org, x86@kernel.org,
	Thomas Gleixner <tglx@linutronix.de>,
	rjw@sisk.pl, cpufreq@vger.kernel.org, linux-pm@vger.kernel.org
Subject: Re: NOHZ: WARNING: at arch/x86/kernel/smp.c:123 native_smp_send_reschedule, round 2
Date: Mon, 20 May 2013 15:25:04 +0800	[thread overview]
Message-ID: <5199CFD0.9030101@linux.vnet.ibm.com> (raw)
In-Reply-To: <CAKohponk-FQpHOx407FL63ZCYVgz2C-ScvZQBQFVxddbL+fS=A@mail.gmail.com>

Hi, Viresh
On 05/20/2013 03:12 PM, Viresh Kumar wrote:
> Hi Michael,
> 
> I haven't followed this mail chain earlier and saw this mail only as I am
> added in cc now. I probably have answers to few questions here:

Thanks for your quick respond :)

> 
> On 20 May 2013 12:36, Michael Wang <wangyun@linux.vnet.ibm.com> wrote:
>> On 05/20/2013 02:58 PM, Michael Wang wrote:
>>> On 05/20/2013 02:47 PM, Borislav Petkov wrote:
>>>> On Mon, May 20, 2013 at 02:23:37PM +0800, Michael Wang wrote:
>>>>> On 05/20/2013 12:50 PM, Borislav Petkov wrote:
>>>>> So there are two questions here:
>>>>> 1. Is gov_queue_work() want to queue the work on offline cpu?
> 
> No. We are only working with online cpus now in cpufreq core and governors.
> 
>>> Besides, the cpu gov_queue_work() is using 'policy->cpus' which seems to
>>> be updated during UP DOWN notify, I think they are supposed to be online.
>>>
>>> But we need expert in cpufreq to confirm all these...
> 
> I confirm this. policy->cpus only contains online cpus.. and
> policy->related_cpus
> always contain online+offline cpus.

Nice to be confirmed :)

> 
>> And I guess this may help to reduce the chance to trigger WARN:
>>
>> diff --git a/drivers/cpufreq/cpufreq_governor.c
>> b/drivers/cpufreq/cpufreq_governor.c
>> index 443442d..0f96013 100644
>> --- a/drivers/cpufreq/cpufreq_governor.c
>> +++ b/drivers/cpufreq/cpufreq_governor.c
>> @@ -180,7 +180,7 @@ void gov_queue_work(struct dbs_data *dbs_data,
>> struct cpufreq_policy *policy,
>>         if (!all_cpus) {
>>                 __gov_queue_work(smp_processor_id(), dbs_data, delay);
>>         } else {
>> -               for_each_cpu(i, policy->cpus)
>> +               for_each_cpu_and(i, policy->cpus, cpu_online_mask)
>>                         __gov_queue_work(i, dbs_data, delay);
>>         }
>>  }
> 
> Not required at all... policy->cpus is guaranteed to have only online cpus.

Yeah, that's right, I guess the issue is, although the policy->cpus is
correct at a given time, after get cpu from it, it's possible to be
changed, unless we disabled preempt or irq, or hotplug before we use it...

Like such issue cases:
				get x from policy->cpus
	DOWN notifier
	change policy->cpus
	do offline x
				send ipi to x

Will that happen?

Regards,
Michael Wang


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


  reply	other threads:[~2013-05-20  7:25 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-09 12:29 NOHZ: WARNING: at arch/x86/kernel/smp.c:123 native_smp_send_reschedule Jiri Kosina
2013-05-09 12:50 ` Borislav Petkov
2013-05-09 12:58   ` Borislav Petkov
2013-05-15 18:45     ` Paul E. McKenney
2013-05-15 22:43       ` Borislav Petkov
2013-05-15 23:55         ` Paul E. McKenney
2013-05-17 13:56           ` NOHZ: WARNING: at arch/x86/kernel/smp.c:123 native_smp_send_reschedule, round 2 Borislav Petkov
2013-05-20  3:16             ` Michael Wang
2013-05-20  4:50               ` Borislav Petkov
2013-05-20  6:23                 ` Michael Wang
2013-05-20  6:47                   ` Borislav Petkov
2013-05-20  6:58                     ` Michael Wang
2013-05-20  7:06                       ` Michael Wang
2013-05-20  7:12                         ` Viresh Kumar
2013-05-20  7:25                           ` Michael Wang [this message]
2013-05-20  8:56                             ` Michael Wang
2013-05-20  9:09                               ` Viresh Kumar
2013-05-20  9:24                                 ` Michael Wang
2013-05-20 13:23                                   ` Borislav Petkov
2013-05-20 13:43                                     ` Viresh Kumar
2013-05-20 15:08                                       ` Borislav Petkov
2013-05-21  2:20                                     ` Michael Wang
2013-05-21  2:37                                       ` Michael Wang
2013-05-21  7:21                                       ` Borislav Petkov
2013-05-21  7:58                                         ` Michael Wang
2013-05-20  7:36                     ` Tejun Heo
2013-05-20  8:10                 ` Frederic Weisbecker
2013-05-20  9:31                   ` Srivatsa S. Bhat
2013-05-20  9:40                     ` Viresh Kumar
2013-05-20 10:24                       ` Viresh Kumar
2013-06-04 21:20             ` Jiri Kosina
2013-06-05  2:30               ` Michael Wang
2013-06-05  8:08                 ` Jiri Kosina
2013-06-05  8:12                   ` Michael Wang
2013-05-10  0:29 ` NOHZ: WARNING: at arch/x86/kernel/smp.c:123 native_smp_send_reschedule Frederic Weisbecker
2013-05-10  9:28   ` Borislav Petkov
2013-05-10  9:26     ` Frederic Weisbecker
2013-05-10  9:37       ` Ingo Molnar
2013-05-10  9:45         ` Borislav Petkov
2013-05-10 15:31           ` Frederic Weisbecker
2013-05-10  9:43       ` Borislav Petkov
2013-05-10 15:42       ` Jiri Kosina
2013-05-10 15:03   ` Jiri Kosina
2013-05-10 15:21     ` Borislav Petkov
2013-05-10 15:43       ` Frederic Weisbecker
2013-05-10 16:23         ` Borislav Petkov
2013-05-10 21:38           ` Frederic Weisbecker
2013-05-13 14:56             ` Jiri Kosina
2013-05-13 19:40               ` Thomas Gleixner
2013-05-13 20:01                 ` Jiri Kosina
2013-05-14 15:46                 ` [tip:timers/urgent] tick: Don't invoke tick_nohz_stop_sched_tick( ) if the cpu is offline tip-bot for Thomas Gleixner
2013-05-15 19:41                   ` Frederic Weisbecker
2013-05-16 14:06                     ` Thomas Gleixner
2013-05-16 14:15                       ` Borislav Petkov

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=5199CFD0.9030101@linux.vnet.ibm.com \
    --to=wangyun@linux.vnet.ibm.com \
    --cc=bp@alien8.de \
    --cc=cpufreq@vger.kernel.org \
    --cc=fweisbec@gmail.com \
    --cc=jkosina@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=rjw@sisk.pl \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=tony.luck@intel.com \
    --cc=viresh.kumar@linaro.org \
    --cc=x86@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.