Skip to content

Commit d38c07a

Browse files
committed
Merge tag 'powerpc-5.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc updates from Michael Ellerman: "Slightly late as I had to rebase mid-week to insert a bug fix: - A large series from Nick for 64-bit to further rework our exception vectors, and rewrite portions of the syscall entry/exit and interrupt return in C. The result is much easier to follow code that is also faster in general. - Cleanup of our ptrace code to split various parts out that had become badly intertwined with #ifdefs over the years. - Changes to our NUMA setup under the PowerVM hypervisor which should hopefully avoid non-sensical topologies which can lead to warnings from the workqueue code and other problems. - MAINTAINERS updates to remove some of our old orphan entries and update the status of others. - Quite a few other small changes and fixes all over the map. Thanks to: Abdul Haleem, afzal mohammed, Alexey Kardashevskiy, Andrew Donnellan, Aneesh Kumar K.V, Balamuruhan S, Cédric Le Goater, Chen Zhou, Christophe JAILLET, Christophe Leroy, Christoph Hellwig, Clement Courbet, Daniel Axtens, David Gibson, Douglas Miller, Fabiano Rosas, Fangrui Song, Ganesh Goudar, Gautham R. Shenoy, Greg Kroah-Hartman, Greg Kurz, Gustavo Luiz Duarte, Hari Bathini, Ilie Halip, Jan Kara, Joe Lawrence, Joe Perches, Kajol Jain, Larry Finger, Laurentiu Tudor, Leonardo Bras, Libor Pechacek, Madhavan Srinivasan, Mahesh Salgaonkar, Masahiro Yamada, Masami Hiramatsu, Mauricio Faria de Oliveira, Michael Neuling, Michal Suchanek, Mike Rapoport, Nageswara R Sastry, Nathan Chancellor, Nathan Lynch, Naveen N. Rao, Nicholas Piggin, Nick Desaulniers, Oliver O'Halloran, Po-Hsu Lin, Pratik Rajesh Sampat, Rasmus Villemoes, Ravi Bangoria, Roman Bolshakov, Sam Bobroff, Sandipan Das, Santosh S, Sedat Dilek, Segher Boessenkool, Shilpasri G Bhat, Sourabh Jain, Srikar Dronamraju, Stephen Rothwell, Tyrel Datwyler, Vaibhav Jain, YueHaibing" * tag 'powerpc-5.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (158 commits) powerpc: Make setjmp/longjmp signature standard powerpc/cputable: Remove unnecessary copy of cpu_spec->oprofile_type powerpc: Suppress .eh_frame generation powerpc: Drop -fno-dwarf2-cfi-asm powerpc/32: drop unused ISA_DMA_THRESHOLD powerpc/powernv: Add documentation for the opal sensor_groups sysfs interfaces selftests/powerpc: Fix try-run when source tree is not writable powerpc/vmlinux.lds: Explicitly retain .gnu.hash powerpc/ptrace: move ptrace_triggered() into hw_breakpoint.c powerpc/ptrace: create ppc_gethwdinfo() powerpc/ptrace: create ptrace_get_debugreg() powerpc/ptrace: split out ADV_DEBUG_REGS related functions. powerpc/ptrace: move register viewing functions out of ptrace.c powerpc/ptrace: split out TRANSACTIONAL_MEM related functions. powerpc/ptrace: split out SPE related functions. powerpc/ptrace: split out ALTIVEC related functions. powerpc/ptrace: split out VSX related functions. powerpc/ptrace: drop PARAMETER_SAVE_AREA_OFFSET powerpc/ptrace: drop unnecessary #ifdefs CONFIG_PPC64 powerpc/ptrace: remove unused header includes ...
2 parents 31c0aa8 + c17eb4d commit d38c07a

File tree

183 files changed

+7989
-6154
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+7989
-6154
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
This ABI is renamed and moved to a new location /sys/kernel/fadump/enabled.
2+
3+
What: /sys/kernel/fadump_enabled
4+
Date: Feb 2012
5+
6+
Description: read only
7+
Primarily used to identify whether the FADump is enabled in
8+
the kernel or not.
9+
User: Kdump service
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
This ABI is renamed and moved to a new location /sys/kernel/fadump/registered.¬
2+
3+
What: /sys/kernel/fadump_registered
4+
Date: Feb 2012
5+
6+
Description: read/write
7+
Helps to control the dump collect feature from userspace.
8+
Setting 1 to this file enables the system to collect the
9+
dump and 0 to disable it.
10+
User: Kdump service
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
This ABI is renamed and moved to a new location /sys/kernel/fadump/release_mem.¬
2+
3+
What: /sys/kernel/fadump_release_mem
4+
Date: Feb 2012
5+
6+
Description: write only
7+
This is a special sysfs file and only available when
8+
the system is booted to capture the vmcore using FADump.
9+
It is used to release the memory reserved by FADump to
10+
save the crash dump.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
This ABI is moved to /sys/firmware/opal/mpipl/release_core.
2+
3+
What: /sys/kernel/fadump_release_opalcore
4+
Date: Sep 2019
5+
6+
Description: write only
7+
The sysfs file is available when the system is booted to
8+
collect the dump on OPAL based machine. It used to release
9+
the memory used to collect the opalcore.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
What: /sys/firmware/opal/sensor_groups
2+
Date: August 2017
3+
Contact: Linux for PowerPC mailing list <[email protected]>
4+
Description: Sensor groups directory for POWER9 powernv servers
5+
6+
Each folder in this directory contains a sensor group
7+
which are classified based on type of the sensor
8+
like power, temperature, frequency, current, etc. They
9+
can also indicate the group of sensors belonging to
10+
different owners like CSM, Profiler, Job-Scheduler
11+
12+
What: /sys/firmware/opal/sensor_groups/<sensor_group_name>/clear
13+
Date: August 2017
14+
Contact: Linux for PowerPC mailing list <[email protected]>
15+
Description: Sysfs file to clear the min-max of all the sensors
16+
belonging to the group.
17+
18+
Writing 1 to this file will clear the minimum and
19+
maximum values of all the sensors in the group.
20+
In POWER9, the min-max of a sensor is the historical minimum
21+
and maximum value of the sensor cached by OCC.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
What: /sys/kernel/fadump/*
2+
Date: Dec 2019
3+
4+
Description:
5+
The /sys/kernel/fadump/* is a collection of FADump sysfs
6+
file provide information about the configuration status
7+
of Firmware Assisted Dump (FADump).
8+
9+
What: /sys/kernel/fadump/enabled
10+
Date: Dec 2019
11+
12+
Description: read only
13+
Primarily used to identify whether the FADump is enabled in
14+
the kernel or not.
15+
User: Kdump service
16+
17+
What: /sys/kernel/fadump/registered
18+
Date: Dec 2019
19+
20+
Description: read/write
21+
Helps to control the dump collect feature from userspace.
22+
Setting 1 to this file enables the system to collect the
23+
dump and 0 to disable it.
24+
User: Kdump service
25+
26+
What: /sys/kernel/fadump/release_mem
27+
Date: Dec 2019
28+
29+
Description: write only
30+
This is a special sysfs file and only available when
31+
the system is booted to capture the vmcore using FADump.
32+
It is used to release the memory reserved by FADump to
33+
save the crash dump.
34+
35+
What: /sys/kernel/fadump/mem_reserved
36+
Date: Dec 2019
37+
38+
Description: read only
39+
Provide information about the amount of memory reserved by
40+
FADump to save the crash dump in bytes.

Documentation/powerpc/firmware-assisted-dump.rst

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -112,13 +112,13 @@ to ensure that crash data is preserved to process later.
112112

113113
-- On OPAL based machines (PowerNV), if the kernel is build with
114114
CONFIG_OPAL_CORE=y, OPAL memory at the time of crash is also
115-
exported as /sys/firmware/opal/core file. This procfs file is
115+
exported as /sys/firmware/opal/mpipl/core file. This procfs file is
116116
helpful in debugging OPAL crashes with GDB. The kernel memory
117117
used for exporting this procfs file can be released by echo'ing
118-
'1' to /sys/kernel/fadump_release_opalcore node.
118+
'1' to /sys/firmware/opal/mpipl/release_core node.
119119

120120
e.g.
121-
# echo 1 > /sys/kernel/fadump_release_opalcore
121+
# echo 1 > /sys/firmware/opal/mpipl/release_core
122122

123123
Implementation details:
124124
-----------------------
@@ -268,6 +268,11 @@ Here is the list of files under kernel sysfs:
268268
be handled and vmcore will not be captured. This interface can be
269269
easily integrated with kdump service start/stop.
270270

271+
/sys/kernel/fadump/mem_reserved
272+
273+
This is used to display the memory reserved by FADump for saving the
274+
crash dump.
275+
271276
/sys/kernel/fadump_release_mem
272277
This file is available only when FADump is active during
273278
second kernel. This is used to release the reserved memory
@@ -283,14 +288,29 @@ Here is the list of files under kernel sysfs:
283288
enhanced to use this interface to release the memory reserved for
284289
dump and continue without 2nd reboot.
285290

286-
/sys/kernel/fadump_release_opalcore
291+
Note: /sys/kernel/fadump_release_opalcore sysfs has moved to
292+
/sys/firmware/opal/mpipl/release_core
293+
294+
/sys/firmware/opal/mpipl/release_core
287295

288296
This file is available only on OPAL based machines when FADump is
289297
active during capture kernel. This is used to release the memory
290-
used by the kernel to export /sys/firmware/opal/core file. To
298+
used by the kernel to export /sys/firmware/opal/mpipl/core file. To
291299
release this memory, echo '1' to it:
292300

293-
echo 1 > /sys/kernel/fadump_release_opalcore
301+
echo 1 > /sys/firmware/opal/mpipl/release_core
302+
303+
Note: The following FADump sysfs files are deprecated.
304+
305+
+----------------------------------+--------------------------------+
306+
| Deprecated | Alternative |
307+
+----------------------------------+--------------------------------+
308+
| /sys/kernel/fadump_enabled | /sys/kernel/fadump/enabled |
309+
+----------------------------------+--------------------------------+
310+
| /sys/kernel/fadump_registered | /sys/kernel/fadump/registered |
311+
+----------------------------------+--------------------------------+
312+
| /sys/kernel/fadump_release_mem | /sys/kernel/fadump/release_mem |
313+
+----------------------------------+--------------------------------+
294314

295315
Here is the list of files under powerpc debugfs:
296316
(Assuming debugfs is mounted on /sys/kernel/debug directory.)

MAINTAINERS

Lines changed: 10 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -9692,17 +9692,16 @@ F: include/uapi/linux/lightnvm.h
96929692

96939693
LINUX FOR POWER MACINTOSH
96949694
M: Benjamin Herrenschmidt <[email protected]>
9695-
W: http://www.penguinppc.org/
96969695
9697-
S: Maintained
9696+
S: Odd Fixes
96989697
F: arch/powerpc/platforms/powermac/
96999698
F: drivers/macintosh/
97009699

97019700
LINUX FOR POWERPC (32-BIT AND 64-BIT)
9702-
M: Benjamin Herrenschmidt <[email protected]>
9703-
M: Paul Mackerras <[email protected]>
97049701
M: Michael Ellerman <[email protected]>
9705-
W: https://github.com/linuxppc/linux/wiki
9702+
R: Benjamin Herrenschmidt <[email protected]>
9703+
R: Paul Mackerras <[email protected]>
9704+
W: https://github.com/linuxppc/wiki/wiki
97069705
97079706
Q: http://patchwork.ozlabs.org/project/linuxppc-dev/list/
97089707
T: git git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git
@@ -9719,6 +9718,8 @@ F: drivers/crypto/vmx/
97199718
F: drivers/i2c/busses/i2c-opal.c
97209719
F: drivers/net/ethernet/ibm/ibmveth.*
97219720
F: drivers/net/ethernet/ibm/ibmvnic.*
9721+
F: drivers/*/*/*pasemi*
9722+
F: drivers/*/*pasemi*
97229723
F: drivers/pci/hotplug/pnv_php.c
97239724
F: drivers/pci/hotplug/rpa*
97249725
F: drivers/rtc/rtc-opal.c
@@ -9735,51 +9736,31 @@ N: pseries
97359736
LINUX FOR POWERPC EMBEDDED MPC5XXX
97369737
M: Anatolij Gustschin <[email protected]>
97379738
9738-
T: git git://git.denx.de/linux-denx-agust.git
9739-
S: Maintained
9739+
S: Odd Fixes
97409740
F: arch/powerpc/platforms/512x/
97419741
F: arch/powerpc/platforms/52xx/
97429742

97439743
LINUX FOR POWERPC EMBEDDED PPC4XX
9744-
M: Alistair Popple <[email protected]>
9745-
M: Matt Porter <[email protected]>
9746-
W: http://www.penguinppc.org/
97479744
9748-
S: Maintained
9745+
S: Orphan
97499746
F: arch/powerpc/platforms/40x/
97509747
F: arch/powerpc/platforms/44x/
97519748

97529749
LINUX FOR POWERPC EMBEDDED PPC83XX AND PPC85XX
97539750
M: Scott Wood <[email protected]>
9754-
M: Kumar Gala <[email protected]>
9755-
W: http://www.penguinppc.org/
97569751
97579752
T: git git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux.git
9758-
S: Maintained
9753+
S: Odd fixes
97599754
F: arch/powerpc/platforms/83xx/
97609755
F: arch/powerpc/platforms/85xx/
97619756
F: Documentation/devicetree/bindings/powerpc/fsl/
97629757

97639758
LINUX FOR POWERPC EMBEDDED PPC8XX
9764-
M: Vitaly Bordug <[email protected]>
9765-
W: http://www.penguinppc.org/
9759+
M: Christophe Leroy <[email protected]>
97669760
97679761
S: Maintained
97689762
F: arch/powerpc/platforms/8xx/
97699763

9770-
LINUX FOR POWERPC EMBEDDED XILINX VIRTEX
9771-
9772-
S: Orphan
9773-
F: arch/powerpc/*/*virtex*
9774-
F: arch/powerpc/*/*/*virtex*
9775-
9776-
LINUX FOR POWERPC PA SEMI PWRFICIENT
9777-
9778-
S: Orphan
9779-
F: arch/powerpc/platforms/pasemi/
9780-
F: drivers/*/*pasemi*
9781-
F: drivers/*/*/*pasemi*
9782-
97839764
LINUX KERNEL DUMP TEST MODULE (LKDTM)
97849765
M: Kees Cook <[email protected]>
97859766
S: Maintained
@@ -12667,16 +12648,6 @@ W: http://wireless.kernel.org/en/users/Drivers/p54
1266712648
S: Maintained
1266812649
F: drivers/net/wireless/intersil/p54/
1266912650

12670-
PA SEMI ETHERNET DRIVER
12671-
12672-
S: Orphan
12673-
F: drivers/net/ethernet/pasemi/*
12674-
12675-
PA SEMI SMBUS DRIVER
12676-
12677-
S: Orphan
12678-
F: drivers/i2c/busses/i2c-pasemi.c
12679-
1268012651
PACKING
1268112652
M: Vladimir Oltean <[email protected]>
1268212653

arch/powerpc/Makefile

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -239,10 +239,8 @@ KBUILD_CFLAGS += $(call cc-option,-mno-vsx)
239239
KBUILD_CFLAGS += $(call cc-option,-mno-spe)
240240
KBUILD_CFLAGS += $(call cc-option,-mspe=no)
241241

242-
# FIXME: the module load should be taught about the additional relocs
243-
# generated by this.
244-
# revert to pre-gcc-4.4 behaviour of .eh_frame
245-
KBUILD_CFLAGS += $(call cc-option,-fno-dwarf2-cfi-asm)
242+
# Don't emit .eh_frame since we have no use for it
243+
KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
246244

247245
# Never use string load/store instructions as they are
248246
# often slow when they are implemented at all
@@ -298,6 +296,7 @@ $(BOOT_TARGETS2): vmlinux
298296
$(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
299297

300298

299+
PHONY += bootwrapper_install
301300
bootwrapper_install:
302301
$(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
303302

@@ -403,9 +402,11 @@ define archhelp
403402
@echo ' (minus the .dts extension).'
404403
endef
405404

405+
PHONY += install
406406
install:
407407
$(Q)$(MAKE) $(build)=$(boot) install
408408

409+
PHONY += vdso_install
409410
vdso_install:
410411
ifdef CONFIG_PPC64
411412
$(Q)$(MAKE) $(build)=arch/$(ARCH)/kernel/vdso64 $@
@@ -425,6 +426,7 @@ archheaders:
425426
ifdef CONFIG_STACKPROTECTOR
426427
prepare: stack_protector_prepare
427428

429+
PHONY += stack_protector_prepare
428430
stack_protector_prepare: prepare0
429431
ifdef CONFIG_PPC64
430432
$(eval KBUILD_CFLAGS += -mstack-protector-guard-offset=$(shell awk '{if ($$2 == "PACA_CANARY") print $$3;}' include/generated/asm-offsets.h))
@@ -436,10 +438,12 @@ endif
436438
ifdef CONFIG_SMP
437439
prepare: task_cpu_prepare
438440

441+
PHONY += task_cpu_prepare
439442
task_cpu_prepare: prepare0
440443
$(eval KBUILD_CFLAGS += -D_TASK_CPU=$(shell awk '{if ($$2 == "TASK_CPU") print $$3;}' include/generated/asm-offsets.h))
441444
endif
442445

446+
PHONY += checkbin
443447
# Check toolchain versions:
444448
# - gcc-4.6 is the minimum kernel-wide version so nothing required.
445449
checkbin:

arch/powerpc/boot/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -445,6 +445,8 @@ install: $(CONFIGURE) $(addprefix $(obj)/, $(image-y))
445445
zInstall: $(CONFIGURE) $(addprefix $(obj)/, $(image-y))
446446
sh -x $(srctree)/$(src)/install.sh "$(KERNELRELEASE)" vmlinux System.map "$(INSTALL_PATH)" $^
447447

448+
PHONY += install zInstall
449+
448450
# anything not in $(targets)
449451
clean-files += $(image-) $(initrd-) cuImage.* dtbImage.* treeImage.* \
450452
zImage zImage.initrd zImage.chrp zImage.coff zImage.holly \

0 commit comments

Comments
 (0)