From: Thomas Gleixner <tglx@linutronix.de>
To: "Yu, Fenghua" <fenghua.yu@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>, H Peter Anvin <hpa@zytor.com>,
"Luck, Tony" <tony.luck@intel.com>,
"Mallick, Asit K" <asit.k.mallick@intel.com>,
"Siddha, Suresh B" <suresh.b.siddha@intel.com>,
Len Brown <lenb@kernel.org>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH 1/8] x86, apic.c: Disable irq0 if CPU enables ARAT for local apic timer
Date: Wed, 5 Oct 2011 21:38:02 +0200 (CEST) [thread overview]
Message-ID: <alpine.LFD.2.02.1110052129270.18778@ionos> (raw)
In-Reply-To: <493994B35A117E4F832F97C4719C4C040136F7CBF3@orsmsx505.amr.corp.intel.com>
On Wed, 5 Oct 2011, Yu, Fenghua wrote:
Please remove Zwane Mwaikambo <zwane@arm.linux.org.uk> from the cc
list, that address does not exist anymore.
> >
> > > From: Fenghua Yu <fenghua.yu@intel.com>
> > >
> > > irq0 won't generate any interrupt after local apic timers is enabled
> > and ARAT
> > > is enabled. Disable irq0 in this case. Thus irq0 won't block BSP
> > offline.
> >
> > Why would it do so ?
> Irq0 is set as IRQF_NOBALANCING. And it's not used any more after
> boot time if CPU using local apic timer supports ARAT. Although irq0
> is useless, it blocks CPU0 offline.
Please use proper line breaks around 78
> That's why we need to treat irq0 specially for CPU0 offline.
That's utter nonsense. Your whole approach is broken. irq0 is not
special at all and any other interrupt could be marked
IRQF_NOBALANCING as well.
Special casing stuff is always a sign of bandaids and your whole patch
set is just a big cobbled together duct tape thing.
> > > +
> > > + /* irq0 won't be used any more if CPU supports ARAT feature. */
> > > + if (cpu == 0 && this_cpu_has(X86_FEATURE_ARAT))
> > > + disable_irq(0);
> >
> > This is completely wrong. If we want to shut that interrupt down, then
> > we do it in the clockevents set mode functions of PIT or HPET and not
> > at some random place in the apic timer code.
>
> Agree with you.
>
> Or my original irq0 handling is just ignoring irq0 when ARAT is
> enabled during CPU0 offline procedure. Is this way cleaner and
> limited to CPU0 offline path? I'm afraid shutting that interrupt
> down or disabling it may cause any other (legacy) issue?
That's still wrong and your offline check code is broken beyond repair
anyway.
Thanks,
tglx
next prev parent reply other threads:[~2011-10-05 19:38 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-05 16:39 [PATCH 0/8] Online/offline BSP on x86 Fenghua Yu
2011-10-05 16:39 ` [PATCH 1/8] x86, apic.c: Disable irq0 if CPU enables ARAT for local apic timer Fenghua Yu
2011-10-05 18:47 ` Thomas Gleixner
2011-10-05 19:12 ` Yu, Fenghua
2011-10-05 19:38 ` Thomas Gleixner [this message]
2011-10-05 20:11 ` Yu, Fenghua
2011-10-06 2:43 ` Andi Kleen
2011-10-05 16:39 ` [PATCH 2/8] x86/mtrr/main.c: Ask the first online CPU to save mtrr Fenghua Yu
2011-10-05 19:03 ` Srivatsa S. Bhat
2011-10-05 16:39 ` [PATCH 3/8] x86, i387.c: thread xstate is initialized only on BSP once Fenghua Yu
2011-10-05 18:49 ` Thomas Gleixner
2011-10-05 19:53 ` Yu, Fenghua
2011-10-05 16:39 ` [PATCH 4/8] kernel/workqueue.c: unbound work queue rescuer runs on first cpu in cpumask_online_cpu Fenghua Yu
2011-10-05 18:52 ` Thomas Gleixner
2011-10-05 19:19 ` Peter Zijlstra
2011-10-05 20:00 ` Tejun Heo
2011-10-05 16:39 ` [PATCH 5/8] x86, common.c, smpboot.c: Init BSP during BSP online and don't offline BSP if irq is bound to it Fenghua Yu
2011-10-05 19:13 ` Thomas Gleixner
2011-10-05 16:39 ` [PATCH 6/8] x86, topology.c: Enable CPU0 online/offline Fenghua Yu
2011-10-05 19:20 ` Thomas Gleixner
2011-10-05 23:05 ` Yu, Fenghua
2011-11-03 22:47 ` Yu, Fenghua
2011-11-07 2:11 ` Len Brown
2011-11-07 21:02 ` Yu, Fenghua
2011-10-05 16:39 ` [PATCH 7/8] kernel/power/main.c: Not suspend/resume if CPU0 is offlined Fenghua Yu
2011-10-05 18:37 ` Srivatsa S. Bhat
2011-10-05 19:22 ` Thomas Gleixner
2011-10-05 16:39 ` [PATCH 8/8] kernel/cpu.c: Define bsp_hotpluggable variable Fenghua Yu
2011-10-05 19:25 ` Thomas Gleixner
2011-10-05 20:25 ` Yu, Fenghua
2011-10-05 21:19 ` Thomas Gleixner
2011-10-05 19:16 ` [PATCH 0/8] Online/offline BSP on x86 Peter Zijlstra
2011-10-05 19:22 ` Yu, Fenghua
2011-10-05 19:28 ` Peter Zijlstra
2011-10-05 20:29 ` Yu, Fenghua
2011-10-05 20:37 ` Peter Zijlstra
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=alpine.LFD.2.02.1110052129270.18778@ionos \
--to=tglx@linutronix.de \
--cc=asit.k.mallick@intel.com \
--cc=fenghua.yu@intel.com \
--cc=hpa@zytor.com \
--cc=lenb@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=suresh.b.siddha@intel.com \
--cc=tony.luck@intel.com \
/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
Powered by JetHome