public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* pte_addr_t size reduction for 64 GB case?
@ 2004-05-19  4:42 Albert Cahalan
  2004-05-19  7:44 ` Andrew Morton
  2004-05-19 11:18 ` Rik van Riel
  0 siblings, 2 replies; 4+ messages in thread
From: Albert Cahalan @ 2004-05-19  4:42 UTC (permalink / raw)
  To: linux-kernel mailing list; +Cc: riel

When handling 64 GB on i386, pte_addr_t really only
needs 33 bits to find the PTE. It sure doesn't need
the full 64 bits it is using.

How about cheating a bit? If the pte_addr_t only had
the high 32 bits of the 36-bit pointer, it would point
to a pair of the 8-byte PTEs in a 16-byte chunk of RAM.
Then simply examine the PTEs to see which one is the
correct one.



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

* Re: pte_addr_t size reduction for 64 GB case?
  2004-05-19  4:42 pte_addr_t size reduction for 64 GB case? Albert Cahalan
@ 2004-05-19  7:44 ` Andrew Morton
  2004-05-19  8:08   ` William Lee Irwin III
  2004-05-19 11:18 ` Rik van Riel
  1 sibling, 1 reply; 4+ messages in thread
From: Andrew Morton @ 2004-05-19  7:44 UTC (permalink / raw)
  To: Albert Cahalan; +Cc: linux-kernel, riel

Albert Cahalan <albert@users.sourceforge.net> wrote:
>
> When handling 64 GB on i386, pte_addr_t really only
> needs 33 bits to find the PTE. It sure doesn't need
> the full 64 bits it is using.

yup.

> How about cheating a bit? If the pte_addr_t only had
> the high 32 bits of the 36-bit pointer, it would point
> to a pair of the 8-byte PTEs in a 16-byte chunk of RAM.
> Then simply examine the PTEs to see which one is the
> correct one.

They might both map the same page.  It could overflow into page->flags.

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

* Re: pte_addr_t size reduction for 64 GB case?
  2004-05-19  7:44 ` Andrew Morton
@ 2004-05-19  8:08   ` William Lee Irwin III
  0 siblings, 0 replies; 4+ messages in thread
From: William Lee Irwin III @ 2004-05-19  8:08 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Albert Cahalan, linux-kernel, riel

Albert Cahalan <albert@users.sourceforge.net> wrote:
>> When handling 64 GB on i386, pte_addr_t really only
>> needs 33 bits to find the PTE. It sure doesn't need
>> the full 64 bits it is using.

On Wed, May 19, 2004 at 12:44:24AM -0700, Andrew Morton wrote:
> yup.

Albert Cahalan <albert@users.sourceforge.net> wrote:
>> How about cheating a bit? If the pte_addr_t only had
>> the high 32 bits of the 36-bit pointer, it would point
>> to a pair of the 8-byte PTEs in a 16-byte chunk of RAM.
>> Then simply examine the PTEs to see which one is the
>> correct one.

On Wed, May 19, 2004 at 12:44:24AM -0700, Andrew Morton wrote:
> They might both map the same page.  It could overflow into page->flags.

An overflow area for the 33rd bits in pte_chains is another idea. A
CONFIG_HIGHMEM32G is another. But Hugh's and/or Andrea's code sounds
nicer than either of those. It doesn't get smaller than 0.

-- wli

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

* Re: pte_addr_t size reduction for 64 GB case?
  2004-05-19  4:42 pte_addr_t size reduction for 64 GB case? Albert Cahalan
  2004-05-19  7:44 ` Andrew Morton
@ 2004-05-19 11:18 ` Rik van Riel
  1 sibling, 0 replies; 4+ messages in thread
From: Rik van Riel @ 2004-05-19 11:18 UTC (permalink / raw)
  To: Albert Cahalan; +Cc: linux-kernel mailing list

On 19 May 2004, Albert Cahalan wrote:

> When handling 64 GB on i386, pte_addr_t really only
> needs 33 bits to find the PTE. It sure doesn't need
> the full 64 bits it is using.

Alternatively, limit the amount of memory supported to
32GB ;)

With only 1GB of lowmem you can't support much more
than that anyway.  The RHEL3 -smp kernel limits itself
to 32GB in order to have a smaller pte_addr_t.

For larger systems there's the -hugemem kernel, which
has Ingo's 4:4 split enabled.

-- 
"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it." - Brian W. Kernighan


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

end of thread, other threads:[~2004-05-19 11:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-19  4:42 pte_addr_t size reduction for 64 GB case? Albert Cahalan
2004-05-19  7:44 ` Andrew Morton
2004-05-19  8:08   ` William Lee Irwin III
2004-05-19 11:18 ` Rik van Riel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox