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
..
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2010-10-22 09:43:22 +02:00
2009-01-16 21:58:10 +10:00
2010-05-26 19:51:09 +02:00
2009-01-16 21:58:10 +10:00
2012-08-18 15:15:56 +02:00
2009-12-12 13:08:14 +01:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2011-07-30 21:21:39 +02:00
2013-04-16 21:18:29 +02:00
2013-04-16 21:18:29 +02:00
2011-05-19 18:19:11 +02:00
2012-04-01 22:57:49 +02:00
2012-03-28 18:30:02 +01:00
2011-07-25 11:20:40 +10:00
2011-12-10 19:52:48 +01:00
2009-12-04 15:39:55 +01:00
2011-03-31 11:26:23 -03:00
2009-03-24 15:17:44 +10:00
2009-03-24 15:17:45 +10:00
2009-01-16 21:58:10 +10:00
2010-08-11 08:59:21 -07:00
2012-07-17 15:49:34 +10:00
2012-09-27 23:28:40 +10:00
2012-10-02 18:01:25 +01:00
2011-12-24 21:47:57 +10:00
2013-04-16 21:08:09 +02:00
2011-03-15 21:01:57 +10:00
2013-04-05 13:28:27 +01:00
2009-01-16 21:58:10 +10:00
2009-03-24 15:17:45 +10:00
2013-04-16 21:35:40 +02:00
2011-12-24 21:47:57 +10:00
2013-02-09 14:23:36 +01:00
2013-04-29 09:17:58 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2013-02-26 02:46:08 -05:00
2012-04-22 20:16:50 +02:00
2009-03-24 15:17:44 +10:00
2010-02-05 12:22:42 +01:00
2012-05-20 21:21:33 +10:00
2009-01-16 21:58:10 +10:00
2011-12-30 10:20:47 +10:00
2009-03-02 16:49:37 -05:00
2013-05-21 21:29:13 +02:00
2013-05-29 16:56:45 +10:00
2011-11-08 22:35:49 +01:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2010-08-18 12:44:31 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2013-04-16 21:08:11 +02:00
2011-05-24 10:03:50 +10:00
2012-10-02 18:01:25 +01:00
2013-04-16 21:18:29 +02:00
2010-11-03 11:30:07 +10:00
2013-05-21 21:29:13 +02:00
2009-01-16 21:58:10 +10:00
2011-01-05 15:19:20 +10:00
2013-04-29 09:17:58 +10:00
2013-04-29 09:17:59 +10:00
2013-04-29 09:17:57 +10:00
2012-09-27 23:34:03 +10:00
2012-07-17 15:49:42 +10:00
2012-09-27 23:34:02 +10:00
2012-07-16 09:59:22 +10:00
2012-09-27 23:34:04 +10:00
2012-12-05 10:51:21 +10:00
2012-09-27 23:34:06 +10:00
2012-09-27 23:33:55 +10:00
2012-09-27 23:33:51 +10:00
2012-09-27 23:34:05 +10:00
2012-09-27 23:34:07 +10:00
2012-09-27 23:34:08 +10:00
2012-07-16 09:59:21 +10:00
2012-10-02 18:01:25 +01:00
2009-01-16 21:58:10 +10:00
2011-03-31 11:26:23 -03:00
2009-01-16 21:58:10 +10:00
2012-10-02 18:01:25 +01:00
2009-01-16 21:58:10 +10:00
2011-12-10 19:52:46 +01:00
2011-12-10 19:52:46 +01:00
2011-12-10 19:52:47 +01:00
2011-12-10 19:52:46 +01:00
2011-12-10 19:52:47 +01:00
2012-12-24 09:36:34 -07:00
2009-01-16 21:58:10 +10:00
2010-02-27 18:31:09 +01:00
2011-12-10 19:52:48 +01:00
2011-12-10 19:52:47 +01:00
2009-08-31 18:08:49 +02:00
2009-03-24 15:17:41 +10:00
2011-04-10 17:01:05 +02:00
2011-04-10 17:01:05 +02:00
2013-03-04 11:08:50 +10:00
2012-07-12 07:54:45 -07:00
2011-12-30 10:20:40 +10:00
2012-02-07 11:04:00 +10:00
2012-12-05 10:51:24 +10:00
2011-03-15 21:01:54 +10:00
2013-04-29 09:17:58 +10:00
2009-09-16 09:43:52 +10:00
2011-12-30 10:20:38 +10:00
2011-03-15 21:01:54 +10:00
2012-03-05 09:43:09 +10:00
2013-04-29 09:17:58 +10:00
2012-09-27 23:34:01 +10:00
2013-04-29 09:17:58 +10:00
2012-07-16 09:59:21 +10:00
2009-01-16 21:58:10 +10:00
2011-12-30 10:20:34 +10:00
2009-03-24 15:17:42 +10:00
2009-01-16 21:58:10 +10:00
2012-09-28 14:31:03 +09:30
2009-08-26 23:14:49 +02:00
2011-12-30 10:20:37 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2011-03-16 19:10:41 +01:00
2012-09-27 23:33:54 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2011-08-23 13:39:48 -07:00
2012-12-05 10:51:22 +10:00
2011-12-30 10:20:31 +10:00
2012-10-02 18:01:25 +01:00
2013-01-03 15:57:13 -08:00
2012-07-17 15:49:41 +10:00
2011-12-30 10:20:40 +10:00
2011-12-30 10:20:26 +10:00
2013-01-07 11:46:25 +10:00
2012-10-02 18:01:25 +01:00
2013-02-06 11:13:23 +10:00
2012-12-19 18:07:39 -05:00
2012-10-02 18:01:25 +01:00
2011-11-08 22:35:52 +01:00
2009-01-16 21:58:10 +10:00
2013-04-16 21:08:11 +02:00
2009-04-02 01:05:31 +00:00
2011-12-30 10:20:22 +10:00
2011-12-10 19:52:45 +01:00
2012-10-09 09:47:06 +01:00
2013-02-03 18:16:00 -05:00
2009-01-16 21:58:10 +10:00
2013-06-24 19:44:18 +02:00
2009-07-27 12:10:38 -07:00
2011-01-05 21:17:19 +01:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2009-01-16 21:58:10 +10:00
2012-03-28 18:30:02 +01:00
2009-01-16 21:58:10 +10:00
2012-03-28 18:30:02 +01:00
2012-05-21 23:59:47 -04:00
2009-09-16 09:43:56 +10:00
2009-01-16 21:58:10 +10:00
2011-12-30 10:20:30 +10:00
2011-12-24 21:47:57 +10:00
2013-06-24 19:44:19 +02:00
2009-01-16 21:58:10 +10:00
2012-10-02 18:01:25 +01:00
2011-12-24 21:47:57 +10:00
2012-06-10 10:18:32 +02:00
2013-03-03 22:55:19 -05:00
2009-01-16 21:58:10 +10:00
2012-04-22 20:16:50 +02:00
2010-02-27 18:31:18 +01:00
2009-01-16 21:58:10 +10:00