[lkml]   [2018]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 1/5] ioremap: Rework pXd_free_pYd_page() API
On Wed, 2018-09-12 at 11:26 +0100, Will Deacon wrote:
> The recently merged API for ensuring break-before-make on page-table
> entries when installing huge mappings in the vmalloc/ioremap region is
> fairly counter-intuitive, resulting in the arch freeing functions
> (e.g. pmd_free_pte_page()) being called even on entries that aren't
> present. This resulted in a minor bug in the arm64 implementation, giving
> rise to spurious VM_WARN messages.
> This patch moves the pXd_present() checks out into the core code,
> refactoring the callsites at the same time so that we avoid the complex
> conjunctions when determining whether or not we can put down a huge
> mapping.
> Cc: Chintan Pandya <>
> Cc: Toshi Kani <>
> Cc: Thomas Gleixner <>
> Cc: Michal Hocko <>
> Cc: Andrew Morton <>
> Suggested-by: Linus Torvalds <>
> Signed-off-by: Will Deacon <>

Yes, this looks nicer.

Reviewed-by: Toshi Kani <>

 \ /
  Last update: 2018-09-14 22:36    [W:0.661 / U:0.148 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site