Re: [PATCH] 2.6.1 (not 2.4.24!) mremap fixes broke shm alias mappings

From: Bart Oldeman
Date: Mon Jan 12 2004 - 20:33:42 EST


On Mon, 12 Jan 2004, Linus Torvalds wrote:

> On Sun, 11 Jan 2004, Bart Oldeman wrote:
> >
> > DOSEMU needs to alias memory, for instance to emulate the HMA. A long time
> > ago this was done using mmaps of /proc/self/mem. This was replaced by
> > mremap combined with IPC SHM during 2.1 development.
> >
> > According to DOSEMUs changelog you agreed to allow old_len==0:
> > - using _one_ big IPC shm segment and mremap(addr, 0 ...)
> > (Linus agreed on keeping shmat()+mremap(,0,..) functionality)
> > so you agreed on something you have removed after all now!
>
> Hey, I wouldn't remember all the special cases that aren't commented. But
> I agree that a zero "old_len" is not bad in itself, and if DOSEMU uses it,
> let's just continue to support it, and document it while we're at it.
>
> So if this makes DOSEMU happy again, let's do it..
>
> Pls confirm.

sure, it's fine this way. Thanks!

We've already been discussing and playing with a cleaner alternative to
mremap that works too (mmap'ing a file on tmpfs, perhaps via
shm_open()). It's just that it's difficult to explain to users why DOSEMU
worked on 2.6.0 and suddenly stopped working with the same configuration
on 2.6.1.

-- the consensus amongst DOSEMU developers seems to be that you should
feel free to disallow this funny old_len==0 case in 2.7 if you like.

Bart

-
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/