Re: UML fails to locate address space

From: Tom Spink
Date: Tue May 20 2008 - 12:43:29 EST


2008/5/20 Jeff Dike <jdike@xxxxxxxxxxx>:
> On Tue, May 20, 2008 at 02:59:14PM +0100, Tom Spink wrote:
>> Attached. I guess the line of interest is:
>>
>> mmap2(NULL, 4096, PROT_READ|PROT_WRITE,
>> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = -1 EACCES (Permission
>> denied)
>
> Yup.
>
> Can you try three things:
> check the maps file for any arbitrary process
> (i.e. /proc/$$/maps) and see if there's anything mapped at 0

Nothing.

> gdb UML, stop it at that mmap, check its maps file and see if
> there's anything mapped at 0

Nope.

> send me a pointer to the patches that Ubuntu has applied on
> top of the stock kernel - I'm suspicious that they special-cased page
> zero in order to ensure that NULL pointer dereferences cause faults.
>
> You can test this last theory by initializing bottom to 4096 instead
> of 0.

I suspected this type of foul-play, and tried altering bottom to 1,
but this didn't work. So, I took out the page_ok test, and it
continued booting. So I went back, put the test back in and
incremented bottom until I got to 16. It worked at 16. :-)

Is this something that can be fixed, or would a config option be appropriate?

I am willing to blame Ubuntu, but unfortunately, I can't find an
online resource of their patches.

> Jeff
>
> --
> Work email - jdike at linux dot intel dot com
>

--
Tom Spink
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/