* CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
@ 2007-06-18 19:45 Jimi Xenidis
2007-06-18 21:14 ` Arnd Bergmann
0 siblings, 1 reply; 9+ messages in thread
From: Jimi Xenidis @ 2007-06-18 19:45 UTC (permalink / raw)
To: linuxppc-dev list
The following change set:
http://git.kernel.org/?p=linux/kernel/git/paulus/
powerpc.git;a=commit;h=261efc3f178c8c5b55d76208aee1f39ce247f723
setting CONFIG_PS3_USE_LPAR_ADDR (which is the default for PS3)
changes increases MAX_PHYSADDR_BITS from 44 to 47 which makes the
array 8 time bigger and takes way longer for sparse_init() to run on
simulator.
Is this really the right approach?
Cell is actually 42 so could not the special address space be 43 or 44?
-JX
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 19:45 CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time Jimi Xenidis
@ 2007-06-18 21:14 ` Arnd Bergmann
2007-06-18 21:27 ` Jimi Xenidis
0 siblings, 1 reply; 9+ messages in thread
From: Arnd Bergmann @ 2007-06-18 21:14 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Jimi Xenidis
On Monday 18 June 2007, Jimi Xenidis wrote:
>=20
> The following change set:
> =A0 =A0http://git.kernel.org/?p=3Dlinux/kernel/git/paulus/=20
> powerpc.git;a=3Dcommit;h=3D261efc3f178c8c5b55d76208aee1f39ce247f723
>=20
> setting CONFIG_PS3_USE_LPAR_ADDR (which is the default for PS3) =A0
> changes increases MAX_PHYSADDR_BITS =A0from 44 to 47 which makes the =A0
> array 8 time bigger and takes way longer for sparse_init() to run on =A0
> simulator.
>=20
> Is this really the right approach?
> Cell is actually 42 so could not the special address space be 43 or 44?
Unfortunately, the hypervisor chooses the addresses where things get
mapped, and since they are guest-real, there is no hard limit where
the hypervisor puts them, like the 42 bit limit on bare metal.
I guess this will improve if we get virt_mem_map support on powerpc,
but I'm not sure if that's currently being worked on.
Arnd <><
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 21:14 ` Arnd Bergmann
@ 2007-06-18 21:27 ` Jimi Xenidis
2007-06-18 23:12 ` Geoff Levand
0 siblings, 1 reply; 9+ messages in thread
From: Jimi Xenidis @ 2007-06-18 21:27 UTC (permalink / raw)
To: Arnd Bergmann; +Cc: linuxppc-dev
On Jun 18, 2007, at 5:14 PM, Arnd Bergmann wrote:
> On Monday 18 June 2007, Jimi Xenidis wrote:
>>
>> The following change set:
>> http://git.kernel.org/?p=linux/kernel/git/paulus/
>> powerpc.git;a=commit;h=261efc3f178c8c5b55d76208aee1f39ce247f723
>>
>> setting CONFIG_PS3_USE_LPAR_ADDR (which is the default for PS3)
>> changes increases MAX_PHYSADDR_BITS from 44 to 47 which makes the
>> array 8 time bigger and takes way longer for sparse_init() to run on
>> simulator.
>>
>> Is this really the right approach?
>> Cell is actually 42 so could not the special address space be 43
>> or 44?
>
> Unfortunately, the hypervisor chooses the addresses where things get
> mapped, and since they are guest-real, there is no hard limit where
> the hypervisor puts them, like the 42 bit limit on bare metal.
>
> I guess this will improve if we get virt_mem_map support on powerpc,
> but I'm not sure if that's currently being worked on.
I feel a little nit-picky worrying about slowing down boot, I'm sure
it negligible on HW, and complaining about 2K vs 16K memsection. But
it is important to point out that this effects all PPC64 targets if a
distro decides to include the PS3 config in their PPC64 image.
-JX
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 21:27 ` Jimi Xenidis
@ 2007-06-18 23:12 ` Geoff Levand
2007-06-18 23:53 ` Arnd Bergmann
2007-06-19 0:13 ` Jimi Xenidis
0 siblings, 2 replies; 9+ messages in thread
From: Geoff Levand @ 2007-06-18 23:12 UTC (permalink / raw)
To: Jimi Xenidis; +Cc: linuxppc-dev, Arnd Bergmann
Hi Jimi.
Jimi Xenidis wrote:
> On Jun 18, 2007, at 5:14 PM, Arnd Bergmann wrote:
>
>> On Monday 18 June 2007, Jimi Xenidis wrote:
>>>
>>> The following change set:
>>> http://git.kernel.org/?p=linux/kernel/git/paulus/
>>> powerpc.git;a=commit;h=261efc3f178c8c5b55d76208aee1f39ce247f723
>>>
>>> setting CONFIG_PS3_USE_LPAR_ADDR (which is the default for PS3)
>>> changes increases MAX_PHYSADDR_BITS from 44 to 47 which makes the
>>> array 8 time bigger and takes way longer for sparse_init() to run on
>>> simulator.
>>>
>>> Is this really the right approach?
>>> Cell is actually 42 so could not the special address space be 43
>>> or 44?
>>
>> Unfortunately, the hypervisor chooses the addresses where things get
>> mapped, and since they are guest-real, there is no hard limit where
>> the hypervisor puts them, like the 42 bit limit on bare metal.
>>
>> I guess this will improve if we get virt_mem_map support on powerpc,
>> but I'm not sure if that's currently being worked on.
>
> I feel a little nit-picky worrying about slowing down boot, I'm sure
> it negligible on HW, and complaining about 2K vs 16K memsection. But
> it is important to point out that this effects all PPC64 targets if a
> distro decides to include the PS3 config in their PPC64 image.
When CONFIG_PS3_USE_LPAR_ADDR=n a translation in the platform code
sets up the page table to map the region to low addresses (continuous
with the boot mem region), but that translation is not compatible
with the mapping scheme used by the spu regions, which use sparse mem.
Arnd mention that he planed to re-do the spu region management, and
I think with that we can use CONFIG_PS3_USE_LPAR_ADDR=n and the spufs
at the same time. Arnd, what is the status?
-Geoff
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 23:12 ` Geoff Levand
@ 2007-06-18 23:53 ` Arnd Bergmann
2007-06-18 23:55 ` Geoff Levand
2007-06-19 0:13 ` Jimi Xenidis
1 sibling, 1 reply; 9+ messages in thread
From: Arnd Bergmann @ 2007-06-18 23:53 UTC (permalink / raw)
To: Geoff Levand; +Cc: linuxppc-dev, Jimi Xenidis
On Tuesday 19 June 2007, Geoff Levand wrote:
> Arnd mention that he planed to re-do the spu region management, and
> I think with that we can use CONFIG_PS3_USE_LPAR_ADDR=3Dn and the spufs
> at the same time. =C2=A0Arnd, what is the status?
BenH already changed the spufs code to use the nopfn method instead of
nopage, so we no longer depend on sparsemem. Does that take care
of the problem?
Arnd <><
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 23:53 ` Arnd Bergmann
@ 2007-06-18 23:55 ` Geoff Levand
0 siblings, 0 replies; 9+ messages in thread
From: Geoff Levand @ 2007-06-18 23:55 UTC (permalink / raw)
To: Arnd Bergmann; +Cc: linuxppc-dev, Jimi Xenidis
Arnd Bergmann wrote:
> On Tuesday 19 June 2007, Geoff Levand wrote:
>> Arnd mention that he planed to re-do the spu region management, and
>> I think with that we can use CONFIG_PS3_USE_LPAR_ADDR=n and the spufs
>> at the same time. Arnd, what is the status?
>
> BenH already changed the spufs code to use the nopfn method instead of
> nopage, so we no longer depend on sparsemem. Does that take care
> of the problem?
I think that there is a good chance it will, but I'll need to look at
it, as it was some time ago I did that work.
-Geoff
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-18 23:12 ` Geoff Levand
2007-06-18 23:53 ` Arnd Bergmann
@ 2007-06-19 0:13 ` Jimi Xenidis
2007-06-19 1:23 ` Benjamin Herrenschmidt
1 sibling, 1 reply; 9+ messages in thread
From: Jimi Xenidis @ 2007-06-19 0:13 UTC (permalink / raw)
To: Geoff Levand; +Cc: linuxppc-dev, Arnd Bergmann
On Jun 18, 2007, at 7:12 PM, Geoff Levand wrote:
> Hi Jimi.
>
> Jimi Xenidis wrote:
>> On Jun 18, 2007, at 5:14 PM, Arnd Bergmann wrote:
>>
>>> On Monday 18 June 2007, Jimi Xenidis wrote:
>>>>
>>>> The following change set:
>>>> http://git.kernel.org/?p=linux/kernel/git/paulus/
>>>> powerpc.git;a=commit;h=261efc3f178c8c5b55d76208aee1f39ce247f723
>>>>
>>>> setting CONFIG_PS3_USE_LPAR_ADDR (which is the default for PS3)
>>>> changes increases MAX_PHYSADDR_BITS from 44 to 47 which makes the
>>>> array 8 time bigger and takes way longer for sparse_init() to
>>>> run on
>>>> simulator.
>>>>
>>>> Is this really the right approach?
>>>> Cell is actually 42 so could not the special address space be 43
>>>> or 44?
>>>
>>> Unfortunately, the hypervisor chooses the addresses where things get
>>> mapped, and since they are guest-real, there is no hard limit where
>>> the hypervisor puts them, like the 42 bit limit on bare metal.
>>>
>>> I guess this will improve if we get virt_mem_map support on powerpc,
>>> but I'm not sure if that's currently being worked on.
>>
>> I feel a little nit-picky worrying about slowing down boot, I'm sure
>> it negligible on HW, and complaining about 2K vs 16K memsection. But
>> it is important to point out that this effects all PPC64 targets if a
>> distro decides to include the PS3 config in their PPC64 image.
>
>
> When CONFIG_PS3_USE_LPAR_ADDR=n a translation in the platform code
> sets up the page table to map the region to low addresses (continuous
> with the boot mem region), but that translation is not compatible
> with the mapping scheme used by the spu regions, which use sparse mem.
hmm.. sparse mem is for the linear map.
Why is are SPE areas in the linear map?
>
> Arnd mention that he planed to re-do the spu region management, and
> I think with that we can use CONFIG_PS3_USE_LPAR_ADDR=n and the spufs
> at the same time. Arnd, what is the status?
>
> -Geoff
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-19 0:13 ` Jimi Xenidis
@ 2007-06-19 1:23 ` Benjamin Herrenschmidt
2007-06-23 18:39 ` Geoff Levand
0 siblings, 1 reply; 9+ messages in thread
From: Benjamin Herrenschmidt @ 2007-06-19 1:23 UTC (permalink / raw)
To: Jimi Xenidis; +Cc: linuxppc-dev, Arnd Bergmann
On Mon, 2007-06-18 at 20:13 -0400, Jimi Xenidis wrote:
> > When CONFIG_PS3_USE_LPAR_ADDR=n a translation in the platform code
> > sets up the page table to map the region to low addresses
> (continuous
> > with the boot mem region), but that translation is not compatible
> > with the mapping scheme used by the spu regions, which use sparse
> mem.
>
> hmm.. sparse mem is for the linear map.
SPE local store used to have special struct pages for it in order to
return things from nopage(). It was dodgy and racy. I killed that
recently, it was causing more problem than it was solving. So it should
be fine now. I'm now using nopfn() and inserting the PTEs directly from
the nopfn() hook.
So Geoff, you can remove the option for now or make it n by default.
Ben.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time
2007-06-19 1:23 ` Benjamin Herrenschmidt
@ 2007-06-23 18:39 ` Geoff Levand
0 siblings, 0 replies; 9+ messages in thread
From: Geoff Levand @ 2007-06-23 18:39 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-dev, Arnd Bergmann, Jimi Xenidis
Benjamin Herrenschmidt wrote:
> On Mon, 2007-06-18 at 20:13 -0400, Jimi Xenidis wrote:
>> > When CONFIG_PS3_USE_LPAR_ADDR=n a translation in the platform code
>> > sets up the page table to map the region to low addresses
>> (continuous
>> > with the boot mem region), but that translation is not compatible
>> > with the mapping scheme used by the spu regions, which use sparse
>> mem.
>>
>> hmm.. sparse mem is for the linear map.
>
> SPE local store used to have special struct pages for it in order to
> return things from nopage(). It was dodgy and racy. I killed that
> recently, it was causing more problem than it was solving. So it should
> be fine now. I'm now using nopfn() and inserting the PTEs directly from
> the nopfn() hook.
>
> So Geoff, you can remove the option for now or make it n by default.
OK, I'll look into it after I return from OLS.
-Geoff
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2007-06-23 18:39 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-18 19:45 CONFIG_PS3_USE_LPAR_ADDR dramically increases boot time Jimi Xenidis
2007-06-18 21:14 ` Arnd Bergmann
2007-06-18 21:27 ` Jimi Xenidis
2007-06-18 23:12 ` Geoff Levand
2007-06-18 23:53 ` Arnd Bergmann
2007-06-18 23:55 ` Geoff Levand
2007-06-19 0:13 ` Jimi Xenidis
2007-06-19 1:23 ` Benjamin Herrenschmidt
2007-06-23 18:39 ` Geoff Levand
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).