Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
3835f6cb
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看板
提交
3835f6cb
编写于
9月 17, 2008
作者:
N
Nicolas Pitre
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[ARM] mem_init(): make highmem pages available for use
Signed-off-by:
N
Nicolas Pitre
<
nico@marvell.com
>
上级
d73cd428
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
18 addition
and
3 deletion
+18
-3
arch/arm/mm/init.c
arch/arm/mm/init.c
+18
-3
未找到文件。
arch/arm/mm/init.c
浏览文件 @
3835f6cb
...
...
@@ -15,6 +15,7 @@
#include <linux/mman.h>
#include <linux/nodemask.h>
#include <linux/initrd.h>
#include <linux/highmem.h>
#include <asm/mach-types.h>
#include <asm/sections.h>
...
...
@@ -485,7 +486,7 @@ void __init mem_init(void)
int
i
,
node
;
#ifndef CONFIG_DISCONTIGMEM
max_mapnr
=
virt_to_page
(
high_memory
)
-
mem_map
;
max_mapnr
=
pfn_to_page
(
max_pfn
+
PHYS_PFN_OFFSET
)
-
mem_map
;
#endif
/* this will put all unused low memory onto the freelists */
...
...
@@ -504,6 +505,19 @@ void __init mem_init(void)
__phys_to_pfn
(
__pa
(
swapper_pg_dir
)),
NULL
);
#endif
#ifdef CONFIG_HIGHMEM
/* set highmem page free */
for_each_online_node
(
node
)
{
for_each_nodebank
(
i
,
&
meminfo
,
node
)
{
unsigned
long
start
=
bank_pfn_start
(
&
meminfo
.
bank
[
i
]);
unsigned
long
end
=
bank_pfn_end
(
&
meminfo
.
bank
[
i
]);
if
(
start
>=
max_low_pfn
+
PHYS_PFN_OFFSET
)
totalhigh_pages
+=
free_area
(
start
,
end
,
NULL
);
}
}
totalram_pages
+=
totalhigh_pages
;
#endif
/*
* Since our memory may not be contiguous, calculate the
* real number of pages we have in this system
...
...
@@ -521,9 +535,10 @@ void __init mem_init(void)
initsize
=
__init_end
-
__init_begin
;
printk
(
KERN_NOTICE
"Memory: %luKB available (%dK code, "
"%dK data, %dK init)
\n
"
,
"%dK data, %dK init
, %luK highmem
)
\n
"
,
(
unsigned
long
)
nr_free_pages
()
<<
(
PAGE_SHIFT
-
10
),
codesize
>>
10
,
datasize
>>
10
,
initsize
>>
10
);
codesize
>>
10
,
datasize
>>
10
,
initsize
>>
10
,
(
unsigned
long
)
(
totalhigh_pages
<<
(
PAGE_SHIFT
-
10
)));
if
(
PAGE_SIZE
>=
16384
&&
num_physpages
<=
128
)
{
extern
int
sysctl_overcommit_memory
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录