Browse Source

[PARISC] fix "reduce size of task_struct on 64-bit machines" fallout

Amazingly, parisc was the only arch effected by this...
Convert register-sized loads/stores to always be 32-bit for these fields.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Kyle McMartin 18 years ago
parent
commit
376e210b71
2 changed files with 3 additions and 4 deletions
  1. 2 3
      arch/parisc/kernel/entry.S
  2. 1 1
      arch/parisc/kernel/syscall.S

+ 2 - 3
arch/parisc/kernel/entry.S

@@ -2019,10 +2019,9 @@ ENTRY(syscall_exit)
 	STREG     %r28,TASK_PT_GR28(%r1)
 
 #ifdef CONFIG_HPUX
-
 /* <linux/personality.h> cannot be easily included */
 #define PER_HPUX 0x10
-	LDREG     TASK_PERSONALITY(%r1),%r19
+	ldw	TASK_PERSONALITY(%r1),%r19
 
 	/* We can't use "CMPIB<> PER_HPUX" since "im5" field is sign extended */
 	ldo	  -PER_HPUX(%r19), %r19
@@ -2081,7 +2080,7 @@ syscall_restore:
 	/* Are we being ptraced? */
 	LDREG	TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r1
 
-	LDREG	TASK_PTRACE(%r1), %r19
+	ldw	TASK_PTRACE(%r1), %r19
 	bb,<	%r19,31,syscall_restore_rfi
 	nop
 

+ 1 - 1
arch/parisc/kernel/syscall.S

@@ -181,7 +181,7 @@ linux_gateway_entry:
 	/* Are we being ptraced? */
 	mfctl	%cr30, %r1
 	LDREG	TI_TASK(%r1),%r1
-	LDREG	TASK_PTRACE(%r1), %r1
+	ldw	TASK_PTRACE(%r1), %r1
 	bb,<,n	%r1,31,.Ltracesys
 	
 	/* Note!  We cannot use the syscall table that is mapped