Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Aug 2013 11:42:44 -0700
From:      Neel Natu <neelnatu@gmail.com>
To:        Chris Torek <chris.torek@gmail.com>
Cc:        alc@freebsd.org, freebsd-current <freebsd-current@freebsd.org>, Neel Natu <neel@freebsd.org>
Subject:   Re: expanding past 1 TB on amd64
Message-ID:  <CAFgRE9G6yHJV4Pk0WpzEHJHLz2HBQ0Hd3968x94ZtmA_hEimiw@mail.gmail.com>
In-Reply-To: <CAPx1GvdSmxnXhF3xvhWLscF2H7Vsns6GL7Ve=w_c7iCeAcKPhA@mail.gmail.com>
References:  <201306190832.r5J8WZFE082135@elf.torek.net> <CAJUyCcOxJt5DpZmnmzaV%2B57auntFA37maoic8Wa4_KUZsfoZ-g@mail.gmail.com> <CAPx1GvdSmxnXhF3xvhWLscF2H7Vsns6GL7Ve=w_c7iCeAcKPhA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi Chris, Alan:

On Sun, Jul 21, 2013 at 1:19 AM, Chris Torek <chris.torek@gmail.com> wrote:

> (Apologies for delay in reply, family issues)
>
> I'd be fine with 4 TB instead of 16; and, at this point, with the latest
> patches, it's easily tuned.  The auto-sizing of the direct map is not
> affected by sparse space as it keys off Maxmem, which is not actually
> physical size, but rather "one past last valid physical page".
>

Here is the patch that I intend to commit:
http://people.freebsd.org/~neel/patches/amd64_pmap_4TB.patch

This patch bumps up the direct map to 4TB and the KVA to 2TB.

It is identical to the patch you posted on hackers except for changing the
limits:
http://lists.freebsd.org/pipermail/freebsd-hackers/2013-July/043139.html

Tested inside a bhyve virtual machine with a *very* sparse memory layout
with a memory segment that cuddles up with the 4TB limit.

best
Neel


>
> The direct map limit might not need to be "twice kernel virtual size" but
> on Intel memory-controller systems needs to be "greater than KVM size" du=
e
> to moving DRAM up past the PCI hole.  Unless the restriction that the
> direct-map area be a power of two size is removed, that winds up meaning
> "twice".  (Removing the restriction seems easy enough=97instead of "pa |
> highbits" to obtain VA and "va &~ highbits" to obtain PA, just use "phys =
+
> offset" and "virt - offset".  I didn't see a reason to bother with the
> effort, though.)
>
> Chris
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFgRE9G6yHJV4Pk0WpzEHJHLz2HBQ0Hd3968x94ZtmA_hEimiw>