提交 b2665f92 编写于 作者: M Matt Porter 提交者: Linus Torvalds

[PATCH] ppc32: fix CONFIG_TASK_SIZE handling on 44x

This patch fixed CONFIG_TASK_SIZE handling on 44x.  Currently head_44x.S
hardcodes 0x80000000, which breaks if user chooses to change TASK_SIZE
(e.g.  for 3G user-space).  Tested on Ocotea in 3G/1G configuration.
Signed-off-by: NEugene Surovegin <ebs@ebshome.net>
Signed-off-by: NMatt Porter <mporter@kernel.crashing.org>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 7f8cd80f
...@@ -330,8 +330,9 @@ interrupt_base: ...@@ -330,8 +330,9 @@ interrupt_base:
/* If we are faulting a kernel address, we have to use the /* If we are faulting a kernel address, we have to use the
* kernel page tables. * kernel page tables.
*/ */
andis. r11, r10, 0x8000 lis r11, TASK_SIZE@h
beq 3f cmplw r10, r11
blt+ 3f
lis r11, swapper_pg_dir@h lis r11, swapper_pg_dir@h
ori r11, r11, swapper_pg_dir@l ori r11, r11, swapper_pg_dir@l
...@@ -464,8 +465,9 @@ interrupt_base: ...@@ -464,8 +465,9 @@ interrupt_base:
/* If we are faulting a kernel address, we have to use the /* If we are faulting a kernel address, we have to use the
* kernel page tables. * kernel page tables.
*/ */
andis. r11, r10, 0x8000 lis r11, TASK_SIZE@h
beq 3f cmplw r10, r11
blt+ 3f
lis r11, swapper_pg_dir@h lis r11, swapper_pg_dir@h
ori r11, r11, swapper_pg_dir@l ori r11, r11, swapper_pg_dir@l
...@@ -533,8 +535,9 @@ interrupt_base: ...@@ -533,8 +535,9 @@ interrupt_base:
/* If we are faulting a kernel address, we have to use the /* If we are faulting a kernel address, we have to use the
* kernel page tables. * kernel page tables.
*/ */
andis. r11, r10, 0x8000 lis r11, TASK_SIZE@h
beq 3f cmplw r10, r11
blt+ 3f
lis r11, swapper_pg_dir@h lis r11, swapper_pg_dir@h
ori r11, r11, swapper_pg_dir@l ori r11, r11, swapper_pg_dir@l
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册