Commit 96685f86 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull powerpc updates from Michael Ellerman:

 - A series from Nick adding ARCH_WANT_IRQS_OFF_ACTIVATE_MM & selecting
   it for powerpc, as well as a related fix for sparc.

 - Remove support for PowerPC 601.

 - Some fixes for watchpoints & addition of a new ptrace flag for
   detecting ISA v3.1 (Power10) watchpoint features.

 - A fix for kernels using 4K pages and the hash MMU on bare metal
   Power9 systems with > 16TB of RAM, or RAM on the 2nd node.

 - A basic idle driver for shallow stop states on Power10.

 - Tweaks to our sched domains code to better inform the scheduler about
   the hardware topology on Power9/10, where two SMT4 cores can be
   presented by firmware as an SMT8 core.

 - A series doing further reworks & cleanups of our EEH code.

 - Addition of a filter for RTAS (firmware) calls done via sys_rtas(),
   to prevent root from overwriting kernel memory.

 - Other smaller features, fixes & cleanups.

Thanks to: Alexey Kardashevskiy, Andrew Donnellan, Aneesh Kumar K.V,
Athira Rajeev, Biwen Li, Cameron Berkenpas, Cédric Le Goater, Christophe
Leroy, Christoph Hellwig, Colin Ian King, Daniel Axtens, David Dai, Finn
Thain, Frederic Barrat, Gautham R. Shenoy, Greg Kurz, Gustavo Romero,
Ira Weiny, Jason Yan, Joel Stanley, Jordan Niethe, Kajol Jain, Konrad
Rzeszutek Wilk, Laurent Dufour, Leonardo Bras, Liu Shixin, Luca
Ceresoli, Madhavan Srinivasan, Mahesh Salgaonkar, Nathan Lynch, Nicholas
Mc Guire, Nicholas Piggin, Nick Desaulniers, Oliver O'Halloran, Pedro
Miraglia Franco de Carvalho, Pratik Rajesh Sampat, Qian Cai, Qinglang
Miao, Ravi Bangoria, Russell Currey, Satheesh Rajendran, Scott Cheloha,
Segher Boessenkool, Srikar Dronamraju, Stan Johnson, Stephen Kitt,
Stephen Rothwell, Thiago Jung Bauermann, Tyrel Datwyler, Vaibhav Jain,
Vaidyanathan Srinivasan, Vasant Hegde, Wang Wensheng, Wolfram Sang, Yang
Yingliang, zhengbin.

* tag 'powerpc-5.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (228 commits)
  Revert "powerpc/pci: unmap legacy INTx interrupts when a PHB is removed"
  selftests/powerpc: Fix eeh-basic.sh exit codes
  cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier
  powerpc/time: Make get_tb() common to PPC32 and PPC64
  powerpc/time: Make get_tbl() common to PPC32 and PPC64
  powerpc/time: Remove get_tbu()
  powerpc/time: Avoid using get_tbl() and get_tbu() internally
  powerpc/time: Make mftb() common to PPC32 and PPC64
  powerpc/time: Rename mftbl() to mftb()
  powerpc/32s: Remove #ifdef CONFIG_PPC_BOOK3S_32 in head_book3s_32.S
  powerpc/32s: Rename head_32.S to head_book3s_32.S
  powerpc/32s: Setup the early hash table at all time.
  powerpc/time: Remove ifdef in get_dec() and set_dec()
  powerpc: Remove get_tb_or_rtc()
  powerpc: Remove __USE_RTC()
  powerpc: Tidy up a bit after removal of PowerPC 601.
  powerpc: Remove support for PowerPC 601
  powerpc: Remove PowerPC 601
  powerpc: Drop SYNC_601() ISYNC_601() and SYNC()
  powerpc: Remove CONFIG_PPC601_SYNC_FIX
  ...
parents c4cf498d ffd0b25c
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
What:           /sys/bus/event_source/devices/hv_24x7/format
Date:           September 2020
Contact:        Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
Description:    Read-only. Attribute group to describe the magic bits
                that go into perf_event_attr.config for a particular pmu.
                (See ABI/testing/sysfs-bus-event_source-devices-format).

                Each attribute under this group defines a bit range of the
                perf_event_attr.config. All supported attributes are listed
                below.

				chip = "config:16-31"
				core  = "config:16-31"
				domain = "config:0-3"
				lpar = "config:0-15"
				offset = "config:32-63"
				vcpu = "config:16-31"

               For example,

		PM_PB_CYC =  "domain=1,offset=0x80,chip=?,lpar=0x0"

		In this event, '?' after chip specifies that
		this value will be provided by user while running this event.

What:		/sys/bus/event_source/devices/hv_24x7/interface/catalog
Date:		February 2014
Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
+38 −0
Original line number Diff line number Diff line
What:           /sys/bus/event_source/devices/hv_gpci/format
Date:           September 2020
Contact:        Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
Description:    Read-only. Attribute group to describe the magic bits
                that go into perf_event_attr.config for a particular pmu.
                (See ABI/testing/sysfs-bus-event_source-devices-format).

                Each attribute under this group defines a bit range of the
                perf_event_attr.config. All supported attributes are listed
                below.

				counter_info_version  = "config:16-23"
				length  = "config:24-31"
				partition_id  = "config:32-63"
				request = "config:0-31"
				sibling_part_id = "config:32-63"
				hw_chip_id = "config:32-63"
				offset = "config:32-63"
				phys_processor_idx = "config:32-63"
				secondary_index = "config:0-15"
				starting_index = "config:32-63"

               For example,

		processor_core_utilization_instructions_completed = "request=0x94,
					phys_processor_idx=?,counter_info_version=0x8,
					length=8,offset=0x18"

		In this event, '?' after phys_processor_idx specifies this value
		this value will be provided by user while running this event.

What:		/sys/bus/event_source/devices/hv_gpci/interface/collect_privileged
Date:		February 2014
Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
@@ -41,3 +72,10 @@ Contact: Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
Description:
		A number indicating the latest version of the gpci interface
		that the kernel is aware of.

What:		/sys/devices/hv_gpci/cpumask
Date:		October 2020
Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
Description:	read only
		This sysfs file exposes the cpumask which is designated to make
		HCALLs to retrieve hv-gpci pmu event counter data.
+4 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ Mapping of some CPU versions to relevant ISA versions.
========= ====================================================================
CPU       Architecture version
========= ====================================================================
Power10   Power ISA v3.1
Power9    Power ISA v3.0B
Power8    Power ISA v2.07
Power7    Power ISA v2.06
@@ -32,6 +33,7 @@ Key Features
========== ==================
CPU        VMX (aka. Altivec)
========== ==================
Power10    Yes
Power9     Yes
Power8     Yes
Power7     Yes
@@ -47,6 +49,7 @@ PPC970 Yes
========== ====
CPU        VSX
========== ====
Power10    Yes
Power9     Yes
Power8     Yes
Power7     Yes
@@ -62,6 +65,7 @@ PPC970 No
========== ====================================
CPU        Transactional Memory
========== ====================================
Power10    No  (* see Power ISA v3.1, "Appendix A. Notes on the Removal of Transactional Memory from the Architecture")
Power9     Yes (* see transactional_memory.txt)
Power8     Yes
Power7     No
+1 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ features will have bits indicating whether there is support for::
  #define PPC_DEBUG_FEATURE_DATA_BP_RANGE		0x4
  #define PPC_DEBUG_FEATURE_DATA_BP_MASK		0x8
  #define PPC_DEBUG_FEATURE_DATA_BP_DAWR		0x10
  #define PPC_DEBUG_FEATURE_DATA_BP_ARCH_31		0x20

2. PTRACE_SETHWDEBUG

+7 −0
Original line number Diff line number Diff line
@@ -420,6 +420,13 @@ config MMU_GATHER_NO_GATHER
	bool
	depends on MMU_GATHER_TABLE_FREE

config ARCH_WANT_IRQS_OFF_ACTIVATE_MM
	bool
	help
	  Temporary select until all architectures can be converted to have
	  irqs disabled over activate_mm. Architectures that do IPI based TLB
	  shootdowns should enable this.

config ARCH_HAVE_NMI_SAFE_CMPXCHG
	bool

Loading