3 # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
6 --- linux-2.4.22/arch/arm/lib/getuser.S~gcc3-userfuncs 2004-09-08 19:14:05.000000000 -0500
7 +++ linux-2.4.22/arch/arm/lib/getuser.S 2004-09-08 19:49:27.000000000 -0500
14 - ldr r2, [r2, #TSK_ADDR_LIMIT]
19 + ldr ip, [ip, #TSK_ADDR_LIMIT]
22 2: ldrlsbt r1, [r0], #1
26 - orrls r1, r1, r2, lsl #8
27 + orrls r1, r1, ip, lsl #8
29 - orrls r1, r2, r1, lsl #8
30 + orrls r1, ip, r1, lsl #8
34 --- linux-2.4.22/arch/arm/lib/putuser.S~gcc3-userfuncs 2004-09-08 19:14:05.000000000 -0500
35 +++ linux-2.4.22/arch/arm/lib/putuser.S 2004-09-08 19:45:00.000000000 -0500
37 * Inputs: r0 contains the address
38 * r1, r2 contains the value
39 * Outputs: r0 is the error code
43 * No other registers must be altered. (see include/asm-arm/uaccess.h
44 * for specific ASM register usage).
51 - ldr r2, [r2, #TSK_ADDR_LIMIT]
56 + ldr ip, [ip, #TSK_ADDR_LIMIT]
68 - ldr r2, [r2, #TSK_ADDR_LIMIT]
73 + ldr ip, [ip, #TSK_ADDR_LIMIT]
77 2: strlsbt r1, [r0], #1
96 - ldr r2, [r2, #TSK_ADDR_LIMIT]
100 + bic ip, ip, #0x00ff
101 + ldr ip, [ip, #TSK_ADDR_LIMIT]
107 --- linux-2.4.22/include/asm-arm/uaccess.h~gcc3-userfuncs 2004-09-08 19:36:03.000000000 -0500
108 +++ linux-2.4.22/include/asm-arm/uaccess.h 2004-09-08 20:03:34.000000000 -0500
110 __get_user_x(__r1, __p, __e, 1, "lr"); \
113 - __get_user_x(__r1, __p, __e, 2, "r2", "lr"); \
114 + __get_user_x(__r1, __p, __e, 2, "ip", "lr"); \
117 __get_user_x(__r1, __p, __e, 4, "lr"); \
118 @@ -122,13 +122,13 @@
119 register int __e asm("r0"); \
120 switch (sizeof(*(p))) { \
122 - __put_user_x(__r1, __p, __e, 1, "r2", "lr"); \
123 + __put_user_x(__r1, __p, __e, 1, "ip", "lr"); \
126 - __put_user_x(__r1, __p, __e, 2, "r2", "lr"); \
127 + __put_user_x(__r1, __p, __e, 2, "ip", "lr"); \
130 - __put_user_x(__r1, __p, __e, 4, "r2", "lr"); \
131 + __put_user_x(__r1, __p, __e, 4, "ip", "lr"); \
134 __put_user_x(__r1, __p, __e, 8, "ip", "lr"); \