[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <C9405E2A-4A0B-4EFD-B432-C54D2C9CFC2B@fb.com>
Date: Wed, 31 Jul 2019 08:35:46 +0000
From: Song Liu <songliubraving@...com>
To: William Kucharski <william.kucharski@...cle.com>
CC: lkml <linux-kernel@...r.kernel.org>, Linux-MM <linux-mm@...ck.org>,
"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Bob Kasten <robert.a.kasten@...el.com>,
"Mike Kravetz" <mike.kravetz@...cle.com>,
Chad Mynhier <chad.mynhier@...cle.com>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Johannes Weiner <jweiner@...com>,
Matthew Wilcox <willy@...radead.org>
Subject: Re: [PATCH v3 0/2] mm,thp: Add filemap_huge_fault() for THP
> On Jul 31, 2019, at 1:25 AM, William Kucharski <william.kucharski@...cle.com> wrote:
>
> This set of patches is the first step towards a mechanism for automatically
> mapping read-only text areas of appropriate size and alignment to THPs
> whenever possible.
>
> For now, the central routine, filemap_huge_fault(), amd various support
> routines are only included if the experimental kernel configuration option
>
> RO_EXEC_FILEMAP_HUGE_FAULT_THP
>
> is enabled.
>
> This is because filemap_huge_fault() is dependent upon the
> address_space_operations vector readpage() pointing to a routine that will
> read and fill an entire large page at a time without poulluting the page
> cache with PAGESIZE entries for the large page being mapped or performing
> readahead that would pollute the page cache entries for succeeding large
> pages. Unfortunately, there is no good way to determine how many bytes
> were read by readpage(). At present, if filemap_huge_fault() were to call
> a conventional readpage() routine, it would only fill the first PAGESIZE
> bytes of the large page, which is definitely NOT the desired behavior.
>
> However, by making the code available now it is hoped that filesystem
> maintainers who have pledged to provide such a mechanism will do so more
> rapidly.
Could you please explain how to test/try this? Would it automatically map
all executables to THPs?
Thanks,
Song
Powered by blists - more mailing lists