linux/arch/m68k
Geert Uytterhoeven 631d8b674f m68k/uaccess: Fix asm constraints for userspace access
When compiling a MMU kernel with CPU_HAS_ADDRESS_SPACES=n (e.g. "MMU=y
allnoconfig": "echo CONFIG_MMU=y > allno.config && make KCONFIG_ALLCONFIG=1
allnoconfig"), we use plain "move" instead of "moves", and I got:

  CC      arch/m68k/lib/uaccess.o
{standard input}: Assembler messages:
{standard input}:47: Error: operands mismatch -- statement `move.b %a0,(%a1)' ignored

This happens because plain "move" doesn't support byte transfers between
memory and address registers, while "moves" does.

Fix the asm constraints for __generic_copy_from_user(),
__generic_copy_to_user(), and __clear_user() to only use data registers
when accessing userspace.

Also, relax the asm constraints for 16-bit userspace accesses in
__put_user() and __get_user(), as both "move" and "moves" do support
such transfers between memory and address registers.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2013-06-24 19:44:19 +02:00
..
amiga m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
apollo m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
atari m68k/atari: USB - add platform devices for EtherNAT/NetUSBee ISP1160 HCD 2013-04-16 21:35:41 +02:00
bvme6000 m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
configs m68k: Update defconfigs for v3.9 2013-05-28 10:22:06 +02:00
emu ARCH: drivers remove __dev* attributes. 2013-01-03 15:57:13 -08:00
fpsp040 Fix common misspellings 2011-03-31 11:26:23 -03:00
hp300 m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
ifpsp060 Fix common misspellings 2011-03-31 11:26:23 -03:00
include m68k/uaccess: Fix asm constraints for userspace access 2013-06-24 19:44:19 +02:00
kernel m68k/irq: Vector ints need a valid interrupt handler 2013-06-24 19:44:19 +02:00
lib m68k/uaccess: Fix asm constraints for userspace access 2013-06-24 19:44:19 +02:00
mac m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
math-emu m68k/math-emu: unsigned issue, 'unsigned long' will never be less than zero 2013-06-24 19:44:19 +02:00
mm mm/m68k: use common help functions to free reserved pages 2013-04-29 15:54:30 -07:00
mvme16x m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
mvme147 m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
platform m68knommu: enable Timer on coldfire 532x 2013-04-29 09:17:59 +10:00
q40 m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
sun3 m68k/sun3: remove inline marking of EXPORT_SYMBOL functions 2013-06-24 19:44:18 +02:00
sun3x m68k: set arch_gettimeoffset directly 2012-12-24 09:36:34 -07:00
tools/amiga
install.sh kbuild: use INSTALLKERNEL to select customized installkernel script 2009-09-20 12:18:14 +02:00
Kconfig idle: Remove GENERIC_IDLE_LOOP config switch 2013-04-17 10:39:38 +02:00
Kconfig.bus m68k/atari: ROM port ISA adapter support 2013-04-16 21:08:11 +02:00
Kconfig.cpu Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu 2013-05-10 07:22:35 -07:00
Kconfig.debug m68k: remove CONFIG_EARLY_PRINTK dependency on CONFIG_EMBEDDED, default to n 2013-06-24 19:44:18 +02:00
Kconfig.devices m68k/atari: EtherNEC - add platform device support 2013-04-16 21:20:14 +02:00
Kconfig.machine m68knommu: add support for configuring a Freescale M5373EVB board 2013-04-29 09:17:59 +10:00
Makefile m68knommu: add support for the ColdFire 537x family of CPUs 2013-04-29 09:17:58 +10:00