android_kernel_google_msm/arch/sparc/kernel
Will Deacon 9587d567d2 BACKPORT: ipc: add COMPAT_SHMLBA support
If the SHMLBA definition for a native task differs from the definition for
a compat task, the do_shmat() function would need to handle both.

This patch introduces COMPAT_SHMLBA, which is used by the compat shmat
syscall when calling the ipc code and allows architectures such as AArch64
(where the native SHMLBA is 64k but the compat (AArch32) definition is
16k) to provide the correct semantics for compat IPC system calls.

Change-Id: I0292f1fedabaa6cbbab843611aa76a8f50f47771
Cc: David S. Miller <davem@davemloft.net>
Cc: Chris Zankel <chris@zankel.net>
Cc: Arnd Bergmann <arnd@arndb.de>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Kevin F. Haggerty <haggertk@lineageos.org>
2023-02-18 18:32:08 +01:00
..
.gitignore
apc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
asm-offsets.c sparc32: vm_area_struct access for old Sun SPARCs. 2013-07-28 16:25:49 -07:00
audit.c
auxio_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
auxio_64.c sparc64: Fix section mis-match errors. 2011-03-30 17:37:56 -07:00
btext.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
central.c sparc64: Do not clobber %g2 in xcall_fetch_glob_regs(). 2012-05-10 11:00:46 -07:00
cherrs.S
chmc.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
compat_audit.c
cpu.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
cpumap.h
devices.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
dma.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
ds.c sparc64: Fix bootup crash on sun4v. 2012-04-13 11:56:22 -07:00
dtlb_miss.S
dtlb_prot.S
ebus.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
entry.h sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
entry.S sparc32: Fix exit flag passed from traced sys_sigreturn 2013-10-13 15:42:49 -07:00
etrap_32.S
etrap_64.S
fpu_traps.S
ftrace.c
getsetcc.S
head_32.S sparc32,leon: operate on boot-cpu IRQ controller registers 2011-04-21 16:44:45 -07:00
head_64.S sparc64: Future proof Niagara cpu detection. 2011-09-16 14:21:33 -07:00
helpers.S
hvapi.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
hvcalls.S sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
hvtramp.S
idprom.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
init_task.c Fix common misspellings 2011-03-31 11:26:23 -03:00
iommu.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
iommu_common.h
ioport.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
irq.h Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
irq_32.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
irq_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
itlb_miss.S
ivec.S
jump_label.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kernel.h sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
kgdb_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
kgdb_64.c sparc: Fix even more fallout from system.h split. 2012-03-29 22:40:52 -07:00
kprobes.c
kstack.h
ktlb.S sparc64: Fix ITLB handler of null page 2013-10-13 15:42:49 -07:00
ldc.c sparc64: ldc_connect() should not return EINVAL when handshake is in progress. 2014-08-14 08:42:37 +08:00
led.c
leon_kernel.c remove references to cpu_*_map in arch/ 2012-03-29 15:38:30 +10:30
leon_pci.c sparc32,leon: fix leon build 2012-04-04 15:44:39 -07:00
leon_pci_grpci2.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
leon_pmc.c SPARC/LEON: power down instruction different of different LEONs 2011-03-16 18:19:04 -07:00
leon_smp.c sparc32,leon: add notify_cpu_starting() 2012-04-21 16:35:06 -04:00
Makefile sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
mdesc.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
misctrap.S
module.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
muldiv.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
nmi.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
of_device_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
of_device_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
of_device_common.h
pci.c PCI: Convert pcibios_resource_to_bus() to take a pci_bus, not a pci_dev 2015-06-19 11:40:34 +08:00
pci_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
pci_fire.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_impl.h sparc64: rename virt_irq => irq - II 2011-03-16 18:19:03 -07:00
pci_msi.c sparc: convert old cpumask API into new one 2011-05-16 13:38:07 -07:00
pci_psycho.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sabre.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_schizo.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pci_sun4v.c SPARC: adapt for dma_map_ops changes 2012-03-28 16:36:34 +02:00
pci_sun4v.h
pci_sun4v_asm.S
pcic.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
pcr.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
perf_event.c sparc64: Fix bit twiddling in sparc_pmu_enable_event(). 2012-10-28 10:14:16 -07:00
pmc.c sparc: Add module.h to files previously implicitly using it. 2011-10-31 19:30:54 -04:00
power.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
process_32.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
process_64.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
prom.h
prom_32.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_64.c sparc: remove several unnecessary module.h include instances 2011-10-31 19:30:54 -04:00
prom_common.c sparc: Use kmemdup rather than duplicating its implementation 2011-12-04 10:46:56 -08:00
prom_irqtrans.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
psycho_common.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
psycho_common.h
ptrace_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
ptrace_64.c seccomp: ignore secure_computing return values 2014-10-31 19:46:19 -07:00
reboot.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
rtrap_32.S sparc: keep calling do_signal() as long as pending signals remain 2010-10-26 08:59:55 -07:00
rtrap_64.S sparc64: Eliminate obsolete __handle_softirq() function 2012-04-13 11:58:38 -07:00
sbus.c sparc: add export.h to arch/sparc files as required 2011-10-31 19:30:52 -04:00
setup_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
setup_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
signal_64.c sparc64: not any error from do_sigaltstack() should fail rt_sigreturn() 2012-12-03 11:47:10 -08:00
sigutil.h sparc: Allow handling signals when stack is corrupted. 2011-08-20 17:14:54 -07:00
sigutil_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
sigutil_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
smp_32.c smp: Add task_struct argument to __cpu_up() 2016-10-29 23:12:38 +08:00
smp_64.c Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
sparc_ksyms_32.c
sparc_ksyms_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
spiterrs.S
sstate.c sparc: Set reboot-cmd using reboot data hypervisor call if available. 2011-08-02 21:28:52 -07:00
stacktrace.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
starfire.c sparc: explicitly cast negative phandle checks to s32 2011-01-03 20:02:06 -07:00
sun4c_irq.c sparc32: genirq support 2011-04-19 22:11:40 -07:00
sun4d_irq.c Add support for allocating irqs for bootbus devices 2011-06-07 16:06:33 -07:00
sun4d_smp.c sparc32: fix fallout from system.h removal 2012-03-30 18:16:58 -07:00
sun4m_irq.c sparc32: forced setting of mode of sun4m per-cpu timers 2012-01-10 16:28:24 -08:00
sun4m_smp.c sparc32: fix fallout from system.h removal 2012-03-30 18:16:58 -07:00
sun4v_ivec.S
sun4v_tlb_miss.S
sys32.S sparc64: Fix argument sign extension for compat_sys_futex(). 2014-08-14 08:42:36 +08:00
sys_sparc32.c vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
sys_sparc_32.c BKL: remove extraneous #include <smp_lock.h> 2010-11-17 08:59:32 -08:00
sys_sparc_64.c BACKPORT: ipc: add COMPAT_SHMLBA support 2023-02-18 18:32:08 +01:00
syscalls.S sparc64: don't treat 64-bit syscall return codes as 32-bit 2014-04-26 17:13:19 -07:00
sysfs.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
systbls.h
systbls_32.S sparc: Hook up process_vm_{readv,writev} syscalls. 2011-11-01 00:51:30 -07:00
systbls_64.S KEYS: Use the compat keyctl() syscall wrapper on Sparc64 for Sparc32 compat 2012-06-01 15:18:16 +08:00
tadpole.c
time_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
time_64.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
trampoline_32.S
trampoline_64.S sparc64: Fix off by one in trampoline TLB mapping installation loop. 2013-10-13 15:42:49 -07:00
traps_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
traps_64.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
tsb.S
ttable.S
una_asm_32.S sparc32: unaligned memory access (MNA) trap handler bug 2011-02-01 12:39:59 -08:00
una_asm_64.S sparc: Fix .size directive for do_int_load 2011-03-16 18:19:15 -07:00
unaligned_32.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
unaligned_64.c sparc64: Handle 32-bit tasks properly in compute_effective_address(). 2014-08-14 08:42:36 +08:00
us2e_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
us3_cpufreq.c sparc: Remove unnecessary semicolons 2011-06-07 16:06:34 -07:00
utrap.S
vio.c powerpc+sparc/vio: Modernize driver registration 2012-03-28 11:33:24 +11:00
viohs.c sparc: move symbol exporters to use export.h not module.h 2011-10-31 19:30:53 -04:00
visemul.c Disintegrate asm/system.h for Sparc 2012-03-28 18:30:03 +01:00
vmlinux.lds.S sparc: Access kernel TSB using physical addressing when possible. 2011-08-05 00:53:57 -07:00
windows.c BKL: remove extraneous #include <smp_lock.h> 2010-11-17 08:59:32 -08:00
winfixup.S
wof.S
wuf.S