On Fri, Feb 17, 2017 at 1:01 PM, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > On Fri, Feb 17, 2017 at 12:12 PM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote: >> >> At the very least, I'd want to see >> MAP_FIXED_BUT_DONT_BLOODY_UNMAP_ANYTHING. I *hate* the current >> interface. > > That's unrelated, but I guess w could add a MAP_NOUNMAP flag, and then > you can use MAP_FIXED | MAP_NOUNMAP or something. > > But that has nothing to do with the 47-vs-56 bit issue. > >> How about MAP_LIMIT where the address passed in is interpreted as an >> upper bound instead of a fixed address? > > Again, that's a unrelated semantic issue. Right now - if you don't > pass in MAP_FIXED at all, the "addr" argument is used as a starting > value for deciding where to find an unmapped area. But there is no way > to specify the end. That would basically be what the process control > thing would be (not per-system-call, but per-thread ). > What I'm trying to say is: if we're going to do the route of 48-bit limit unless a specific mmap call requests otherwise, can we at least have an interface that doesn't suck?