aboutsummaryrefslogtreecommitdiff
path: root/hw/slw.c
diff options
context:
space:
mode:
authorBalbir Singh <bsingharora@gmail.com>2017-09-15 14:42:39 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2017-09-15 01:51:56 -0500
commit0a2710381f34e6b4c03cff1fa76bc1b74f280ecd (patch)
tree4299f4c7ccc6aea6d5dc0a9e89dc59db8174c35a /hw/slw.c
parentaefd3ffce6ed8f586290c0044446024f6e6fdcd5 (diff)
downloadskiboot-0a2710381f34e6b4c03cff1fa76bc1b74f280ecd.zip
skiboot-0a2710381f34e6b4c03cff1fa76bc1b74f280ecd.tar.gz
skiboot-0a2710381f34e6b4c03cff1fa76bc1b74f280ecd.tar.bz2
hw/slw.c: Offline code still uses p8 bits
I'm seeing an infinite loop while hot unplugging a CPU. This is a workaround till we do the right things for p9. May be a candidate for backporting The messages I see in an infinite loop are: [ 740.250192896,3] LIBPORE: Core ID = 20 is not within valid range of [0;15] [ 740.250230176,3] SLW: Failed to set spr for CPU 51 When trying to hotunplug core id 20. For now the patch just skips calling p8_pore* on p9 machines. Signed-off-by: Balbir Singh <bsingharora@gmail.com> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'hw/slw.c')
-rw-r--r--hw/slw.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/slw.c b/hw/slw.c
index d8829a6..88cb612 100644
--- a/hw/slw.c
+++ b/hw/slw.c
@@ -1407,6 +1407,9 @@ int64_t opal_slw_set_reg(uint64_t cpu_pir, uint64_t sprn, uint64_t val)
int i;
int spr_is_supported = 0;
+ if (proc_gen == proc_gen_p9)
+ return OPAL_UNSUPPORTED;
+
assert(c);
chip = get_chip(c->chip_id);
assert(chip);