diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-11 21:15:38 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-11 21:15:38 -0500 |
commit | d3f180ea1a44aecba1b0dab2a253428e77f906bf (patch) | |
tree | 0be6eaf1eb3fd32c934bd070a3d758696f417c93 /arch/powerpc/platforms/pseries | |
parent | 6b00f7efb5303418c231994c91fb8239f5ada260 (diff) | |
parent | a6130ed253a931d2169c26ab0958d81b0dce4d6e (diff) |
Merge tag 'powerpc-3.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux
Pull powerpc updates from Michael Ellerman:
- Update of all defconfigs
- Addition of a bunch of config options to modernise our defconfigs
- Some PS3 updates from Geoff
- Optimised memcmp for 64 bit from Anton
- Fix for kprobes that allows 'perf probe' to work from Naveen
- Several cxl updates from Ian & Ryan
- Expanded support for the '24x7' PMU from Cody & Sukadev
- Freescale updates from Scott:
"Highlights include 8xx optimizations, some more work on datapath
device tree content, e300 machine check support, t1040 corenet
error reporting, and various cleanups and fixes"
* tag 'powerpc-3.20-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux: (102 commits)
cxl: Add missing return statement after handling AFU errror
cxl: Fail AFU initialisation if an invalid configuration record is found
cxl: Export optional AFU configuration record in sysfs
powerpc/mm: Warn on flushing tlb page in kernel context
powerpc/powernv: Add OPAL soft-poweroff routine
powerpc/perf/hv-24x7: Document sysfs event description entries
powerpc/perf/hv-gpci: add the remaining gpci requests
powerpc/perf/{hv-gpci, hv-common}: generate requests with counters annotated
powerpc/perf/hv-24x7: parse catalog and populate sysfs with events
perf: define EVENT_DEFINE_RANGE_FORMAT_LITE helper
perf: add PMU_EVENT_ATTR_STRING() helper
perf: provide sysfs_show for struct perf_pmu_events_attr
powerpc/kernel: Avoid initializing device-tree pointer twice
powerpc: Remove old compile time disabled syscall tracing code
powerpc/kernel: Make syscall_exit a local label
cxl: Fix device_node reference counting
powerpc/mm: bail out early when flushing TLB page
powerpc: defconfigs: add MTD_SPI_NOR (new dependency for M25P80)
perf/powerpc: reset event hw state when adding it to the PMU
powerpc/qe: Use strlcpy()
...
Diffstat (limited to 'arch/powerpc/platforms/pseries')
-rw-r--r-- | arch/powerpc/platforms/pseries/Kconfig | 20 | ||||
-rw-r--r-- | arch/powerpc/platforms/pseries/hotplug-cpu.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/pseries/mobility.c | 22 | ||||
-rw-r--r-- | arch/powerpc/platforms/pseries/ras.c | 2 |
4 files changed, 19 insertions, 27 deletions
diff --git a/arch/powerpc/platforms/pseries/Kconfig b/arch/powerpc/platforms/pseries/Kconfig index 756b482f819a..a758a9c3bbba 100644 --- a/arch/powerpc/platforms/pseries/Kconfig +++ b/arch/powerpc/platforms/pseries/Kconfig | |||
@@ -34,6 +34,16 @@ config PPC_SPLPAR | |||
34 | processors, that is, which share physical processors between | 34 | processors, that is, which share physical processors between |
35 | two or more partitions. | 35 | two or more partitions. |
36 | 36 | ||
37 | config DTL | ||
38 | bool "Dispatch Trace Log" | ||
39 | depends on PPC_SPLPAR && DEBUG_FS | ||
40 | help | ||
41 | SPLPAR machines can log hypervisor preempt & dispatch events to a | ||
42 | kernel buffer. Saying Y here will enable logging these events, | ||
43 | which are accessible through a debugfs file. | ||
44 | |||
45 | Say N if you are unsure. | ||
46 | |||
37 | config PSERIES_MSI | 47 | config PSERIES_MSI |
38 | bool | 48 | bool |
39 | depends on PCI_MSI && PPC_PSERIES && EEH | 49 | depends on PCI_MSI && PPC_PSERIES && EEH |
@@ -123,13 +133,3 @@ config HV_PERF_CTRS | |||
123 | systems. 24x7 is available on Power 8 systems. | 133 | systems. 24x7 is available on Power 8 systems. |
124 | 134 | ||
125 | If unsure, select Y. | 135 | If unsure, select Y. |
126 | |||
127 | config DTL | ||
128 | bool "Dispatch Trace Log" | ||
129 | depends on PPC_SPLPAR && DEBUG_FS | ||
130 | help | ||
131 | SPLPAR machines can log hypervisor preempt & dispatch events to a | ||
132 | kernel buffer. Saying Y here will enable logging these events, | ||
133 | which are accessible through a debugfs file. | ||
134 | |||
135 | Say N if you are unsure. | ||
diff --git a/arch/powerpc/platforms/pseries/hotplug-cpu.c b/arch/powerpc/platforms/pseries/hotplug-cpu.c index f30cf4d136a4..62475440fd45 100644 --- a/arch/powerpc/platforms/pseries/hotplug-cpu.c +++ b/arch/powerpc/platforms/pseries/hotplug-cpu.c | |||
@@ -272,7 +272,7 @@ static int pseries_add_processor(struct device_node *np) | |||
272 | */ | 272 | */ |
273 | printk(KERN_ERR "Cannot add cpu %s; this system configuration" | 273 | printk(KERN_ERR "Cannot add cpu %s; this system configuration" |
274 | " supports %d logical cpus.\n", np->full_name, | 274 | " supports %d logical cpus.\n", np->full_name, |
275 | cpumask_weight(cpu_possible_mask)); | 275 | num_possible_cpus()); |
276 | goto out_unlock; | 276 | goto out_unlock; |
277 | } | 277 | } |
278 | 278 | ||
diff --git a/arch/powerpc/platforms/pseries/mobility.c b/arch/powerpc/platforms/pseries/mobility.c index e7cb6d4a871a..90cf3dcbd9f2 100644 --- a/arch/powerpc/platforms/pseries/mobility.c +++ b/arch/powerpc/platforms/pseries/mobility.c | |||
@@ -316,34 +316,24 @@ void post_mobility_fixup(void) | |||
316 | static ssize_t migrate_store(struct class *class, struct class_attribute *attr, | 316 | static ssize_t migrate_store(struct class *class, struct class_attribute *attr, |
317 | const char *buf, size_t count) | 317 | const char *buf, size_t count) |
318 | { | 318 | { |
319 | struct rtas_args args; | ||
320 | u64 streamid; | 319 | u64 streamid; |
321 | int rc; | 320 | int rc; |
321 | int vasi_rc = 0; | ||
322 | 322 | ||
323 | rc = kstrtou64(buf, 0, &streamid); | 323 | rc = kstrtou64(buf, 0, &streamid); |
324 | if (rc) | 324 | if (rc) |
325 | return rc; | 325 | return rc; |
326 | 326 | ||
327 | memset(&args, 0, sizeof(args)); | ||
328 | args.token = rtas_token("ibm,suspend-me"); | ||
329 | args.nargs = 2; | ||
330 | args.nret = 1; | ||
331 | |||
332 | args.args[0] = streamid >> 32 ; | ||
333 | args.args[1] = streamid & 0xffffffff; | ||
334 | args.rets = &args.args[args.nargs]; | ||
335 | |||
336 | do { | 327 | do { |
337 | args.rets[0] = 0; | 328 | rc = rtas_ibm_suspend_me(streamid, &vasi_rc); |
338 | rc = rtas_ibm_suspend_me(&args); | 329 | if (!rc && vasi_rc == RTAS_NOT_SUSPENDABLE) |
339 | if (!rc && args.rets[0] == RTAS_NOT_SUSPENDABLE) | ||
340 | ssleep(1); | 330 | ssleep(1); |
341 | } while (!rc && args.rets[0] == RTAS_NOT_SUSPENDABLE); | 331 | } while (!rc && vasi_rc == RTAS_NOT_SUSPENDABLE); |
342 | 332 | ||
343 | if (rc) | 333 | if (rc) |
344 | return rc; | 334 | return rc; |
345 | else if (args.rets[0]) | 335 | if (vasi_rc) |
346 | return args.rets[0]; | 336 | return vasi_rc; |
347 | 337 | ||
348 | post_mobility_fixup(); | 338 | post_mobility_fixup(); |
349 | return count; | 339 | return count; |
diff --git a/arch/powerpc/platforms/pseries/ras.c b/arch/powerpc/platforms/pseries/ras.c index c3b2a7e81ddb..02e4a1745516 100644 --- a/arch/powerpc/platforms/pseries/ras.c +++ b/arch/powerpc/platforms/pseries/ras.c | |||
@@ -89,6 +89,8 @@ static void handle_system_shutdown(char event_modifier) | |||
89 | case EPOW_SHUTDOWN_ON_UPS: | 89 | case EPOW_SHUTDOWN_ON_UPS: |
90 | pr_emerg("Loss of power reported by firmware, system is " | 90 | pr_emerg("Loss of power reported by firmware, system is " |
91 | "running on UPS/battery"); | 91 | "running on UPS/battery"); |
92 | pr_emerg("Check RTAS error log for details"); | ||
93 | orderly_poweroff(true); | ||
92 | break; | 94 | break; |
93 | 95 | ||
94 | case EPOW_SHUTDOWN_LOSS_OF_CRITICAL_FUNCTIONS: | 96 | case EPOW_SHUTDOWN_LOSS_OF_CRITICAL_FUNCTIONS: |