Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: Bug: Discontigmem virt_to_page() [Alpha,ARM,Mips64?] | Date | Mon, 6 May 2002 03:07:07 +0200 |
| |
On Monday 06 May 2002 02:55, Russell King wrote: > On Mon, May 06, 2002 at 01:54:52AM +0200, Daniel Phillips wrote: > > I must be guilty of not explaining clearly. Suppose you have the following > > physical memory map: > > > > 0: 128 MB > > 8000,0000: 128 MB > > 1,0000,0000: 128 MB > > 1,8000,0000: 128 MB > > 2,0000,0000: 128 MB > > 2,8000,0000: 128 MB > > 3,0000,0000: 128 MB > > 3,8000,0000: 128 MB > > > > The total is 1 GB of installed ram. Yet the kernel's 1G virtual space, > > can only handle 128 MB of it. > > I see no problem with the above with the existing discontigmem stuff. > discontigmem does *not* require a linear relationship between kernel > virtual and physical memory. I've been running kernels for a while > on such systems.
Look, you've got this:
#define __phys_to_virt(ppage) ((unsigned long)(ppage) + PAGE_OFFSET - PHYS_OFFSET)
So, since __phys_to_virt (and hence phys_to_virt and __va) is clearly linear, the relation __pa(__va(kva)) == kva cannot hold. Perhaps that doesn't bother you?
-- Daniel - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |