Re: [PATCH] cpu hotplug ppc64 bug

From: Paul Mackerras
Date: Tue Jul 27 2004 - 08:19:17 EST


Joel Schopp writes:

> On Power4 and earlier hardware there is no need to clear the CPPR (see
> RPAp 479 section 18.5.4.7.2 for what little info there is on the CPPR)
> when stopping a cpu. On hardware that uses Power5 an undocumented change
> has been made that requires the CPPR to be cleared if an isolate is to
> be done on the stopped cpu. So the following patch lets cpu hotplug work
> on the recent hardware.

> void cpu_die(void)
> {
> local_irq_disable();
> + /* Some hardware requires clearing the CPPR, while other hardware does not
> + * it is safe either way
> + */
> + pSeriesLP_cppr_info(0, 0);
> rtas_stop_self();

I wanted to do this a bit differently - I was going to make cpu_die be
a platform-specific function called via a ppc_md function pointer,
rather than putting very pseries-specific stuff in smp.c, which is
used on all platforms. But having been on vacation and then
travelling, I haven't got to it yet.

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