diff options
author | Matthew Wilcox (Oracle) <willy@infradead.org> | 2022-01-09 16:21:23 -0500 |
---|---|---|
committer | Matthew Wilcox (Oracle) <willy@infradead.org> | 2022-03-21 12:56:35 -0400 |
commit | 0b046e12ae5d6d286415a2e805fcfdd724b7add1 (patch) | |
tree | f6b27a046213eac391e825ccaa0a14ee57348e89 /mm | |
parent | 8f39f5fcb7963f0a01b8077c92e627af279de65e (diff) | |
download | linux-riscv-0b046e12ae5d6d286415a2e805fcfdd724b7add1.tar.gz linux-riscv-0b046e12ae5d6d286415a2e805fcfdd724b7add1.tar.bz2 linux-riscv-0b046e12ae5d6d286415a2e805fcfdd724b7add1.zip |
mm/gup: Optimise compound_range_next()
By definition, a compound page has an order >= 1, so the second half
of the test was redundant. Also, this cannot be a tail page since
it's the result of calling compound_head(), so use PageHead() instead
of PageCompound().
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: John Hubbard <jhubbard@nvidia.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: William Kucharski <william.kucharski@oracle.com>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/gup.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -260,7 +260,7 @@ static inline struct page *compound_range_next(struct page *start, next = start + i; page = compound_head(next); - if (PageCompound(page) && compound_order(page) >= 1) + if (PageHead(page)) nr = min_t(unsigned int, page + compound_nr(page) - next, npages - i); |