linux/arch/mips
James Hogan 9645511250 MIPS: CPS: Fix MIPS_ISA_LEVEL_RAW fallout
commit 8dbc1864b7 upstream.

Commit 17278a91e0 ("MIPS: CPS: Fix r1 .set mt assembler warning")
added .set MIPS_ISA_LEVEL_RAW to silence warnings about .set mt on r1,
however this can result in a MOVE being encoded as a 64-bit DADDU
instruction on certain version of binutils (e.g. 2.22), and reserved
instruction exceptions at runtime on 32-bit hardware.

Reduce the sizes of the push/pop sections to include only instructions
that are part of the MT ASE or which won't convert to 64-bit
instructions after .set mips64r2/mips64r6.

Reported-by: Greg Ungerer <gerg@linux-m68k.org>
Fixes: 17278a91e0 ("MIPS: CPS: Fix r1 .set mt assembler warning")
Signed-off-by: James Hogan <jhogan@kernel.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Paul Burton <paul.burton@mips.com>
Cc: linux-mips@linux-mips.org
Tested-by: Greg Ungerer <gerg@linux-m68k.org>
Patchwork: https://patchwork.linux-mips.org/patch/18578/
[bwh: Backported to 3.16: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
History 2018-03-03 15:52:35 +00:00
..
alchemy MIPS: Replace obsolete strict_strto call with kstrto 2014-06-04 22:50:40 +02:00
ar7 MIPS: AR7: Ensure that serial ports are properly set up 2018-01-01 20:52:06 +00:00
ath79 MIPS: ath79: make bootconsole wait for both THRE and TEMT 2016-08-22 22:37:53 +01:00
bcm47xx MIPS: BCM47XX: Fix button inversion for Asus WL-500W 2017-06-05 21:17:10 +01:00
bcm63xx MIPS: BCM63XX: allow NULL clock for clk_get_rate 2017-11-26 13:50:31 +00:00
boot MIPS: elf2ecoff: Ignore PT_MIPS_ABIFLAGS program headers. 2017-11-11 13:34:02 +00:00
cavium-octeon MIPS: OCTEON: Fix copy_from_user fault handling for large buffers 2017-06-05 21:17:10 +01:00
cobalt MIPS: Cobalt: Move to 8250/16550 serial early printk driver 2013-10-29 21:24:38 +01:00
configs MIPS: ip27: Disable qlge driver in defconfig 2017-06-05 21:17:10 +01:00
dec MIPS: DEC: Fix an int-handler.S CPU_DADDI_WORKAROUNDS regression 2017-11-11 13:34:00 +00:00
emma MIPS: Remove panic_timeout settings 2013-11-26 12:12:27 +01:00
fw MIPS: DEC/SNI: O32 wrapper stack switching fixes 2014-05-13 00:29:35 +02:00
include MIPS: Fix FCSR Cause bit handling for correct SIGFPE issue 2018-03-03 15:51:56 +00:00
jazz Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2013-03-02 07:44:16 -08:00
jz4740 MIPS: jz4740: fix build error in irq.h 2017-11-11 13:34:02 +00:00
kernel MIPS: CPS: Fix MIPS_ISA_LEVEL_RAW fallout 2018-03-03 15:52:35 +00:00
kvm MIPS: KVM: Fix modular KVM under QEMU 2017-10-12 15:28:18 +01:00
lantiq Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-06-09 18:10:34 -07:00
lasat MIPS: Lasat: Replace del_timer by del_timer_sync 2014-03-31 18:17:12 +02:00
lib MIPS: uaccess: Take EVA into account in [__]clear_user 2016-01-25 10:43:31 +00:00
loongson MIPS: Loongson 2F: allow NULL clock for clk_get_rate 2017-11-26 13:50:32 +00:00
loongson1 MIPS: Disable MIPS16/microMIPS crap for platforms not supporting these ASEs. 2014-05-23 15:12:37 +02:00
math-emu MIPS: Fix a preemption issue with thread's FPU defaults 2018-03-03 15:51:56 +00:00
mm MIPS: microMIPS: Fix incorrect mask in insn_table_MM 2018-01-01 20:52:02 +00:00
mti-malta MIPS: Malta: Fix IOCU disable switch read for MIPS64 2016-11-20 01:17:36 +00:00
mti-sead3 Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2014-06-09 18:10:34 -07:00
net bpf, mips: fix off-by-one in ctx offset allocation 2016-11-20 01:16:56 +00:00
netlogic MIPS: Netlogic: Fix assembler warning from smpboot.S 2017-06-05 21:16:46 +01:00
oprofile MIPS: oprofile: Fix backtrace on 64-bit kernel 2014-12-01 10:26:05 +00:00
paravirt mips: Update the email address of Geert Uytterhoeven 2014-06-02 16:34:41 +02:00
pci MIPS: TXx9: Delete an unused variable in tx4927_pcibios_setup 2017-11-11 13:34:01 +00:00
pmcs-msp71xx MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
pnx833x MIPS: PNX833x: Remove checks for CONFIG_I2C_PNX0105 2014-05-23 15:12:39 +02:00
power nosave: consolidate __nosave_{begin,end} in <asm/sections.h> 2015-05-06 10:24:18 +01:00
ralink MIPS: ralink: allow NULL clock for clk_get_rate 2017-11-26 13:50:32 +00:00
rb532 MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
sgi-ip22 MIPS: ip22: Fix ip28 build for modern gcc 2017-11-11 13:34:00 +00:00
sgi-ip27 MIPS: IP27: Fix __node_distances undefined error 2014-12-01 10:26:04 +00:00
sgi-ip32 MIPS: Whitespace cleanup. 2013-02-01 10:00:22 +01:00
sibyte MIPS: SMP: Remove plat_smp_ops cpus_done method. 2014-05-27 11:06:42 +02:00
sni MIPS: Cleanup CP0 PRId and CP1 FPIR register access masks 2013-09-18 20:25:19 +02:00
txx9 MIPS: Replace calls to obsolete strict_strto call with kstrto* equivalents. 2014-06-04 22:50:41 +02:00
vr41xx MIPS: Idle: Consolidate all declarations in <asm/idle.h>. 2013-05-22 01:34:27 +02:00
Kbuild MIPS: net: Add BPF JIT 2014-05-30 16:10:20 +02:00
Kbuild.platforms MIPS: Enable build for new system 'paravirt' 2014-06-02 12:34:20 +02:00
Kconfig MIPS: Lasat: Fix build error if CRC32 is not enabled. 2014-06-26 14:43:01 +01:00
Kconfig.debug MIPS: MT: Remove SMTC support 2014-05-24 00:07:01 +02:00
Makefile MIPS: 'make -s' should be silent 2017-06-05 21:16:58 +01:00