
From: Anton Blanchard <anton@samba.org>

- Clean up sys32_getpriority comment.
- Add ioprio syscalls, and sign extend 32bit versions.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 arch/ppc64/kernel/misc.S      |    6 +++++-
 arch/ppc64/kernel/sys_ppc32.c |   27 +++++++++++++++++----------
 include/asm-ppc64/unistd.h    |    4 +++-
 3 files changed, 25 insertions(+), 12 deletions(-)

diff -puN arch/ppc64/kernel/misc.S~ppc64-add-ioprio-syscalls arch/ppc64/kernel/misc.S
--- 25/arch/ppc64/kernel/misc.S~ppc64-add-ioprio-syscalls	Wed Jul  6 13:38:16 2005
+++ 25-akpm/arch/ppc64/kernel/misc.S	Wed Jul  6 13:38:16 2005
@@ -1124,9 +1124,11 @@ _GLOBAL(sys_call_table32)
 	.llong .compat_sys_mq_getsetattr
 	.llong .compat_sys_kexec_load
 	.llong .sys32_add_key
-	.llong .sys32_request_key
+	.llong .sys32_request_key	/* 270 */
 	.llong .compat_sys_keyctl
 	.llong .compat_sys_waitid
+	.llong .sys32_ioprio_set
+	.llong .sys32_ioprio_get
 
 	.balign 8
 _GLOBAL(sys_call_table)
@@ -1403,3 +1405,5 @@ _GLOBAL(sys_call_table)
 	.llong .sys_request_key		/* 270 */
 	.llong .sys_keyctl
 	.llong .sys_waitid
+	.llong .sys_ioprio_set
+	.llong .sys_ioprio_get
diff -puN arch/ppc64/kernel/sys_ppc32.c~ppc64-add-ioprio-syscalls arch/ppc64/kernel/sys_ppc32.c
--- 25/arch/ppc64/kernel/sys_ppc32.c~ppc64-add-ioprio-syscalls	Wed Jul  6 13:38:16 2005
+++ 25-akpm/arch/ppc64/kernel/sys_ppc32.c	Wed Jul  6 13:38:16 2005
@@ -822,16 +822,6 @@ asmlinkage long sys32_getpgid(u32 pid)
 }
 
 
-/* Note: it is necessary to treat which and who as unsigned ints,
- * with the corresponding cast to a signed int to insure that the 
- * proper conversion (sign extension) between the register representation of a signed int (msr in 32-bit mode)
- * and the register representation of a signed int (msr in 64-bit mode) is performed.
- */
-asmlinkage long sys32_getpriority(u32 which, u32 who)
-{
-	return sys_getpriority((int)which, (int)who);
-}
-
 
 /* Note: it is necessary to treat pid as an unsigned int,
  * with the corresponding cast to a signed int to insure that the 
@@ -1023,6 +1013,11 @@ asmlinkage long sys32_setpgid(u32 pid, u
 	return sys_setpgid((int)pid, (int)pgid);
 }
 
+long sys32_getpriority(u32 which, u32 who)
+{
+	/* sign extend which and who */
+	return sys_getpriority((int)which, (int)who);
+}
 
 long sys32_setpriority(u32 which, u32 who, u32 niceval)
 {
@@ -1030,6 +1025,18 @@ long sys32_setpriority(u32 which, u32 wh
 	return sys_setpriority((int)which, (int)who, (int)niceval);
 }
 
+long sys32_ioprio_get(u32 which, u32 who)
+{
+	/* sign extend which and who */
+	return sys_ioprio_get((int)which, (int)who);
+}
+
+long sys32_ioprio_set(u32 which, u32 who, u32 ioprio)
+{
+	/* sign extend which, who and ioprio */
+	return sys_ioprio_set((int)which, (int)who, (int)ioprio);
+}
+
 /* Note: it is necessary to treat newmask as an unsigned int,
  * with the corresponding cast to a signed int to insure that the 
  * proper conversion (sign extension) between the register representation of a signed int (msr in 32-bit mode)
diff -puN include/asm-ppc64/unistd.h~ppc64-add-ioprio-syscalls include/asm-ppc64/unistd.h
--- 25/include/asm-ppc64/unistd.h~ppc64-add-ioprio-syscalls	Wed Jul  6 13:38:16 2005
+++ 25-akpm/include/asm-ppc64/unistd.h	Wed Jul  6 13:38:16 2005
@@ -283,8 +283,10 @@
 #define __NR_request_key	270
 #define __NR_keyctl		271
 #define __NR_waitid		272
+#define __NR_ioprio_set		273
+#define __NR_ioprio_get		274
 
-#define __NR_syscalls		273
+#define __NR_syscalls		275
 #ifdef __KERNEL__
 #define NR_syscalls	__NR_syscalls
 #endif
_
