Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
a2c54d2a
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看板
提交
a2c54d2a
编写于
10月 27, 2010
作者:
R
Russell King
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ARM: memblock: use memblock when initializing memory allocators
Signed-off-by:
N
Russell King
<
rmk+kernel@arm.linux.org.uk
>
上级
7dc50ec7
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
9 deletion
+16
-9
arch/arm/mm/init.c
arch/arm/mm/init.c
+16
-9
未找到文件。
arch/arm/mm/init.c
浏览文件 @
a2c54d2a
...
...
@@ -192,11 +192,11 @@ static void __init arm_bootmem_init(struct meminfo *mi,
}
}
static
void
__init
arm_bootmem_free
(
struct
meminfo
*
mi
,
unsigned
long
min
,
unsigned
long
max_
low
,
unsigned
long
max_
high
)
static
void
__init
arm_bootmem_free
(
unsigned
long
min
,
unsigned
long
max_low
,
unsigned
long
max_high
)
{
unsigned
long
zone_size
[
MAX_NR_ZONES
],
zhole_size
[
MAX_NR_ZONES
];
int
i
;
struct
memblock_region
*
reg
;
/*
* initialise the zones.
...
...
@@ -218,13 +218,20 @@ static void __init arm_bootmem_free(struct meminfo *mi, unsigned long min,
* holes = node_size - sum(bank_sizes)
*/
memcpy
(
zhole_size
,
zone_size
,
sizeof
(
zhole_size
));
for_each_bank
(
i
,
mi
)
{
int
idx
=
0
;
for_each_memblock
(
memory
,
reg
)
{
unsigned
long
start
=
memblock_region_memory_base_pfn
(
reg
);
unsigned
long
end
=
memblock_region_memory_end_pfn
(
reg
);
if
(
start
<
max_low
)
{
unsigned
long
low_end
=
min
(
end
,
max_low
);
zhole_size
[
0
]
-=
low_end
-
start
;
}
#ifdef CONFIG_HIGHMEM
if
(
mi
->
bank
[
i
].
highmem
)
idx
=
ZONE_HIGHMEM
;
if
(
end
>
max_low
)
{
unsigned
long
high_start
=
max
(
start
,
max_low
);
zhole_size
[
ZONE_HIGHMEM
]
-=
end
-
high_start
;
}
#endif
zhole_size
[
idx
]
-=
bank_pfn_size
(
&
mi
->
bank
[
i
]);
}
/*
...
...
@@ -327,7 +334,7 @@ void __init bootmem_init(void)
* the sparse mem_map arrays initialized by sparse_init()
* for memmap_init_zone(), otherwise all PFNs are invalid.
*/
arm_bootmem_free
(
mi
,
mi
n
,
max_low
,
max_high
);
arm_bootmem_free
(
min
,
max_low
,
max_high
);
high_memory
=
__va
((
max_low
<<
PAGE_SHIFT
)
-
1
)
+
1
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录