lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 24 Jan 2017 14:55:13 -0800 From: Andrew Morton <akpm@...ux-foundation.org> To: "Kirill A. Shutemov" <kirill@...temov.name> Cc: "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>, Andrea Arcangeli <aarcange@...hat.com>, Hugh Dickins <hughd@...gle.com>, Rik van Riel <riel@...hat.com>, linux-mm@...ck.org, linux-kernel@...r.kernel.org Subject: Re: [PATCH 02/12] mm: introduce page_check_walk() On Wed, 25 Jan 2017 01:50:30 +0300 "Kirill A. Shutemov" <kirill@...temov.name> wrote: > > > + * @pcw->ptl is unlocked and @pcw->pte is unmapped. > > > + * > > > + * If you need to stop the walk before page_check_walk() returned false, use > > > + * page_check_walk_done(). It will do the housekeeping. > > > + */ > > > +static inline bool page_check_walk(struct page_check_walk *pcw) > > > +{ > > > + /* The only possible pmd mapping has been handled on last iteration */ > > > + if (pcw->pmd && !pcw->pte) { > > > + page_check_walk_done(pcw); > > > + return false; > > > + } > > > + > > > + /* Only for THP, seek to next pte entry makes sense */ > > > + if (pcw->pte) { > > > + if (!PageTransHuge(pcw->page) || PageHuge(pcw->page)) { > > > + page_check_walk_done(pcw); > > > + return false; > > > + } > > > + } > > > + > > > + return __page_check_walk(pcw); > > > +} > > > > Was the decision to inline this a correct one? > > Well, my logic was that in most cases we would have exactly one iteration. > The only case when we need more than one iteration is PTE-mapped THP which > is rare. > I hoped to avoid additional function call. Not sure if it worth it. > > Should I move it inside the function? I suggest building a kernel with it uninlined, take a look at the bloat factor then make a seat-of-the pants decision about "is it worth it". With quite a few callsites the saving from uninlining may be significant.
Powered by blists - more mailing lists