Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
f268fe73
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
f268fe73
编写于
2月 13, 2009
作者:
I
Ingo Molnar
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'x86/mm' into x86/core
上级
a56cdcb6
0464ac9e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
5 deletion
+16
-5
arch/x86/mm/fault.c
arch/x86/mm/fault.c
+16
-5
未找到文件。
arch/x86/mm/fault.c
浏览文件 @
f268fe73
...
...
@@ -782,6 +782,15 @@ static inline int access_error(unsigned long error_code, int write,
return
0
;
}
static
int
fault_in_kernel_space
(
unsigned
long
address
)
{
#ifdef CONFIG_X86_32
return
address
>=
TASK_SIZE
;
#else
/* !CONFIG_X86_32 */
return
address
>=
TASK_SIZE64
;
#endif
/* CONFIG_X86_32 */
}
/*
* This routine handles page faults. It determines the address,
* and the problem, and then passes it off to one of the appropriate
...
...
@@ -822,11 +831,7 @@ void __kprobes do_page_fault(struct pt_regs *regs, unsigned long error_code)
* (error_code & 4) == 0, and that the fault was not a
* protection error (error_code & 9) == 0.
*/
#ifdef CONFIG_X86_32
if
(
unlikely
(
address
>=
TASK_SIZE
))
{
#else
if
(
unlikely
(
address
>=
TASK_SIZE64
))
{
#endif
if
(
unlikely
(
fault_in_kernel_space
(
address
)))
{
if
(
!
(
error_code
&
(
PF_RSVD
|
PF_USER
|
PF_PROT
))
&&
vmalloc_fault
(
address
)
>=
0
)
return
;
...
...
@@ -898,6 +903,12 @@ void __kprobes do_page_fault(struct pt_regs *regs, unsigned long error_code)
return
;
}
down_read
(
&
mm
->
mmap_sem
);
}
else
{
/*
* The above down_read_trylock() might have succeeded in which
* case we'll have missed the might_sleep() from down_read().
*/
might_sleep
();
}
vma
=
find_vma
(
mm
,
address
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录