Port-ia64 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Kernel Exception "Page Not Present"




On Feb 27, 2006, at 5:56 AM, Cherry George Mathew wrote:

    Marcel> VHPT itself (i.e.  region 7).  Put differently region 5 is
    Marcel> where VM managed memory comes from, while region 6 and 7
    Marcel> are used by the machine dependent implementation to
    Marcel> support the MI functionality.

I see some nominal savings ( like throwing out ia64_kptedir[] )
if we just managed everything within RR7. Maybe I don't see something
critically important here.

You want to be able to page out and page in. You can only do that
effectively if the page replacement algorithm isn't bound by the
1-to-1 mapping between VA and PA. Likewise, certain VM submaps
are defined over a preset VM address range. In a 1-to-1 mapping,
you actually reserve the memory itself rather than reserving the
address range. So, while using direct mapped memory *is* efficient
by its own right, you won't have the flexibility you need for
effective memory management and you end up with a solution that
is less efficient overall.

Another datapoint is that on NUMA architectures you want to be
able to replicate read-only data so that it's close to the CPUs.
Replication is easy if there's a fixed VA range that maps to a
PA range that's near to the CPUs in the cell/node. If you want
to replicate the kernel text, you will have different VA->PA
mappings per cell. Consequently, direct mapped memory is not
working out here as well.

So, while FreeBSD has a couple of places where region 7 addressing
is used, it's better in the long term to move away from that.
I have some thoughts about all of this on the FreeBSD wiki:
        http://wikitest.freebsd.org/moin.cgi/ia64_2fBootLoader

    Marcel> The advantage of using SKI is that you can set breakpoints

Do you know if ski implements the VHPT walker at all ?

Yes, it implements the VHPT walker.

    Marcel> I need to dig into the code more before I can be more
    Marcel> helpful, I fear.

Would you like to have access to CVS ? Or shall I just put everything
up for download in a tarball release ?

I prefer CVS access. That way I can easily make patches
for illustrative purposes or look at history to understand
why things are the way they are.

    Marcel> You're in a perfect position right now to switch to 16KB
    Marcel> pages. Just a thought.

Thats a great tip! Ultimately, I want to go one step ahead, and
provide true multipage size support, but looking at the rate things
are going, it may be a while before I get to it :-)

I know what you mean. There's still a lot of work ahead of me in
FreeBSD too. At this time I consider it functional. We're nowhere
near optimal, let alone bug-free. It's a lot of work, but a lot
of fun too :-)

--
 Marcel Moolenaar         USPA: A-39004          marcel%xcllnt.net@localhost


Attachment: smime.p7s
Description: S/MIME cryptographic signature



Home | Main Index | Thread Index | Old Index