[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 7 Jul 2017 16:33:36 +0530
From: Anshuman Khandual <khandual@...ux.vnet.ibm.com>
To: Mike Kravetz <mike.kravetz@...cle.com>, linux-mm@...ck.org,
linux-api@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Andrea Arcangeli <aarcange@...hat.com>,
Michal Hocko <mhocko@...e.com>, Aaron Lu <aaron.lu@...el.com>,
"Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>
Subject: Re: [RFC PATCH 0/1] mm/mremap: add MREMAP_MIRROR flag
On 07/06/2017 09:47 PM, Mike Kravetz wrote:
> The mremap system call has the ability to 'mirror' parts of an existing
> mapping. To do so, it creates a new mapping that maps the same pages as
> the original mapping, just at a different virtual address. This
> functionality has existed since at least the 2.6 kernel [1]. A comment
> was added to the code to help preserve this feature.
In mremap() implementation move_vma() attempts to do do_unmap() after
move_page_tables(). do_unmap() on the original VMA bails out because
the requested length being 0. Hence both the original VMA and the new
VMA remains after the page table migration. Seems like this whole
mirror function is by coincidence or it has been designed that way ?
Powered by blists - more mailing lists