When CONFIG_HIGHMEM=y, but ZONE_NORMAL isn't quite full, there is, of course, no actual memory at *high_memory. This isn't a problem with normal virt<->phys translations because it's never dereferenced, but CONFIG_NONLINEAR is a bit more finicky. So, don't do __va() in non-existent addresses. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton --- arch/i386/mm/init.c | 0 1 files changed diff -puN arch/i386/mm/init.c~FROM-MM-make-highmem_start-access-only-valid-addresses-i386 arch/i386/mm/init.c _