Re: page fault scalability patch final : i386 tested, x86_64 support added

Christoph Lameter
2004-08-28T00:22:29Z

That is still 2^(32+12) = 2^44 = 16TB.

On Sat, 28 Aug 2004, Andi Kleen wrote:

> > Index: linux-2.6.9-rc1/include/linux/sched.h
> > ===================================================================
> > --- linux-2.6.9-rc1.orig/include/linux/sched.h 2004-08-25 10:50:12.534021000 -0700
> > +++ linux-2.6.9-rc1/include/linux/sched.h 2004-08-27 12:14:09.564008624 -0700
> > @@ -197,9 +197,10 @@
> > pgd_t * pgd;
> > atomic_t mm_users; /* How many users with user space? */
> > atomic_t mm_count; /* How many references to "struct mm_struct" (users count as 1) */
> > + atomic_t mm_rss; /* Number of pages used by this mm struct */
>
> atomic_t is normally 32bit, even on a 64bit arch. This will limit the max
> memory size per process to 2^(32+PAGE_SHIFT). I don't think that's a good idea.
>
> On some architectures it used to be 24bit only even, but I think that
> has been fixed.
>
> I think you need atomic64_t
>
> -Andi
>