Re: Concerning a post that you made about expandable anonymous sharedmappings

From: Hugh Dickins
Date: Mon Jul 02 2007 - 12:09:53 EST


On Fri, 29 Jun 2007, William Tambe wrote:

> I read a post that you made about not being able to expand anonymous shared
> mapping with mremap(). And I am actually having that issue now.

I guess you're referring to the thread at
http://lkml.org/lkml/2004/6/16/155
and you're asking either Stas or me.

>
> You made the post in 2004 and we are now in 2007. I would like to know if that
> feature was added because the code below always fail with bus error on my
> machine. I use glibc 2.5

You've answered your own question: we did not make the change Stas
suggested, IIRC because I remained a little uneasy with that change
in behaviour, and nobody else spoke up for it.

I haven't given it any thought since then:
do you have a good case for us to reconsider it?

Hugh

>
> Thank you for helping.
>
> #define _GNU_SOURCE
> #include <sys/mman.h>
> #include <unistd.h>
>
> #include <stdio.h>
>
> main() {
> void *ptr;
> if ((ptr=mmap(0, 4096, PROT_READ|PROT_WRITE,
> MAP_ANONYMOUS|MAP_SHARED|MAP_GROWSDOWN, 0, 0)) == -1) {
> printf("failed to mmap\n");
> return;
> }
>
> if ((ptr=mremap(ptr, 4096, 8192, MREMAP_MAYMOVE)) == -1) {
> printf("failed to mremap\n");
> return;
> }
>
> //why does this failed. I am well in the interval [4096, 8192]
> *(unsigned int *)(ptr + 4096 + 8)= 10;
> }
-
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/