Date: Mon, 8 Jun 2020 02:28:00 +0000 (UTC) From: Justin Hibbits <jhibbits@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r361901 - head/sys/powerpc/powernv Message-ID: <202006080228.0582S0Ys071176@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jhibbits Date: Mon Jun 8 02:28:00 2020 New Revision: 361901 URL: https://svnweb.freebsd.org/changeset/base/361901 Log: powerpc/powernv: Don't configure disabled CPUs If the POWER firmware detects a bad CPU core, it will "GUARD" it out, marking it disabled. Any attempt to spin up a bad CPU will trigger a panic later on when waiting for threads on said core to wake up. Support limping along on fewer cores instead. Modified: head/sys/powerpc/powernv/platform_powernv.c Modified: head/sys/powerpc/powernv/platform_powernv.c ============================================================================== --- head/sys/powerpc/powernv/platform_powernv.c Mon Jun 8 00:46:19 2020 (r361900) +++ head/sys/powerpc/powernv/platform_powernv.c Mon Jun 8 02:28:00 2020 (r361901) @@ -49,6 +49,8 @@ __FBSDID("$FreeBSD$"); #include <machine/trap.h> #include <dev/ofw/openfirm.h> +#include <dev/ofw/ofw_bus.h> +#include <dev/ofw/ofw_bus_subr.h> #include <machine/ofw_machdep.h> #include <powerpc/aim/mmu_oea64.h> @@ -332,6 +334,8 @@ powernv_cpuref_init(void) for (cpu = OF_child(dev); cpu != 0; cpu = OF_peer(cpu)) { res = OF_getprop(cpu, "device_type", buf, sizeof(buf)); if (res > 0 && strcmp(buf, "cpu") == 0) { + if (!ofw_bus_node_status_okay(cpu)) + continue; res = OF_getproplen(cpu, "ibm,ppc-interrupt-server#s"); if (res > 0) { OF_getencprop(cpu, "ibm,ppc-interrupt-server#s",
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202006080228.0582S0Ys071176>