Re: 2.3.32: CONFIG_BIGMEM does not compile on x86

Linus Torvalds (torvalds@transmeta.com)
Sun, 17 Oct 1999 16:06:47 -0700 (PDT)


On Sun, 17 Oct 1999, Andrea Arcangeli wrote:
>
> BTW, I have no idea what pfn means (p is page, n is number, f is _not_
> fault).

"page frame number". It's commonly used in the litterature, and probably
predates UNIX. Linux hasn't been using the concept much, because so far
we've pretty much just used the kernel virtual address for most things.
But now that that tends to overflow...

I prefer taking a "long long" and shifting it to a simple "long" pfn,
simply because gcc is so horribly bad at dealing with "long long" (not
entirely gcc's fault - it's hard to do a good job with two-register
entities when the machine only has 6 usable registers for many things -
but gcc does generate even worse code than it really should).

That's what is going to happen to "page->offset" too - instead of
extending the field to 64 bits and see gcc get a nervous breakdown (not to
mention waste memory), the thing will just be a shifted value, giving a
better dynamic range without the "long long" downsides.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/