Comment 12 for bug 74179

Revision history for this message
Andy Whitcroft (apw) wrote :

A knotty problem. The i386 -generic kernel is limited to 4GB of physical address space. Commonly systems with 4GB or more will have the memory placed such that there is a physical hole from 3GB to 4GB and the remaining memory above that. Thus a 4GB system will commonly occupy 5GB of physical address space and the -generic kernel cannot address the final GB and so it is not seen or used.

To enable access to this memory the HIGHMEM64G config option is required, but this option enables PAE which comes with some cost. The -server kernel does have this enabled, but this is configured very slightly differently to optimise it for non-interactive use. The amd64 -generic kernel is not affected by this issue.

The current options basically are:

1) only use 3GB of ram (annoying),
2) run the -server kernel (not 100% optimal), or
3) run the amd64 -generic kernel.

The differences between the -generic and -server kernel are small and this is likley to be the best compromise in the short term. I will start the discussion on how we might offer a kernel better suited to these systems as 4GB of ram is becoming more common.