On Thu, Aug 31, 2017 at 6:27 PM, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > On Thu, Aug 31, 2017 at 6:01 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote: >> >> Ugh, nommu defeats the MAP_SHARED_VALIDATE proposal from Linus. >> >> if ((flags & MAP_TYPE) != MAP_PRIVATE && >> (flags & MAP_TYPE) != MAP_SHARED) >> return -EINVAL; >> >> ...parisc strikes again. > > Why? That's no different from the case statement for the mmu case, > just written differently. > > You *want* existing kernels to fail, since they don't test the bits > you want to test. > > So you just want to rewrite these all as > > switch (flags & MAP_TYPE) { > case MAP_SHARED_VALIDATE: > .. validate the other bits... > /* fallhtough */ > case MAP_SHARED: > .. do the shared case .. > case MAP_PRIVATE: > .. do the private case .. > default: > return -EINVAL; > } > > and you're all good. > > I'm not seeing the problem. Right, I went cross-eyed for a second. There is no problem. -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html