Re: [PATCH] mm: reject MAP_SHARED_VALIDATE without new flags
From: Eric Sandeen <hidden>
Date: 2018-06-28 04:18:30
Also in:
linux-api, linux-fsdevel, linux-mm, linux-xfs, nvdimm
From: Eric Sandeen <hidden>
Date: 2018-06-28 04:18:30
Also in:
linux-api, linux-fsdevel, linux-mm, linux-xfs, nvdimm
On 6/27/18 9:37 PM, Linus Torvalds wrote:
On Wed, Jun 27, 2018 at 7:17 PM Eric Sandeen [off-list ref] wrote:quoted
What broke is that mmap(MAP_SHARED|MAP_PRIVATE) now succeeds without error, whereas before it rightly returned -EINVAL.You're still confusing *behavior* with breakage. Yes. New *behavior* is that MAP_SHARED|MAP_PRIVATE is now a valid thing. It means "MAP_SHARED_VALIDATE". Behavior changed. That's normal. Every single time we add a system call, behavior changes: a system call that used to return -ENOSYS now returns something else. That's not breakage, that's just intentional new behavior.
*shrug* semantics aside, the new behavior is out there in a public API, so I guess there's nothing to do at this point other than to document the change more clearly. It's true that my patch could possibly break existing users. The man page is clearly wrong at this point, both in terms of the error code section, and the claim that MAP_SHARED and MAP_PRIVATE behave as described in POSIX (because POSIX states that these two flags may not be specified together.) -Eric