Skip to content

Commit 034e5af

Browse files
Alex Williamsonakpm00
authored andcommitted
mm: re-allow pinning of zero pfns
The commit referenced below subtly and inadvertently changed the logic to disallow pinning of zero pfns. This breaks device assignment with vfio and potentially various other users of gup. Exclude the zero page test from the negation. Link: https://lkml.kernel.org/r/165490039431.944052.12458624139225785964.stgit@omen Fixes: 1c56343 ("mm: fix is_pinnable_page against a cma page") Signed-off-by: Alex Williamson <alex.williamson@redhat.com> Acked-by: Minchan Kim <minchan@kernel.org> Acked-by: David Hildenbrand <david@redhat.com> Reported-by: Yishai Hadas <yishaih@nvidia.com> Cc: Paul E. McKenney <paulmck@kernel.org> Cc: John Hubbard <jhubbard@nvidia.com> Cc: John Dias <joaodias@google.com> Cc: Jason Gunthorpe <jgg@ziepe.ca> Cc: Zhangfei Gao <zhangfei.gao@linaro.org> Cc: Matthew Wilcox <willy@infradead.org> Cc: Joao Martins <joao.m.martins@oracle.com> Cc: Yi Liu <yi.l.liu@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent 327b18b commit 034e5af

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

include/linux/mm.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1600,7 +1600,7 @@ static inline bool is_pinnable_page(struct page *page)
16001600
if (mt == MIGRATE_CMA || mt == MIGRATE_ISOLATE)
16011601
return false;
16021602
#endif
1603-
return !(is_zone_movable_page(page) || is_zero_pfn(page_to_pfn(page)));
1603+
return !is_zone_movable_page(page) || is_zero_pfn(page_to_pfn(page));
16041604
}
16051605
#else
16061606
static inline bool is_pinnable_page(struct page *page)

0 commit comments

Comments
 (0)