[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180211211646.GC4680@bombadil.infradead.org>
Date: Sun, 11 Feb 2018 13:16:46 -0800
From: Matthew Wilcox <willy@...radead.org>
To: Igor Stoppa <igor.stoppa@...wei.com>
Cc: rdunlap@...radead.org, corbet@....net, keescook@...omium.org,
mhocko@...nel.org, labbott@...hat.com, jglisse@...hat.com,
hch@...radead.org, cl@...ux.com,
linux-security-module@...r.kernel.org, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, kernel-hardening@...ts.openwall.com
Subject: Re: [PATCH 3/6] struct page: add field for vm_struct
On Sun, Feb 11, 2018 at 05:19:17AM +0200, Igor Stoppa wrote:
> The struct page has a "mapping" field, which can be re-used, to store a
> pointer to the parent area. This will avoid more expensive searches.
>
> As example, the function find_vm_area is reimplemented, to take advantage
> of the newly introduced field.
Umm. Is it more efficient? You're replacing an rb-tree search with a
page-table walk. You eliminate a spinlock, which is great, but is the
page-table walk more efficient? I suppose it'll depend on the depth of
the rb-tree, and (at least on x86), the page tables should already be
in cache.
Unrelated to this patch, I'm working on a patch to give us page_type,
and I think I'll allocate a bit to mark pages which are vmalloced.
Powered by blists - more mailing lists