Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
86d295e1
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
86d295e1
编写于
10年前
作者:
H
Heiko Carstens
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
s390/compat: convert system call wrappers to C part 05
Signed-off-by:
N
Heiko Carstens
<
heiko.carstens@de.ibm.com
>
上级
c355ce18
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
23 addition
and
65 deletion
+23
-65
arch/s390/kernel/compat_wrap.c
arch/s390/kernel/compat_wrap.c
+11
-0
arch/s390/kernel/compat_wrapper.S
arch/s390/kernel/compat_wrapper.S
+0
-55
arch/s390/kernel/entry.h
arch/s390/kernel/entry.h
+2
-0
arch/s390/kernel/syscalls.S
arch/s390/kernel/syscalls.S
+10
-10
未找到文件。
arch/s390/kernel/compat_wrap.c
浏览文件 @
86d295e1
#include <linux/syscalls.h>
#include <linux/compat.h>
#include "entry.h"
#define COMPAT_SYSCALL_WRAP1(name, ...) \
COMPAT_SYSCALL_WRAPx(1, _##name, __VA_ARGS__)
...
...
@@ -63,3 +64,13 @@ COMPAT_SYSCALL_WRAP1(swapoff, const char __user *, specialfile);
COMPAT_SYSCALL_WRAP1
(
fsync
,
unsigned
int
,
fd
);
COMPAT_SYSCALL_WRAP2
(
setdomainname
,
char
__user
*
,
name
,
int
,
len
);
COMPAT_SYSCALL_WRAP1
(
newuname
,
struct
new_utsname
__user
*
,
name
);
COMPAT_SYSCALL_WRAP3
(
mprotect
,
compat_ulong_t
,
start
,
compat_size_t
,
len
,
compat_ulong_t
,
prot
);
COMPAT_SYSCALL_WRAP3
(
init_module
,
void
__user
*
,
umod
,
compat_ulong_t
,
len
,
const
char
__user
*
,
uargs
);
COMPAT_SYSCALL_WRAP2
(
delete_module
,
const
char
__user
*
,
name_user
,
unsigned
int
,
flags
);
COMPAT_SYSCALL_WRAP4
(
quotactl
,
unsigned
int
,
cmd
,
const
char
__user
*
,
special
,
qid_t
,
id
,
void
__user
*
,
addr
);
COMPAT_SYSCALL_WRAP1
(
getpgid
,
compat_pid_t
,
pid
);
COMPAT_SYSCALL_WRAP1
(
fchdir
,
unsigned
int
,
fd
);
COMPAT_SYSCALL_WRAP2
(
bdflush
,
int
,
func
,
compat_long_t
,
data
);
COMPAT_SYSCALL_WRAP3
(
sysfs
,
int
,
option
,
compat_ulong_t
,
arg1
,
compat_ulong_t
,
arg2
);
COMPAT_SYSCALL_WRAP1
(
s390_personality
,
unsigned
int
,
personality
);
COMPAT_SYSCALL_WRAP5
(
llseek
,
unsigned
int
,
fd
,
u32
,
high
,
u32
,
low
,
loff_t
__user
*
,
result
,
unsigned
int
,
whence
);
This diff is collapsed.
Click to expand it.
arch/s390/kernel/compat_wrapper.S
浏览文件 @
86d295e1
...
...
@@ -128,61 +128,6 @@ ENTRY(compat_sys_adjtimex_wrapper)
llgtr
%
r2
,%
r2
#
struct
compat_timex
*
jg
compat_sys_adjtimex
#
branch
to
system
call
ENTRY
(
sys32_mprotect_wrapper
)
llgtr
%
r2
,%
r2
#
unsigned
long
(
actually
pointer
llgfr
%
r3
,%
r3
#
size_t
llgfr
%
r4
,%
r4
#
unsigned
long
jg
sys_mprotect
#
branch
to
system
call
ENTRY
(
sys_init_module_wrapper
)
llgtr
%
r2
,%
r2
#
void
*
llgfr
%
r3
,%
r3
#
unsigned
long
llgtr
%
r4
,%
r4
#
char
*
jg
sys_init_module
#
branch
to
system
call
ENTRY
(
sys_delete_module_wrapper
)
llgtr
%
r2
,%
r2
#
const
char
*
llgfr
%
r3
,%
r3
#
unsigned
int
jg
sys_delete_module
#
branch
to
system
call
ENTRY
(
sys32_quotactl_wrapper
)
llgfr
%
r2
,%
r2
#
unsigned
int
llgtr
%
r3
,%
r3
#
const
char
*
llgfr
%
r4
,%
r4
#
qid_t
llgtr
%
r5
,%
r5
#
caddr_t
jg
sys_quotactl
#
branch
to
system
call
ENTRY
(
sys32_getpgid_wrapper
)
lgfr
%
r2
,%
r2
#
pid_t
jg
sys_getpgid
#
branch
to
system
call
ENTRY
(
sys32_fchdir_wrapper
)
llgfr
%
r2
,%
r2
#
unsigned
int
jg
sys_fchdir
#
branch
to
system
call
ENTRY
(
sys32_bdflush_wrapper
)
lgfr
%
r2
,%
r2
#
int
lgfr
%
r3
,%
r3
#
long
jg
sys_bdflush
#
branch
to
system
call
ENTRY
(
sys32_sysfs_wrapper
)
lgfr
%
r2
,%
r2
#
int
llgfr
%
r3
,%
r3
#
unsigned
long
llgfr
%
r4
,%
r4
#
unsigned
long
jg
sys_sysfs
#
branch
to
system
call
ENTRY
(
sys32_personality_wrapper
)
llgfr
%
r2
,%
r2
#
unsigned
int
jg
sys_s390_personality
#
branch
to
system
call
ENTRY
(
sys32_llseek_wrapper
)
llgfr
%
r2
,%
r2
#
unsigned
int
llgfr
%
r3
,%
r3
#
unsigned
long
llgfr
%
r4
,%
r4
#
unsigned
long
llgtr
%
r5
,%
r5
#
loff_t
*
llgfr
%
r6
,%
r6
#
unsigned
int
jg
sys_llseek
#
branch
to
system
call
ENTRY
(
sys32_getdents_wrapper
)
llgfr
%
r2
,%
r2
#
unsigned
int
llgtr
%
r3
,%
r3
#
void
*
...
...
This diff is collapsed.
Click to expand it.
arch/s390/kernel/entry.h
浏览文件 @
86d295e1
...
...
@@ -72,4 +72,6 @@ long sys_rt_sigreturn(void);
long
sys32_sigreturn
(
void
);
long
sys32_rt_sigreturn
(
void
);
long
sys_s390_personality
(
unsigned
int
personality
);
#endif
/* _ENTRY_H */
This diff is collapsed.
Click to expand it.
arch/s390/kernel/syscalls.S
浏览文件 @
86d295e1
...
...
@@ -133,22 +133,22 @@ SYSCALL(sys_setdomainname,sys_setdomainname,compat_sys_setdomainname)
SYSCALL
(
sys_newuname
,
sys_newuname
,
compat_sys_newuname
)
NI_SYSCALL
/
*
modify_ldt
for
i386
*/
SYSCALL
(
sys_adjtimex
,
sys_adjtimex
,
compat_sys_adjtimex_wrapper
)
SYSCALL
(
sys_mprotect
,
sys_mprotect
,
sys32_mprotect_wrapper
)
/
*
125
*/
SYSCALL
(
sys_mprotect
,
sys_mprotect
,
compat_sys_mprotect
)
/
*
125
*/
SYSCALL
(
sys_sigprocmask
,
sys_sigprocmask
,
compat_sys_sigprocmask
)
NI_SYSCALL
/
*
old
"create module"
*/
SYSCALL
(
sys_init_module
,
sys_init_module
,
sys_init_module_wrapper
)
SYSCALL
(
sys_delete_module
,
sys_delete_module
,
sys_delete_module_wrapper
)
SYSCALL
(
sys_init_module
,
sys_init_module
,
compat_sys_init_module
)
SYSCALL
(
sys_delete_module
,
sys_delete_module
,
compat_sys_delete_module
)
NI_SYSCALL
/
*
130
:
old
get_kernel_syms
*/
SYSCALL
(
sys_quotactl
,
sys_quotactl
,
sys32_quotactl_wrapper
)
SYSCALL
(
sys_getpgid
,
sys_getpgid
,
sys32_getpgid_wrapper
)
SYSCALL
(
sys_fchdir
,
sys_fchdir
,
sys32_fchdir_wrappe
r
)
SYSCALL
(
sys_bdflush
,
sys_bdflush
,
sys32_bdflush_wrapper
)
SYSCALL
(
sys_sysfs
,
sys_sysfs
,
sys32_sysfs_wrapper
)
/
*
135
*/
SYSCALL
(
sys_personality
,
sys_s390_personality
,
sys32_personality_wrapper
)
SYSCALL
(
sys_quotactl
,
sys_quotactl
,
compat_sys_quotactl
)
SYSCALL
(
sys_getpgid
,
sys_getpgid
,
compat_sys_getpgid
)
SYSCALL
(
sys_fchdir
,
sys_fchdir
,
compat_sys_fchdi
r
)
SYSCALL
(
sys_bdflush
,
sys_bdflush
,
compat_sys_bdflush
)
SYSCALL
(
sys_sysfs
,
sys_sysfs
,
compat_sys_sysfs
)
/
*
135
*/
SYSCALL
(
sys_personality
,
sys_s390_personality
,
compat_sys_s390_personality
)
NI_SYSCALL
/
*
for
afs_syscall
*/
SYSCALL
(
sys_setfsuid16
,
sys_ni_syscall
,
compat_sys_s390_setfsuid16
)
/
*
old
setfsuid16
syscall
*/
SYSCALL
(
sys_setfsgid16
,
sys_ni_syscall
,
compat_sys_s390_setfsgid16
)
/
*
old
setfsgid16
syscall
*/
SYSCALL
(
sys_llseek
,
sys_llseek
,
sys32_llseek_wrapper
)
/
*
140
*/
SYSCALL
(
sys_llseek
,
sys_llseek
,
compat_sys_llseek
)
/
*
140
*/
SYSCALL
(
sys_getdents
,
sys_getdents
,
sys32_getdents_wrapper
)
SYSCALL
(
sys_select
,
sys_select
,
compat_sys_select_wrapper
)
SYSCALL
(
sys_flock
,
sys_flock
,
sys32_flock_wrapper
)
...
...
This diff is collapsed.
Click to expand it.
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录
新手
引导
客服
返回
顶部