All of lore.kernel.org
 help / color / mirror / Atom feed
From: Olof Johansson <olof@lixom.net>
To: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Greg KH <greg@kroah.com>, Greg KH <gregkh@suse.de>,
	linux-kernel@vger.kernel.org,
	Chris Wedgwood <reviews@ml.cw.f00f.org>,
	linuxppc-dev@ozlabs.org, paulus@samba.org, tgall.foo@gmail.com,
	Thomas Gleixner <tglx@linutronix.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	stable@kernel.org
Subject: [PATCH v2] powerpc: don't enable cpu hotplug on mpic-based pseries
Date: Tue, 9 Oct 2007 19:38:24 -0500	[thread overview]
Message-ID: <20071010003824.GA8477@lixom.net> (raw)
In-Reply-To: <20071010101826.186f1f24.sfr@canb.auug.org.au>

Don't allow cpu hotplug on systems lacking XICS interrupt controller,
since current code is hardcoded for it.


Signed-off-by: Olof Johansson <olof@lixom.net>

---

On Wed, Oct 10, 2007 at 10:18:26AM +1000, Stephen Rothwell wrote:

> > +	struct device_node *np;
> > +	const char *typep;
> > +
> > +	for (np = NULL; (np = of_find_node_by_name(np,
> > +						   "interrupt-controller"));) {
> > +		typep = of_get_property(np, "compatible", NULL);
> > +		if (strstr(typep, "open-pic")) {
> > +			printk(KERN_INFO "CPU Hotplug not supported on "
> > +				"systems using MPIC\n");
> 
> You need an of_node_put(np) here.

Grmbl, you're right.

pseries_discover_pic() doesn't have one, that's where I took the above
logic from. So we're obviously already leaking device node references.

Still, no reason to make it worse.


-Olof

diff --git a/arch/powerpc/platforms/pseries/hotplug-cpu.c b/arch/powerpc/platforms/pseries/hotplug-cpu.c
index 9711eb0..ae85fc0 100644
--- a/arch/powerpc/platforms/pseries/hotplug-cpu.c
+++ b/arch/powerpc/platforms/pseries/hotplug-cpu.c
@@ -252,6 +252,21 @@ static struct notifier_block pseries_smp_nb = {
 
 static int __init pseries_cpu_hotplug_init(void)
 {
+	struct device_node *np;
+	const char *typep;
+
+	for (np = NULL; (np = of_find_node_by_name(np,
+						   "interrupt-controller"));) {
+		typep = of_get_property(np, "compatible", NULL);
+		if (strstr(typep, "open-pic")) {
+			of_node_put(np);
+
+			printk(KERN_INFO "CPU Hotplug not supported on "
+				"systems using MPIC\n");
+			return 0;
+		}
+	}
+
 	rtas_stop_self_args.token = rtas_token("stop-self");
 	qcss_tok = rtas_token("query-cpu-stopped-state");
 

  reply	other threads:[~2007-10-10  0:33 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20071008180406.052382073@mini.kroah.org>
2007-10-08 18:05 ` [patch 00/12] 2.6.22.10 -stable review Greg KH
2007-10-08 18:06   ` [patch 01/12] scsi_transport_spi: fix domain validation failure from incorrect width setting Greg KH
2007-10-08 18:06   ` [patch 02/12] sky2: reduce impact of watchdog timer Greg KH
2007-10-08 18:06   ` [patch 03/12] sky2: fix VLAN receive processing Greg KH
2007-10-08 18:06   ` [patch 04/12] sky2: fix transmit state on resume Greg KH
2007-10-08 18:06   ` [patch 05/12] libata: update drive blacklists Greg KH
2007-10-08 18:06   ` [patch 06/12] Fix ppp_mppe kernel stack usage Greg KH
2007-10-08 18:06   ` [patch 07/12] i2c-algo-bit: Read block data bugfix Greg KH
2007-10-08 18:06   ` [patch 08/12] NLM: Fix a circular lock dependency in lockd Greg KH
2007-10-08 20:01     ` Roel Kluin
2007-10-09 15:00       ` Trond Myklebust
2007-10-09 15:13         ` Greg KH
2007-10-09 15:27           ` Trond Myklebust
2007-10-09 20:41             ` [stable] " Greg KH
2007-10-08 18:06   ` [patch 09/12] Fix SMP poweroff hangs Greg KH
2007-10-09 15:17     ` Olof Johansson
2007-10-09 22:20       ` [stable] " Greg KH
2007-10-09 23:21         ` Thomas Gleixner
2007-10-09 23:27           ` Linus Torvalds
2007-10-09 23:35             ` Thomas Gleixner
2007-10-10  5:29               ` Linus Torvalds
     [not found]                 ` <200710092359.47144.spaceman__spiff@cox.net>
2007-10-10 14:57                   ` ARPM shutdown oops (Re: [stable] [patch 09/12] Fix SMP poweroff hangs) Linus Torvalds
2007-10-10 16:31                     ` H. Peter Anvin
2007-10-11  3:05                     ` Kevin
2007-10-11 15:31                       ` Linus Torvalds
2007-10-11 18:42                         ` Jeff Garzik
2007-10-11 19:19                           ` Dave Jones
2007-10-11 20:55                           ` Rafael J. Wysocki
2007-10-11 23:27                           ` APM " Adrian Bunk
2007-10-12 12:05                             ` Rafael J. Wysocki
2007-10-10  0:03             ` [stable] [patch 09/12] Fix SMP poweroff hangs Olof Johansson
2007-10-10  0:03               ` Olof Johansson
2007-10-10  0:08             ` [PATCH] powerpc: don't enable cpu hotplug on mpic-based pseries Olof Johansson
2007-10-10  0:08               ` Olof Johansson
2007-10-10  0:18               ` Stephen Rothwell
2007-10-10  0:18                 ` Stephen Rothwell
2007-10-10  0:38                 ` Olof Johansson [this message]
2007-10-10 10:08                   ` [PATCH v2] " Milton Miller
2007-10-10 10:08                     ` Milton Miller
2007-10-10 16:43                     ` Olof Johansson
2007-10-10 16:43                       ` Olof Johansson
2007-10-11 15:25                       ` Milton Miller
2007-10-11  5:52                   ` Paul Mackerras
2007-10-11  5:59                     ` Olof Johansson
2007-10-11 21:42                     ` Milton Miller
2007-10-11  0:24             ` [stable] [patch 09/12] Fix SMP poweroff hangs Paul Mackerras
2007-10-09 23:28           ` Greg KH
     [not found]           ` <alpine.LFD.0.999.0710091625520.3838@woody.linux%foundation.org>
2007-10-10 10:06             ` Milton Miller
2007-10-10 10:06             ` Milton Miller
2007-10-10 11:35               ` Rafael J. Wysocki
2007-10-10 11:35               ` Rafael J. Wysocki
2007-10-08 18:06   ` [patch 10/12] Fix timer_stats printout of events/sec Greg KH
2007-10-08 18:06   ` [patch 11/12] SELinux: clear parent death signal on SID transitions Greg KH
2007-10-08 18:06   ` [patch 12/12] i386: Use global flag to disable broken local apic timer on AMD CPUs Greg KH
2007-10-08 18:09   ` [patch 00/12] 2.6.22.10 -stable review Greg KH

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=20071010003824.GA8477@lixom.net \
    --to=olof@lixom.net \
    --cc=greg@kroah.com \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=paulus@samba.org \
    --cc=reviews@ml.cw.f00f.org \
    --cc=sfr@canb.auug.org.au \
    --cc=stable@kernel.org \
    --cc=tgall.foo@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.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.