提交 79c2cc7b 编写于 作者: A Anton Blanchard 提交者: Linus Torvalds

[PATCH] ppc64: add ioprio syscalls

- Clean up sys32_getpriority comment.
- Add ioprio syscalls, and sign extend 32bit versions.
Signed-off-by: NAnton Blanchard <anton@samba.org>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 4416f396
...@@ -1124,9 +1124,11 @@ _GLOBAL(sys_call_table32) ...@@ -1124,9 +1124,11 @@ _GLOBAL(sys_call_table32)
.llong .compat_sys_mq_getsetattr .llong .compat_sys_mq_getsetattr
.llong .compat_sys_kexec_load .llong .compat_sys_kexec_load
.llong .sys32_add_key .llong .sys32_add_key
.llong .sys32_request_key .llong .sys32_request_key /* 270 */
.llong .compat_sys_keyctl .llong .compat_sys_keyctl
.llong .compat_sys_waitid .llong .compat_sys_waitid
.llong .sys32_ioprio_set
.llong .sys32_ioprio_get
.balign 8 .balign 8
_GLOBAL(sys_call_table) _GLOBAL(sys_call_table)
...@@ -1403,3 +1405,5 @@ _GLOBAL(sys_call_table) ...@@ -1403,3 +1405,5 @@ _GLOBAL(sys_call_table)
.llong .sys_request_key /* 270 */ .llong .sys_request_key /* 270 */
.llong .sys_keyctl .llong .sys_keyctl
.llong .sys_waitid .llong .sys_waitid
.llong .sys_ioprio_set
.llong .sys_ioprio_get
...@@ -822,16 +822,6 @@ asmlinkage long sys32_getpgid(u32 pid) ...@@ -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, /* Note: it is necessary to treat pid as an unsigned int,
* with the corresponding cast to a signed int to insure that the * with the corresponding cast to a signed int to insure that the
...@@ -1023,6 +1013,11 @@ asmlinkage long sys32_setpgid(u32 pid, u32 pgid) ...@@ -1023,6 +1013,11 @@ asmlinkage long sys32_setpgid(u32 pid, u32 pgid)
return sys_setpgid((int)pid, (int)pgid); 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) long sys32_setpriority(u32 which, u32 who, u32 niceval)
{ {
...@@ -1030,6 +1025,18 @@ long sys32_setpriority(u32 which, u32 who, u32 niceval) ...@@ -1030,6 +1025,18 @@ long sys32_setpriority(u32 which, u32 who, u32 niceval)
return sys_setpriority((int)which, (int)who, (int)niceval); 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, /* Note: it is necessary to treat newmask as an unsigned int,
* with the corresponding cast to a signed int to insure that the * 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) * proper conversion (sign extension) between the register representation of a signed int (msr in 32-bit mode)
......
...@@ -283,8 +283,10 @@ ...@@ -283,8 +283,10 @@
#define __NR_request_key 270 #define __NR_request_key 270
#define __NR_keyctl 271 #define __NR_keyctl 271
#define __NR_waitid 272 #define __NR_waitid 272
#define __NR_ioprio_set 273
#define __NR_ioprio_get 274
#define __NR_syscalls 273 #define __NR_syscalls 275
#ifdef __KERNEL__ #ifdef __KERNEL__
#define NR_syscalls __NR_syscalls #define NR_syscalls __NR_syscalls
#endif #endif
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册