mm/migration: use helper macro min in do_pages_stat
We could use helper macro min to help set the chunk_nr to simplify the code. Link: https://lkml.kernel.org/r/20220318111709.60311-7-linmiaohe@huawei.com Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Reviewed-by: Muchun Song <songmuchun@bytedance.com> Cc: Alistair Popple <apopple@nvidia.com> Cc: Baolin Wang <baolin.wang@linux.alibaba.com> Cc: "Huang, Ying" <ying.huang@intel.com> Cc: Zi Yan <ziy@nvidia.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Родитель
cb1c37b1c6
Коммит
3eefb826c5
|
@ -1842,16 +1842,12 @@ static int do_pages_stat(struct mm_struct *mm, unsigned long nr_pages,
|
||||||
const void __user * __user *pages,
|
const void __user * __user *pages,
|
||||||
int __user *status)
|
int __user *status)
|
||||||
{
|
{
|
||||||
#define DO_PAGES_STAT_CHUNK_NR 16
|
#define DO_PAGES_STAT_CHUNK_NR 16UL
|
||||||
const void __user *chunk_pages[DO_PAGES_STAT_CHUNK_NR];
|
const void __user *chunk_pages[DO_PAGES_STAT_CHUNK_NR];
|
||||||
int chunk_status[DO_PAGES_STAT_CHUNK_NR];
|
int chunk_status[DO_PAGES_STAT_CHUNK_NR];
|
||||||
|
|
||||||
while (nr_pages) {
|
while (nr_pages) {
|
||||||
unsigned long chunk_nr;
|
unsigned long chunk_nr = min(nr_pages, DO_PAGES_STAT_CHUNK_NR);
|
||||||
|
|
||||||
chunk_nr = nr_pages;
|
|
||||||
if (chunk_nr > DO_PAGES_STAT_CHUNK_NR)
|
|
||||||
chunk_nr = DO_PAGES_STAT_CHUNK_NR;
|
|
||||||
|
|
||||||
if (in_compat_syscall()) {
|
if (in_compat_syscall()) {
|
||||||
if (get_compat_pages_array(chunk_pages, pages,
|
if (get_compat_pages_array(chunk_pages, pages,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче