android_kernel_samsung_univ.../arch/ia64/kernel
Sergei Trofimovich 1125637bc5 ia64: fix module loading for gcc-5.4
[ Upstream commit a25fb8508c1b80dce742dbeaa4d75a1e9f2c5617 ]

Starting from gcc-5.4+ gcc generates MLX instructions in more cases to
refer local symbols:

    https://gcc.gnu.org/PR60465

That caused ia64 module loader to choke on such instructions:

    fuse: invalid slot number 1 for IMM64

The Linux kernel used to handle only case where relocation pointed to
slot=2 instruction in the bundle.  That limitation was fixed in linux by
commit 9c184a073b ("[IA64] Fix 2.6 kernel for the new ia64 assembler")
See

    http://sources.redhat.com/bugzilla/show_bug.cgi?id=1433

This change lifts the slot=2 restriction from the kernel module loader.

Tested on 'fuse' and 'btrfs' kernel modules.

Cc: Markus Elfring <elfring@users.sourceforge.net>
Cc: H J Lu <hjl.tools@gmail.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Bug: https://bugs.gentoo.org/601014
Tested-by: Émeric MASCHINO <emeric.maschino@gmail.com>
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-03-24 10:58:45 +01:00
..
.gitignore
acpi-ext.c ACPICA: Resources: Provide common part for struct acpi_resource_address structures. 2015-01-26 16:09:56 +01:00
acpi.c Initial ACPI support for arm64: 2015-04-24 08:23:45 -07:00
asm-offsets.c
audit.c
brl_emu.c
crash_dump.c
crash.c
cyclone.c arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead 2015-08-10 23:07:05 -04:00
dma-mapping.c
efi_stub.S
efi.c The libnvdimm sub-system introduces, in addition to the libnvdimm-core, 2015-06-29 10:34:42 -07:00
elfcore.c
entry.h
entry.S [IA64] Enable mlock2 syscall for ia64 2015-12-14 10:30:02 -08:00
err_inject.c
esi_stub.S
esi.c
fsys.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
fsyscall_gtod_data.h
ftrace.c
gate-data.S
gate.lds.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
gate.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
head.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
ia64_ksyms.c ia64: export flush_icache_range for module use 2015-06-15 14:58:24 -07:00
init_task.c
iosapic.c ia64/iosapic: Use irq_set_chip_handler_name_locked() 2015-07-27 13:36:37 +02:00
irq_ia64.c ia64: remove deprecated cpus_ usage. 2015-03-10 13:54:38 +10:30
irq_lsapic.c
irq.c ia64/irq: Use access helper irq_data_get_affinity_mask() 2015-07-27 13:36:37 +02:00
ivt.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
jprobes.S
kprobes.c
machine_kexec.c ia64: expose number of page table levels on Kconfig level 2015-04-14 16:49:02 -07:00
machvec.c
Makefile ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
Makefile.gate
mca_asm.S
mca_drv_asm.S
mca_drv.c
mca_drv.h
mca.c ia64: Use setup_timer 2015-06-15 15:45:18 -07:00
minstate.h ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
module.c ia64: fix module loading for gcc-5.4 2018-03-24 10:58:45 +01:00
msi_ia64.c ia64/irq: Use access helper irq_data_get_affinity_mask() 2015-07-27 13:36:37 +02:00
nr-irqs.c
numa.c ia64: fix up obsolete cpu function usage. 2015-03-05 15:25:04 +10:30
pal.S
palinfo.c
patch.c ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
pci-dma.c
pci-swiotlb.c
perfmon_default_smpl.c
perfmon_generic.h
perfmon_itanium.h
perfmon_mckinley.h
perfmon_montecito.h
perfmon.c VFS: assorted weird filesystems: d_inode() annotations 2015-04-15 15:06:58 -04:00
process.c
ptrace.c
relocate_kernel.S
sal.c
salinfo.c ia64: fix up obsolete cpu function usage. 2015-03-05 15:25:04 +10:30
setup.c ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
sigframe.h
signal.c all arches, signal: move restart_block to struct task_struct 2015-02-12 18:54:12 -08:00
smp.c ia64: fix up obsolete cpu function usage. 2015-03-05 15:25:04 +10:30
smpboot.c Nobody cares about paravirtualization on ia64 anymore 2015-06-22 20:33:38 -07:00
stacktrace.c
sys_ia64.c
time.c ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
topology.c ia64: fix up obsolete cpu function usage. 2015-03-05 15:25:04 +10:30
traps.c
unaligned.c
uncached.c mm: rename alloc_pages_exact_node() to __alloc_pages_node() 2015-09-08 15:35:28 -07:00
unwind_decoder.c
unwind_i.h
unwind.c
vmlinux.lds.S ia64: remove paravirt code 2015-06-10 14:26:32 -07:00