mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dave Hansen <dave.hansen@intel.com>
To: owner-linux-mm@kvack.org, "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	mhocko@kernel.org, willy@infradead.org,
	ldufour@linux.vnet.ibm.com, akpm@linux-foundation.org,
	peterz@infradead.org, mingo@redhat.com, acme@kernel.org,
	alexander.shishkin@linux.intel.com, jolsa@redhat.com,
	namhyung@kernel.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org
Subject: Re: [RFC v8 PATCH 3/5] mm: mmap: zap pages with read mmap_sem in munmap
Date: Wed, 22 Aug 2018 15:03:44 -0700	[thread overview]
Message-ID: <7f06e97e-5efa-e0d4-f952-3f01079c7283@intel.com> (raw)
In-Reply-To: <a1642cf6-f458-3026-dca9-652fbb20f580@linux.alibaba.com>

On 08/22/2018 02:56 PM, owner-linux-mm@kvack.org wrote:
> 
> 
> On 8/22/18 2:42 PM, Dave Hansen wrote:
>> On 08/22/2018 02:10 PM, Kirill A. Shutemov wrote:
>>>> For x86, mpx_notify_unmap() looks finally zap the VM_MPX vmas in
>>>> bound table
>>>> range with zap_page_range() and doesn't update vm flags, so it
>>>> sounds ok to
>>>> me since vmas have been detached, nobody can find those vmas. But,
>>>> I'm not
>>>> familiar with the details of mpx, maybe Kirill could help to confirm
>>>> this?
>>> I don't see anything obviously dependent on down_write() in
>>> mpx_notify_unmap(), but Dave should know better.
>> We need mmap_sem for write in mpx_notify_unmap().
>>
>> Its job is to clean up bounds tables, but bounds tables are dynamically
>> allocated and destroyed by the kernel.  When we destroy a table, we also
>> destroy the VMA for the bounds table *itself*, separate from the VMA
>> being unmapped.
...
> Does it depends on unmap_region()? Or IOW, does it has to be called
> after unmap_region()? Now the calling sequence is:
> 
> detach vmas
> unmap_region()
> mpx_notify_unmap()
> 
> I'm wondering if it is safe to move it up before unmap_region() like:
> 
> detach vmas
> mpx_notify_unmap()
> unmap_region()
> 
> With this change we also can do our optimization to do unmap_region()
> with read mmap_sem. Otherwise it does cause problem.

I think changing the ordering is fine.

The MPX bounds table unmapping is entirely driven by the VMAs being
unmapped, so the page table unmapping in unmap_region() should not
affect it.

  reply	other threads:[~2018-08-22 22:05 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-15 18:49 [RFC v8 PATCH 0/5] mm: zap pages with read mmap_sem in munmap for large mapping Yang Shi
2018-08-15 18:49 ` [RFC v8 PATCH 1/5] mm: refactor do_munmap() to extract the common part Yang Shi
2018-08-15 18:49 ` [RFC v8 PATCH 2/5] uprobes: introduce has_uprobes helper Yang Shi
2018-08-22 10:55   ` Vlastimil Babka
2018-08-22 15:07     ` Srikar Dronamraju
2018-08-22 20:51       ` Yang Shi
2018-08-23 15:15       ` Oleg Nesterov
2018-08-23 16:07         ` Yang Shi
2018-08-15 18:49 ` [RFC v8 PATCH 3/5] mm: mmap: zap pages with read mmap_sem in munmap Yang Shi
2018-08-15 19:16   ` Matthew Wilcox
2018-08-15 21:09     ` Matthew Wilcox
2018-08-15 21:54       ` Yang Shi
2018-08-16  2:46         ` Matthew Wilcox
2018-08-16  6:11           ` Yang Shi
2018-08-22 11:11   ` Vlastimil Babka
2018-08-22 19:20     ` Yang Shi
2018-08-22 11:19   ` Vlastimil Babka
2018-08-22 20:45     ` Yang Shi
2018-08-22 21:10       ` Kirill A. Shutemov
2018-08-22 21:42         ` Dave Hansen
2018-08-22 21:56           ` Yang Shi
2018-08-22 22:03             ` Dave Hansen [this message]
2018-08-15 18:49 ` [RFC v8 PATCH 4/5] mm: unmap VM_HUGETLB mappings with optimized path Yang Shi
2018-08-15 18:49 ` [RFC v8 PATCH 5/5] mm: unmap VM_PFNMAP " Yang Shi

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=7f06e97e-5efa-e0d4-f952-3f01079c7283@intel.com \
    --to=dave.hansen@intel.com \
    --cc=acme@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=jolsa@redhat.com \
    --cc=kirill@shutemov.name \
    --cc=ldufour@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=owner-linux-mm@kvack.org \
    --cc=peterz@infradead.org \
    --cc=vbabka@suse.cz \
    --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

all inboxes | Powered by JetHome®