From: John Hubbard <jhubbard@nvidia.com>
To: Mike Rapoport <rppt@linux.vnet.ibm.com>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>,
linux-man <linux-man@vger.kernel.org>,
linux-api@vger.kernel.org, Michael Ellerman <mpe@ellerman.id.au>,
linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org>,
linux-arch@vger.kernel.org, Jann Horn <jannh@google.com>,
Matthew Wilcox <willy@infradead.org>,
Michal Hocko <mhocko@suse.com>
Subject: Re: [PATCH v2] mmap.2: MAP_FIXED updated documentation
Date: Mon, 4 Dec 2017 18:52:27 -0800 [thread overview]
Message-ID: <6777116d-ad9e-48c9-0009-01d10274135e@nvidia.com> (raw)
In-Reply-To: <20171204113113.GA13465@rapoport-lnx>
On 12/04/2017 03:31 AM, Mike Rapoport wrote:
> On Sun, Dec 03, 2017 at 06:14:11PM -0800, john.hubbard@gmail.com wrote:
>> From: John Hubbard <jhubbard@nvidia.com>
>>
[...]
>> +.IP
>> +Given the above limitations, one of the very few ways to use this option
>> +safely is: mmap() a region, without specifying MAP_FIXED. Then, within that
>> +region, call mmap(MAP_FIXED) to suballocate regions. This avoids both the
>> +portability problem (because the first mmap call lets the kernel pick the
>> +address), and the address space corruption problem (because the region being
>> +overwritten is already owned by the calling thread).
>
> Maybe "address space corruption problem caused by implicit calls to mmap"?
> The region allocated with the first mmap is not exactly owned by the
> thread and a multi-thread application can still corrupt its memory if
> different threads use mmap(MAP_FIXED) for overlapping regions.
>
> My 2 cents.
>
Hi Mike,
Yes, thanks for picking through this, and I agree that the above is misleading.
It should definitely not use the word "owned" at all. Re-doing the whole
paragraph in order to make it all fit together nicely, I get this:
"Given the above limitations, one of the very few ways to use this option
safely is: mmap() an enclosing region, without specifying MAP_FIXED.
Then, within that region, call mmap(MAP_FIXED) to suballocate regions
within the enclosing region. This avoids both the portability problem
(because the first mmap call lets the kernel pick the address), and the
address space corruption problem (because implicit calls to mmap will
not affect the already-mapped enclosing region)."
...how's that sound to you? I'll post a v3 soon with this.
thanks,
John Hubbard
NVIDIA
next prev parent reply other threads:[~2017-12-05 2:52 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-04 2:14 [PATCH v2] mmap.2: MAP_FIXED updated documentation john.hubbard
[not found] ` <20171204021411.4786-1-jhubbard-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-12-04 10:55 ` Cyril Hrubis
2017-12-05 2:14 ` John Hubbard
[not found] ` <efb6eae4-7f30-42c3-0efe-0ab5fbf0fdb4-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-12-05 7:05 ` Michal Hocko
2017-12-05 7:42 ` John Hubbard
2017-12-05 8:52 ` Michal Hocko
[not found] ` <2cff594a-b481-269d-dd91-ff2cc2f4100a-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-12-06 10:01 ` Cyril Hrubis
2017-12-06 21:21 ` John Hubbard
2017-12-07 12:58 ` Cyril Hrubis
2017-12-07 14:02 ` Michal Hocko
2017-12-09 17:19 ` Pavel Machek
2017-12-10 7:44 ` John Hubbard
2017-12-04 11:31 ` Mike Rapoport
2017-12-05 2:52 ` John Hubbard [this message]
[not found] ` <6777116d-ad9e-48c9-0009-01d10274135e-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2017-12-05 7:08 ` Michal Hocko
2017-12-05 7:43 ` John Hubbard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6777116d-ad9e-48c9-0009-01d10274135e@nvidia.com \
--to=jhubbard@nvidia.com \
--cc=jannh@google.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-man@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=mpe@ellerman.id.au \
--cc=mtk.manpages@gmail.com \
--cc=rppt@linux.vnet.ibm.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).