linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* 1 GB lowmem
@ 2008-05-21 18:00 Rune Torgersen
  2008-05-21 20:00 ` Rune Torgersen
  2008-05-21 21:24 ` Benjamin Herrenschmidt
  0 siblings, 2 replies; 9+ messages in thread
From: Rune Torgersen @ 2008-05-21 18:00 UTC (permalink / raw)
  To: linuxppc-dev

Hi

I am trying to enable 1 GB of lowmem on a Freescale 8280.
In arch/ppc this was easilly done by:
CONFIG_ADVANCED_OPTIONS=3Dy
CONFIG_HIGHMEM_START=3D0xfe000000
CONFIG_LOWMEM_SIZE_BOOL=3Dy
CONFIG_LOWMEM_SIZE=3D0x40000000
CONFIG_KERNEL_START_BOOL=3Dy
CONFIG_KERNEL_START=3D0xa0000000

This does not work in arch/powerpc. CPU hangs as soon as init starts.
Any ideas what to look at, what to change?

The reason I want to do this is because I cannot get highmem support to
work when using CONFIG_PREEMPT_RT.
(hitting a bug_on in kmap_atomic)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: 1 GB lowmem
  2008-05-21 18:00 1 GB lowmem Rune Torgersen
@ 2008-05-21 20:00 ` Rune Torgersen
  2008-05-21 20:55   ` Rune Torgersen
  2008-05-21 21:24 ` Benjamin Herrenschmidt
  1 sibling, 1 reply; 9+ messages in thread
From: Rune Torgersen @ 2008-05-21 20:00 UTC (permalink / raw)
  To: Rune Torgersen, linuxppc-dev

linuxppc-dev-bounces+runet=3Dinnovsys.com@ozlabs.org wrote:
> Hi
>=20
> I am trying to enable 1 GB of lowmem on a Freescale 8280.
> In arch/ppc this was easilly done by:
> CONFIG_ADVANCED_OPTIONS=3Dy
> CONFIG_HIGHMEM_START=3D0xfe000000
> CONFIG_LOWMEM_SIZE_BOOL=3Dy
> CONFIG_LOWMEM_SIZE=3D0x40000000
> CONFIG_KERNEL_START_BOOL=3Dy
> CONFIG_KERNEL_START=3D0xa0000000
>=20
> This does not work in arch/powerpc. CPU hangs as soon as init starts.
> Any ideas what to look at, what to change?
>=20
> The reason I want to do this is because I cannot get highmem
> support to
> work when using CONFIG_PREEMPT_RT.
> (hitting a bug_on in kmap_atomic)

Scratch that. 1 GB lowmem works with vanilla 2.6.25.4, but not at all
with 2.6.25.4-rt[13]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: 1 GB lowmem
  2008-05-21 20:00 ` Rune Torgersen
@ 2008-05-21 20:55   ` Rune Torgersen
  2008-05-21 21:12     ` Kumar Gala
  0 siblings, 1 reply; 9+ messages in thread
From: Rune Torgersen @ 2008-05-21 20:55 UTC (permalink / raw)
  To: linuxppc-dev

Rune Torgersen wrote:
> linuxppc-dev-bounces+runet=3Dinnovsys.com@ozlabs.org wrote:
>> Hi
>>=20
>> I am trying to enable 1 GB of lowmem on a Freescale 8280.
>> In arch/ppc this was easilly done by:
>> CONFIG_ADVANCED_OPTIONS=3Dy
>> CONFIG_HIGHMEM_START=3D0xfe000000
>> CONFIG_LOWMEM_SIZE_BOOL=3Dy
>> CONFIG_LOWMEM_SIZE=3D0x40000000
>> CONFIG_KERNEL_START_BOOL=3Dy
>> CONFIG_KERNEL_START=3D0xa0000000
>>=20
>> This does not work in arch/powerpc. CPU hangs as soon as init starts.
>> Any ideas what to look at, what to change?
>>=20
>> The reason I want to do this is because I cannot get highmem support
>> to work when using CONFIG_PREEMPT_RT.
>> (hitting a bug_on in kmap_atomic)
>=20
> Scratch that. 1 GB lowmem works with vanilla 2.6.25.4, but
> not at all with 2.6.25.4-rt[13]

Argh... Found it. Had to set CONFIG_TASK_SIZE to 0x80000000. Now it
works in both vaniulla an d RT kernel.
Highmem still doesn't work.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: 1 GB lowmem
  2008-05-21 20:55   ` Rune Torgersen
@ 2008-05-21 21:12     ` Kumar Gala
  2008-05-21 21:24       ` Rune Torgersen
  0 siblings, 1 reply; 9+ messages in thread
From: Kumar Gala @ 2008-05-21 21:12 UTC (permalink / raw)
  To: Rune Torgersen; +Cc: linuxppc-dev


On May 21, 2008, at 3:55 PM, Rune Torgersen wrote:

> Rune Torgersen wrote:
>> linuxppc-dev-bounces+runet=innovsys.com@ozlabs.org wrote:
>>> Hi
>>>
>>> I am trying to enable 1 GB of lowmem on a Freescale 8280.
>>> In arch/ppc this was easilly done by:
>>> CONFIG_ADVANCED_OPTIONS=y
>>> CONFIG_HIGHMEM_START=0xfe000000
>>> CONFIG_LOWMEM_SIZE_BOOL=y
>>> CONFIG_LOWMEM_SIZE=0x40000000
>>> CONFIG_KERNEL_START_BOOL=y
>>> CONFIG_KERNEL_START=0xa0000000
>>>
>>> This does not work in arch/powerpc. CPU hangs as soon as init  
>>> starts.
>>> Any ideas what to look at, what to change?
>>>
>>> The reason I want to do this is because I cannot get highmem support
>>> to work when using CONFIG_PREEMPT_RT.
>>> (hitting a bug_on in kmap_atomic)
>>
>> Scratch that. 1 GB lowmem works with vanilla 2.6.25.4, but
>> not at all with 2.6.25.4-rt[13]
>
> Argh... Found it. Had to set CONFIG_TASK_SIZE to 0x80000000. Now it
> works in both vaniulla an d RT kernel.

We should really add some sanity check on CONFIG_TASK_SIZE vs  
KERNEL_START.

- k

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: 1 GB lowmem
  2008-05-21 21:12     ` Kumar Gala
@ 2008-05-21 21:24       ` Rune Torgersen
  2008-05-22  4:13         ` Kumar Gala
  0 siblings, 1 reply; 9+ messages in thread
From: Rune Torgersen @ 2008-05-21 21:24 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev

Kumar Gala wrote:
> On May 21, 2008, at 3:55 PM, Rune Torgersen wrote:
>> Argh... Found it. Had to set CONFIG_TASK_SIZE to 0x80000000. Now it
>> works in both vaniulla an d RT kernel.
>=20
> We should really add some sanity check on CONFIG_TASK_SIZE vs
> KERNEL_START.=20

Something like this?
Wording sould probablyy be a bit different/cleare.

diff --git a/include/asm-powerpc/processor.h
b/include/asm-powerpc/processor.h
index fd98ca9..72e0e3f 100644
--- a/include/asm-powerpc/processor.h
+++ b/include/asm-powerpc/processor.h
@@ -81,6 +81,10 @@ extern struct task_struct *last_task_used_altivec;
 extern struct task_struct *last_task_used_spe;

 #ifdef CONFIG_PPC32
+
+#if CONFIG_TASK_SIZE > CONFIG_KERNEL_START
+#error User TASK_SIZE overlaps with KERNEL_START address
+#endif
 #define TASK_SIZE      (CONFIG_TASK_SIZE)

 /* This decides where the kernel will search for a free chunk of vm

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: 1 GB lowmem
  2008-05-21 18:00 1 GB lowmem Rune Torgersen
  2008-05-21 20:00 ` Rune Torgersen
@ 2008-05-21 21:24 ` Benjamin Herrenschmidt
  1 sibling, 0 replies; 9+ messages in thread
From: Benjamin Herrenschmidt @ 2008-05-21 21:24 UTC (permalink / raw)
  To: Rune Torgersen; +Cc: linuxppc-dev


On Wed, 2008-05-21 at 13:00 -0500, Rune Torgersen wrote:
> Hi
> 
> I am trying to enable 1 GB of lowmem on a Freescale 8280.
> In arch/ppc this was easilly done by:
> CONFIG_ADVANCED_OPTIONS=y
> CONFIG_HIGHMEM_START=0xfe000000
> CONFIG_LOWMEM_SIZE_BOOL=y
> CONFIG_LOWMEM_SIZE=0x40000000
> CONFIG_KERNEL_START_BOOL=y
> CONFIG_KERNEL_START=0xa0000000
> 
> This does not work in arch/powerpc. CPU hangs as soon as init starts.
> Any ideas what to look at, what to change?

You probably need to lower TASK_SIZE too.

> The reason I want to do this is because I cannot get highmem support to
> work when using CONFIG_PREEMPT_RT.
> (hitting a bug_on in kmap_atomic)

We should look into fixing that :-)

Ben.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: 1 GB lowmem
  2008-05-21 21:24       ` Rune Torgersen
@ 2008-05-22  4:13         ` Kumar Gala
  2008-05-22 14:13           ` Rune Torgersen
  2008-05-22 15:17           ` Rune Torgersen
  0 siblings, 2 replies; 9+ messages in thread
From: Kumar Gala @ 2008-05-22  4:13 UTC (permalink / raw)
  To: Rune Torgersen; +Cc: linuxppc-dev


On May 21, 2008, at 4:24 PM, Rune Torgersen wrote:

> Kumar Gala wrote:
>> On May 21, 2008, at 3:55 PM, Rune Torgersen wrote:
>>> Argh... Found it. Had to set CONFIG_TASK_SIZE to 0x80000000. Now it
>>> works in both vaniulla an d RT kernel.
>>
>> We should really add some sanity check on CONFIG_TASK_SIZE vs
>> KERNEL_START.
>
> Something like this?
> Wording sould probablyy be a bit different/cleare.
>
> diff --git a/include/asm-powerpc/processor.h
> b/include/asm-powerpc/processor.h
> index fd98ca9..72e0e3f 100644
> --- a/include/asm-powerpc/processor.h
> +++ b/include/asm-powerpc/processor.h
> @@ -81,6 +81,10 @@ extern struct task_struct *last_task_used_altivec;
> extern struct task_struct *last_task_used_spe;
>
> #ifdef CONFIG_PPC32
> +
> +#if CONFIG_TASK_SIZE > CONFIG_KERNEL_START
> +#error User TASK_SIZE overlaps with KERNEL_START address
> +#endif
> #define TASK_SIZE      (CONFIG_TASK_SIZE)
>
> /* This decides where the kernel will search for a free chunk of vm
>

something like that would be good.  is there really anything PPC32  
specific about it?

- k

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: 1 GB lowmem
  2008-05-22  4:13         ` Kumar Gala
@ 2008-05-22 14:13           ` Rune Torgersen
  2008-05-22 15:17           ` Rune Torgersen
  1 sibling, 0 replies; 9+ messages in thread
From: Rune Torgersen @ 2008-05-22 14:13 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev

Kumar Gala wrote:
> On May 21, 2008, at 4:24 PM, Rune Torgersen wrote:
>=20
>> Kumar Gala wrote:
>>> On May 21, 2008, at 3:55 PM, Rune Torgersen wrote:
>>>> Argh... Found it. Had to set CONFIG_TASK_SIZE to 0x80000000. Now it
>>>> works in both vaniulla an d RT kernel.
>>>=20
>>> We should really add some sanity check on CONFIG_TASK_SIZE vs
>>> KERNEL_START.
>>=20
>> Something like this?
>> Wording sould probablyy be a bit different/cleare.
>>=20
>> diff --git a/include/asm-powerpc/processor.h
>> b/include/asm-powerpc/processor.h
>> index fd98ca9..72e0e3f 100644
>> --- a/include/asm-powerpc/processor.h
>> +++ b/include/asm-powerpc/processor.h
>> @@ -81,6 +81,10 @@ extern struct task_struct *last_task_used_altivec;
>> extern struct task_struct *last_task_used_spe;
>>=20
>> #ifdef CONFIG_PPC32
>> +
>> +#if CONFIG_TASK_SIZE > CONFIG_KERNEL_START
>> +#error User TASK_SIZE overlaps with KERNEL_START address
>> +#endif
>> #define TASK_SIZE      (CONFIG_TASK_SIZE)
>>=20
>> /* This decides where the kernel will search for a free chunk of vm
>>=20
>=20
> something like that would be good.  is there really anything PPC32
> specific about it?=20
>=20
Probably not. Could this be done in the Kconfig file instead?. Don't
know if Kconfig supports doing a comparison.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* RE: 1 GB lowmem
  2008-05-22  4:13         ` Kumar Gala
  2008-05-22 14:13           ` Rune Torgersen
@ 2008-05-22 15:17           ` Rune Torgersen
  1 sibling, 0 replies; 9+ messages in thread
From: Rune Torgersen @ 2008-05-22 15:17 UTC (permalink / raw)
  To: Kumar Gala; +Cc: linuxppc-dev

Kumar Gala wrote:
> something like that would be good.  is there really anything PPC32
> specific about it?=20

Apparently. The Kconfig option is only available for arch/powerpc and
arch/ppc, and the only place in the whole codetree where
CONFIG_TASK_SIZE is used is that particular spot in
asm-powerpc/processor.h, and that again is within CONFIG_PPC32 define,
so it seems only PPC32 is using TASK_SIZE.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2008-05-22 15:16 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-21 18:00 1 GB lowmem Rune Torgersen
2008-05-21 20:00 ` Rune Torgersen
2008-05-21 20:55   ` Rune Torgersen
2008-05-21 21:12     ` Kumar Gala
2008-05-21 21:24       ` Rune Torgersen
2008-05-22  4:13         ` Kumar Gala
2008-05-22 14:13           ` Rune Torgersen
2008-05-22 15:17           ` Rune Torgersen
2008-05-21 21:24 ` Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).