1
0
Fork 0
alistair23-linux/arch/mips/include/asm
Arnd Bergmann 1bef5f25a6 arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
[ Upstream commit cef3970381 ]

Stefan Agner reported a bug when using zsram on 32-bit Arm machines
with RAM above the 4GB address boundary:

  Unable to handle kernel NULL pointer dereference at virtual address 00000000
  pgd = a27bd01c
  [00000000] *pgd=236a0003, *pmd=1ffa64003
  Internal error: Oops: 207 [#1] SMP ARM
  Modules linked in: mdio_bcm_unimac(+) brcmfmac cfg80211 brcmutil raspberrypi_hwmon hci_uart crc32_arm_ce bcm2711_thermal phy_generic genet
  CPU: 0 PID: 123 Comm: mkfs.ext4 Not tainted 5.9.6 #1
  Hardware name: BCM2711
  PC is at zs_map_object+0x94/0x338
  LR is at zram_bvec_rw.constprop.0+0x330/0xa64
  pc : [<c0602b38>]    lr : [<c0bda6a0>]    psr: 60000013
  sp : e376bbe0  ip : 00000000  fp : c1e2921c
  r10: 00000002  r9 : c1dda730  r8 : 00000000
  r7 : e8ff7a00  r6 : 00000000  r5 : 02f9ffa0  r4 : e3710000
  r3 : 000fdffe  r2 : c1e0ce80  r1 : ebf979a0  r0 : 00000000
  Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
  Control: 30c5383d  Table: 235c2a80  DAC: fffffffd
  Process mkfs.ext4 (pid: 123, stack limit = 0x495a22e6)
  Stack: (0xe376bbe0 to 0xe376c000)

As it turns out, zsram needs to know the maximum memory size, which
is defined in MAX_PHYSMEM_BITS when CONFIG_SPARSEMEM is set, or in
MAX_POSSIBLE_PHYSMEM_BITS on the x86 architecture.

The same problem will be hit on all 32-bit architectures that have a
physical address space larger than 4GB and happen to not enable sparsemem
and include asm/sparsemem.h from asm/pgtable.h.

After the initial discussion, I suggested just always defining
MAX_POSSIBLE_PHYSMEM_BITS whenever CONFIG_PHYS_ADDR_T_64BIT is
set, or provoking a build error otherwise. This addresses all
configurations that can currently have this runtime bug, but
leaves all other configurations unchanged.

I looked up the possible number of bits in source code and
datasheets, here is what I found:

 - on ARC, CONFIG_ARC_HAS_PAE40 controls whether 32 or 40 bits are used
 - on ARM, CONFIG_LPAE enables 40 bit addressing, without it we never
   support more than 32 bits, even though supersections in theory allow
   up to 40 bits as well.
 - on MIPS, some MIPS32r1 or later chips support 36 bits, and MIPS32r5
   XPA supports up to 60 bits in theory, but 40 bits are more than
   anyone will ever ship
 - On PowerPC, there are three different implementations of 36 bit
   addressing, but 32-bit is used without CONFIG_PTE_64BIT
 - On RISC-V, the normal page table format can support 34 bit
   addressing. There is no highmem support on RISC-V, so anything
   above 2GB is unused, but it might be useful to eventually support
   CONFIG_ZRAM for high pages.

Fixes: 61989a80fb ("staging: zsmalloc: zsmalloc memory allocation library")
Fixes: 02390b87a9 ("mm/zsmalloc: Prepare to variable MAX_PHYSMEM_BITS")
Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Reviewed-by: Stefan Agner <stefan@agner.ch>
Tested-by: Stefan Agner <stefan@agner.ch>
Acked-by: Mike Rapoport <rppt@linux.ibm.com>
Link: https://lore.kernel.org/linux-mm/bdfa44bf1c570b05d6c70898e2bbb0acf234ecdf.1604762181.git.stefan@agner.ch/
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-12-02 08:49:50 +01:00
..
dec treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
emma treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
fw treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
ip32
lasat treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 182 2019-05-30 11:29:20 -07:00
mach-ar7 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 2019-05-24 17:39:00 +02:00
mach-ath25 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mach-ath79 A few more MIPS fixes: 2019-07-06 10:32:12 -07:00
mach-au1x00 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mach-bcm47xx MIPS: BCM47XX: Add support for Netgear R6200 V1 2019-07-25 22:10:05 -07:00
mach-bcm63xx MIPS: BCM63XX: drop unused and broken DSP platform device 2018-12-31 07:12:35 -08:00
mach-bmips MIPS: bmips: use generic dma noncoherent ops 2018-06-24 09:27:27 -07:00
mach-cavium-octeon MIPS: octeon: Remove ARCH_HAS_IRQ_PER_CPU 2019-08-06 14:29:30 -07:00
mach-cobalt treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
mach-db1x00 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mach-dec MIPS: tlbex: Remove cpu_has_local_ebase 2019-09-03 14:20:54 +01:00
mach-emma2rh
mach-generic MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-ip22 MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-ip27 MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-ip28 MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-ip32 MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-jazz MIPS: jazz: split dma mapping operations from dma-default 2018-06-24 09:27:27 -07:00
mach-jz4740 MIPS: jz4740: Drop dead code 2019-07-30 10:41:54 -07:00
mach-lantiq treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mach-lasat License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mach-loongson32 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mach-loongson64 MIPS: tlbex: Remove cpu_has_local_ebase 2019-09-03 14:20:54 +01:00
mach-malta MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-netlogic MIPS16e2: Provide feature overrides for non-MIPS16 systems 2017-07-11 14:13:06 +02:00
mach-paravirt MIPS: paravirt: Fix undefined reference to smp_bootstrap 2016-09-13 16:45:15 +02:00
mach-pic32 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 445 2019-06-05 17:37:18 +02:00
mach-pistachio treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 2019-06-05 17:37:15 +02:00
mach-pmcs-msp71xx MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-pnx833x treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
mach-ralink The main MIPS changes for a pretty light v5.3 cycle, including: 2019-07-17 09:42:03 -07:00
mach-rc32434 MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-rm MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-sibyte MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-tx39xx treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mach-tx49xx MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
mach-vr41xx License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mach-xilfpga treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mips-boards treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 182 2019-05-30 11:29:20 -07:00
netlogic MIPS: netlogic: xlr: Remove erroneous check in nlm_fmn_send() 2018-08-08 09:48:32 -07:00
octeon MIPS: octeon: Include required header; fix octeon ethernet build 2019-10-02 10:08:20 -07:00
pci MIPS: SGI-IP27: abstract chipset irq from bridge 2019-05-09 16:48:20 -07:00
sgi License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sibyte treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
sn MIPS: SGI-IP27: restructure ioc3 register access 2019-08-30 13:54:35 -07:00
txx9 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
vdso mips: Fix gettimeofday() in the vdso library 2020-01-17 19:49:04 +01:00
vr41xx treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
xtalk MIPS: SGI-IP27: use generic PCI driver 2019-05-09 16:39:27 -07:00
Kbuild treewide: Add SPDX license identifier - Kbuild 2019-05-30 11:32:33 -07:00
abi.h signals: Prepare to split out <linux/signal_types.h> from <linux/signal.h> 2017-03-02 08:42:37 +01:00
addrspace.h MIPS: Remove unused R8000 CPU support 2019-07-23 14:33:51 -07:00
amon.h
arch_hweight.h
asm-eva.h MIPS: Add kernel_pref & user_pref helpers 2018-10-15 23:11:13 -07:00
asm-offsets.h
asm-prototypes.h MIPS: Export tlbmiss_handler_setup_pgd near its definition 2018-08-10 17:27:51 -07:00
asm.h MIPS: Remove unused PREF, PREFE & PREFX macros 2018-10-15 23:11:14 -07:00
asmmacro-32.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
asmmacro-64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
asmmacro.h MIPS: Fix odd fp register warnings with MIPS64r2 2017-11-10 20:58:56 +00:00
atomic.h mips/atomic: Fix smp_mb__{before,after}_atomic() 2019-08-31 11:06:02 +01:00
barrier.h Revert "MIPS: futex: Emit Loongson3 sync workarounds within asm" 2020-01-04 19:16:21 +01:00
bcache.h
bitops.h mips/atomic: Fix smp_mb__{before,after}_atomic() 2019-08-31 11:06:02 +01:00
bitrev.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bmips-spaces.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bmips.h MIPS: bmips: mark exception vectors as char arrays 2019-10-23 21:07:28 -07:00
bootinfo.h MIPS: init: Drop boot_mem_map 2019-08-23 15:42:40 +01:00
branch.h MIPS: Fix unaligned PC interpretation in `compute_return_epc' 2017-06-29 02:42:26 +02:00
break.h
bug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bugs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cache.h Revert "MIPS: Don't unnecessarily include kmalloc.h into <asm/cache.h>." 2017-08-07 12:01:17 +02:00
cacheflush.h MIPS: Delete unused flush_cache_sigtramp() 2019-02-07 12:59:45 -08:00
cacheops.h MIPS: Loongson: Add Loongson-3A R2 basic support 2016-05-13 14:02:14 +02:00
cdmm.h
cevt-r4k.h
checksum.h Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
clock.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clocksource.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
cmp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cmpxchg.h MIPS: include: Mark __xchg as __always_inline 2019-10-09 12:45:31 -07:00
compat-signal.h Merge branch 'misc.compat' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-11-17 11:54:55 -08:00
compat.h asm-generic: Move common compat types to asm-generic/compat.h 2018-08-29 15:42:20 +02:00
compiler.h MIPS: Simplify GCC_OFF_SMALL_ASM definition 2018-11-07 16:26:42 -08:00
cop2.h
cpu-features.h mips: Fix cpu_has_mips64r1/2 activation for MIPS32 CPUs 2020-06-22 09:30:55 +02:00
cpu-info.h MIPS: Expand MIPS32 ASIDs to 64 bits 2018-12-05 14:46:44 -08:00
cpu-type.h MIPS: Add the missing 'CPU_1074K' into __get_cpu_type() 2020-10-01 13:18:20 +02:00
cpu.h MIPS: Treat Loongson Extensions as ASEs 2019-08-26 11:42:40 +01:00
cpufeature.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
debug.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
delay.h
div64.h
dma-coherence.h dma-mapping: move the dma_coherent flag to struct device 2018-09-20 09:01:15 +02:00
dma-direct.h MIPS: consolidate the swiotlb implementations 2018-06-24 09:26:03 -07:00
dma-mapping.h dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability 2019-02-13 19:12:33 +01:00
dma.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ds1287.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
dsemul.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
dsp.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
edac.h MIPS: Avoid using .set mips0 to restore ISA 2018-11-09 10:23:19 -08:00
elf.h MIPS: Avoid FP ELF checks when CONFIG_MIPS_FP_SUPPORT=n 2018-11-09 10:23:18 -08:00
errno.h
eva.h
exec.h
extable.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fb.h
fixmap.h
floppy.h MIPS: Don't use dma_cache_sync to implement fd_cacheflush 2017-08-30 00:57:29 +02:00
fpregdef.h
fpu.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
fpu_emulator.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 182 2019-05-30 11:29:20 -07:00
ftrace.h
futex.h Revert "MIPS: futex: Emit Loongson3 sync workarounds within asm" 2020-01-04 19:16:21 +01:00
ginvt.h MIPS: mark ginvt() as __always_inline 2019-05-22 18:45:52 -07:00
gio_device.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
gt64120.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 182 2019-05-30 11:29:20 -07:00
hardirq.h
hazards.h MIPS: Avoid using .set mips0 to restore ISA 2018-11-09 10:23:19 -08:00
highmem.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hpet.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hugetlb.h hugetlb: introduce generic version of huge_ptep_get 2018-10-26 16:26:34 -07:00
hw_irq.h
i8259.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
ide.h
idle.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
inst.h
io.h mips: remove ioremap_cachable 2019-08-31 17:12:26 +01:00
irq.h MIPS: Fix minimum alignment requirement of IRQ stack 2017-07-11 14:13:06 +02:00
irq_cpu.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
irq_gt641xx.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 2019-05-21 11:28:39 +02:00
irq_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
irqflags.h MIPS: Loongson32: workaround di issue 2019-01-22 17:32:01 -08:00
isa-rev.h MIPS: Introduce isa-rev.h to define MIPS_ISA_REV 2018-03-09 11:22:45 +00:00
isadep.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
jazz.h
jazzdma.h mips/jazz: remove the mapping_error dma_map_ops method 2018-12-06 06:56:38 -08:00
jump_label.h MIPS: jump_label: Use compact branches for >= r6 2019-04-09 16:21:30 -07:00
kdebug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kexec.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 230 2019-06-19 17:09:06 +02:00
kgdb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kmap_types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kprobes.h mm, kprobes: generalize and rename notify_page_fault() as kprobe_page_fault() 2019-07-16 19:23:22 -07:00
kvm_host.h KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() 2020-08-26 10:41:08 +02:00
kvm_para.h KVM: Introduce paravirtualization hints and KVM_HINTS_DEDICATED 2018-03-06 18:40:44 +01:00
linkage.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
llsc.h MIPS: Move definitions for 32/64-bit agonstic inline assembler to new file. 2016-05-09 12:00:05 +02:00
local.h MIPS: Avoid using .set mips0 to restore ISA 2018-11-09 10:23:19 -08:00
m48t37.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
maar.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
machine.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mc146818-time.h MIPS: Convert read_persistent_clock() to read_persistent_clock64() 2018-05-14 23:58:23 +01:00
mc146818rtc.h
mips-cm.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mips-cpc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mips-cps.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mips-gic.h Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-06-29 19:36:53 +08:00
mips-r2-to-r6-emul.h MIPS: traps: Correct the SIGTRAP debug ABI in `do_watch' and `do_trap_or_bp' 2016-04-03 12:32:09 +02:00
mips_machine.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mips_mt.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mipsmtregs.h MIPS: Avoid using .set mips0 to restore ISA 2018-11-09 10:23:19 -08:00
mipsprom.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mipsregs.h mips: MAAR: Use more precise address mask 2020-06-22 09:31:07 +02:00
mmiowb.h mips/mmiowb: Add unconditional mmiowb() to arch_spin_unlock() 2019-04-08 12:00:28 +01:00
mmu.h MIPS: MemoryMapID (MMID) Support 2019-02-04 10:56:41 -08:00
mmu_context.h MIPS: MemoryMapID (MMID) Support 2019-02-04 10:56:41 -08:00
mmzone.h MIPS: Only include mmzone.h when CONFIG_NEED_MULTIPLE_NODES=y 2018-11-21 19:54:59 -08:00
module.h MIPS: Remove unused R8000 CPU support 2019-07-23 14:33:51 -07:00
msa.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
msc01_ic.h
nile4.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
paccess.h
page.h dma-mapping updates for Linux 5.3 2019-07-12 15:13:55 -07:00
pci.h PCI: Convert pci_resource_to_user() to a weak function 2019-08-08 15:12:07 -05:00
perf_event.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
pgalloc.h mm: treewide: clarify pgtable_page_{ctor,dtor}() naming 2019-09-26 10:10:44 -07:00
pgtable-32.h arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed 2020-12-02 08:49:50 +01:00
pgtable-64.h mips: fix build when "48 bits virtual memory" is enabled 2019-12-31 16:45:45 +01:00
pgtable-bits.h MIPS: Disable pte_special() for MIPS32 with RiXi 2019-09-20 14:55:07 -07:00
pgtable.h mm: consolidate pgtable_cache_init() and pgd_cache_init() 2019-09-24 15:54:09 -07:00
pm-cps.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
pm.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
pmon.h
prefetch.h
processor.h mips: use generic mmap top-down layout and brk randomization 2019-09-24 15:54:12 -07:00
prom.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ptrace.h asm-generic: remove ptrace.h 2019-07-01 17:51:40 +02:00
r4k-timer.h
r4kcache.h MIPS: c-r4k: Add r4k_blast_scache_node for Loongson-3 2018-11-20 21:04:17 -08:00
reboot.h
reg.h
regdef.h
rtlx.h
seccomp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
serial.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
setup.h mips: unify prom_putchar() declarations 2018-07-17 09:40:17 -07:00
sgialib.h mips: unify prom_putchar() declarations 2018-07-17 09:40:17 -07:00
sgiarcs.h MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
shmparam.h
sigcontext.h
signal.h Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-08-06 09:13:11 -04:00
sim.h MIPS: Remove nabi_no_regargs 2018-08-01 13:20:15 -07:00
smp-cps.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
smp-ops.h MIPS: SGI-IP27: do boot CPU init later 2019-02-19 12:46:03 -08:00
smp.h MIPS: kexec: Make a framework for both jumping and halting on nonboot CPUs 2018-09-22 10:31:50 -07:00
sni.h
socket.h
sparsemem.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spinlock.h mips/mmiowb: Add unconditional mmiowb() to arch_spin_unlock() 2019-04-08 12:00:28 +01:00
spinlock_types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spram.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
stackframe.h MIPS: Avoid using .set mips0 to restore ISA 2018-11-09 10:23:19 -08:00
stackprotector.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
stacktrace.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
string.h
switch_to.h sched/core: Provide a pointer to the valid CPU mask 2019-06-03 11:49:37 +02:00
syscall.h MIPS/ptrace: Update mips_get_syscall_arg's return type 2019-08-11 21:44:30 -07:00
termios.h Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
thread_info.h MIPS: Avoid VDSO ABI breakage due to global register variable 2020-01-09 10:19:56 +01:00
time.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
timex.h
tlb.h arch/tlb: Clean up simple architectures 2019-04-03 10:32:54 +02:00
tlbdebug.h
tlbex.h MIPS: Consistently declare TLB functions 2018-08-10 17:27:53 -07:00
tlbflush.h MIPS: mm: Remove local_flush_tlb_mm() 2019-02-04 10:56:24 -08:00
tlbmisc.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
topology.h MIPS: Abstract CPU core & VP(E) ID access through accessor functions 2017-08-30 00:57:26 +02:00
traps.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
txx9irq.h
txx9pio.h
txx9tmr.h
types.h
uaccess.h get rid of legacy 'get_ds()' function 2019-03-04 10:50:14 -08:00
uasm.h MIPS: uasm: Add div, mul and sel instructions for mipsr6 2019-03-19 15:26:06 -07:00
unistd.h MIPS: Wire up clone3 syscall 2019-10-02 14:06:41 -07:00
uprobes.h uprobes: remove function declarations from arch/{mips,s390} 2016-10-07 18:46:30 -07:00
vdso.h mips: Add support for generic vDSO 2019-07-25 21:45:05 -07:00
vga.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vpe.h
war.h MIPS: Remove unused R5432_CP0_INTERRUPT_WAR 2019-07-23 14:33:44 -07:00
watch.h MIPS: Fix watchpoint restoration 2016-05-09 12:00:02 +02:00
wbflush.h
yamon-dt.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00