Re: Support for physical memory above 0x20000000
From: Ralf Baechle <hidden>
Date: 2002-01-08 23:21:50
On Tue, Jan 08, 2002 at 11:07:53AM -0800, Kevin Paul Herbert wrote:
I'm working with a somewhat dated kernel (2.4.2+patches) and have discovered that there are problems with physical memory that does not map into KSEG0/KSEG1. I looked over the list archives (manually, I couldn't find a search interface) and it appears that this is still the case for current kernels (at least as of a note from last summer, the last time the issue seems to have come up.) Obviously, phys_to_virt() is going to be a problem but besides this I'm wondering what anybody may have done to support physical memory that is not always mapped into the virtual address space, so that I don't have to reinvent the wheel. When I tell the kernel about the memory above 0x20000000, userland fails to start; the kernel gets as far as execve()'ing init, but nothing happens (interrupts are enabled; I get echo on the console, but nothing from userland).
Correct. There are two ways to solve this problem. For the 32-bit kernel I've got a highmem patch and the 64-bit kernel memory limits are the hardware's memory limits. I'll post the highmem patch soon. I was planning to have it ready by now but a flu sent me to bed instead ... Ralf