From: kernel test robot <lkp@intel.com>
To: Kefeng Wang <wangkefeng.wang@huawei.com>,
Andrew Morton <akpm@linux-foundation.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
Linux Memory Management List <linux-mm@kvack.org>,
willy@infradead.org, Miaohe Lin <linmiaohe@huawei.com>,
Naoya Horiguchi <naoya.horiguchi@nec.com>,
David Hildenbrand <david@redhat.com>,
Oscar Salvador <osalvador@suse.de>, Zi Yan <ziy@nvidia.com>,
Hugh Dickins <hughd@google.com>, Jonathan Corbet <corbet@lwn.net>,
linux-doc@vger.kernel.org,
Baolin Wang <baolin.wang@linux.alibaba.com>,
Kefeng Wang <wangkefeng.wang@huawei.com>
Subject: Re: [PATCH 3/6] mm: remove isolate_lru_page()
Date: Thu, 28 Mar 2024 20:22:29 +0800 [thread overview]
Message-ID: <202403282057.pIA3kJoz-lkp@intel.com> (raw)
In-Reply-To: <20240327141034.3712697-4-wangkefeng.wang@huawei.com>
Hi Kefeng,
kernel test robot noticed the following build errors:
[auto build test ERROR on linus/master]
[also build test ERROR on v6.9-rc1]
[cannot apply to akpm-mm/mm-everything next-20240328]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Kefeng-Wang/mm-migrate-add-isolate_movable_folio/20240327-221513
base: linus/master
patch link: https://lore.kernel.org/r/20240327141034.3712697-4-wangkefeng.wang%40huawei.com
patch subject: [PATCH 3/6] mm: remove isolate_lru_page()
config: x86_64-rhel-8.3-rust (https://download.01.org/0day-ci/archive/20240328/202403282057.pIA3kJoz-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240328/202403282057.pIA3kJoz-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202403282057.pIA3kJoz-lkp@intel.com/
All errors (new ones prefixed by >>):
>> mm/migrate_device.c:388:9: error: call to undeclared function 'isolate_lru_page'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
388 | if (!isolate_lru_page(page)) {
| ^
mm/migrate_device.c:388:9: note: did you mean '__isolate_free_page'?
mm/internal.h:487:12: note: '__isolate_free_page' declared here
487 | extern int __isolate_free_page(struct page *page, unsigned int order);
| ^
1 error generated.
vim +/isolate_lru_page +388 mm/migrate_device.c
76cbbead253ddc Christoph Hellwig 2022-02-16 355
76cbbead253ddc Christoph Hellwig 2022-02-16 356 /*
44af0b45d58d7b Alistair Popple 2022-11-11 357 * Unmaps pages for migration. Returns number of source pfns marked as
44af0b45d58d7b Alistair Popple 2022-11-11 358 * migrating.
76cbbead253ddc Christoph Hellwig 2022-02-16 359 */
241f6885965683 Alistair Popple 2022-09-28 360 static unsigned long migrate_device_unmap(unsigned long *src_pfns,
241f6885965683 Alistair Popple 2022-09-28 361 unsigned long npages,
241f6885965683 Alistair Popple 2022-09-28 362 struct page *fault_page)
76cbbead253ddc Christoph Hellwig 2022-02-16 363 {
76cbbead253ddc Christoph Hellwig 2022-02-16 364 unsigned long i, restore = 0;
76cbbead253ddc Christoph Hellwig 2022-02-16 365 bool allow_drain = true;
241f6885965683 Alistair Popple 2022-09-28 366 unsigned long unmapped = 0;
76cbbead253ddc Christoph Hellwig 2022-02-16 367
76cbbead253ddc Christoph Hellwig 2022-02-16 368 lru_add_drain();
76cbbead253ddc Christoph Hellwig 2022-02-16 369
76cbbead253ddc Christoph Hellwig 2022-02-16 370 for (i = 0; i < npages; i++) {
241f6885965683 Alistair Popple 2022-09-28 371 struct page *page = migrate_pfn_to_page(src_pfns[i]);
4b8554c527f3cf Matthew Wilcox (Oracle 2022-01-28 372) struct folio *folio;
76cbbead253ddc Christoph Hellwig 2022-02-16 373
44af0b45d58d7b Alistair Popple 2022-11-11 374 if (!page) {
44af0b45d58d7b Alistair Popple 2022-11-11 375 if (src_pfns[i] & MIGRATE_PFN_MIGRATE)
44af0b45d58d7b Alistair Popple 2022-11-11 376 unmapped++;
76cbbead253ddc Christoph Hellwig 2022-02-16 377 continue;
44af0b45d58d7b Alistair Popple 2022-11-11 378 }
76cbbead253ddc Christoph Hellwig 2022-02-16 379
76cbbead253ddc Christoph Hellwig 2022-02-16 380 /* ZONE_DEVICE pages are not on LRU */
76cbbead253ddc Christoph Hellwig 2022-02-16 381 if (!is_zone_device_page(page)) {
76cbbead253ddc Christoph Hellwig 2022-02-16 382 if (!PageLRU(page) && allow_drain) {
1fec6890bf2247 Matthew Wilcox (Oracle 2023-06-21 383) /* Drain CPU's lru cache */
76cbbead253ddc Christoph Hellwig 2022-02-16 384 lru_add_drain_all();
76cbbead253ddc Christoph Hellwig 2022-02-16 385 allow_drain = false;
76cbbead253ddc Christoph Hellwig 2022-02-16 386 }
76cbbead253ddc Christoph Hellwig 2022-02-16 387
f7f9c00dfafffd Baolin Wang 2023-02-15 @388 if (!isolate_lru_page(page)) {
241f6885965683 Alistair Popple 2022-09-28 389 src_pfns[i] &= ~MIGRATE_PFN_MIGRATE;
76cbbead253ddc Christoph Hellwig 2022-02-16 390 restore++;
76cbbead253ddc Christoph Hellwig 2022-02-16 391 continue;
76cbbead253ddc Christoph Hellwig 2022-02-16 392 }
76cbbead253ddc Christoph Hellwig 2022-02-16 393
76cbbead253ddc Christoph Hellwig 2022-02-16 394 /* Drop the reference we took in collect */
76cbbead253ddc Christoph Hellwig 2022-02-16 395 put_page(page);
76cbbead253ddc Christoph Hellwig 2022-02-16 396 }
76cbbead253ddc Christoph Hellwig 2022-02-16 397
4b8554c527f3cf Matthew Wilcox (Oracle 2022-01-28 398) folio = page_folio(page);
4b8554c527f3cf Matthew Wilcox (Oracle 2022-01-28 399) if (folio_mapped(folio))
4b8554c527f3cf Matthew Wilcox (Oracle 2022-01-28 400) try_to_migrate(folio, 0);
76cbbead253ddc Christoph Hellwig 2022-02-16 401
16ce101db85db6 Alistair Popple 2022-09-28 402 if (page_mapped(page) ||
241f6885965683 Alistair Popple 2022-09-28 403 !migrate_vma_check_page(page, fault_page)) {
76cbbead253ddc Christoph Hellwig 2022-02-16 404 if (!is_zone_device_page(page)) {
76cbbead253ddc Christoph Hellwig 2022-02-16 405 get_page(page);
76cbbead253ddc Christoph Hellwig 2022-02-16 406 putback_lru_page(page);
76cbbead253ddc Christoph Hellwig 2022-02-16 407 }
76cbbead253ddc Christoph Hellwig 2022-02-16 408
241f6885965683 Alistair Popple 2022-09-28 409 src_pfns[i] &= ~MIGRATE_PFN_MIGRATE;
76cbbead253ddc Christoph Hellwig 2022-02-16 410 restore++;
76cbbead253ddc Christoph Hellwig 2022-02-16 411 continue;
76cbbead253ddc Christoph Hellwig 2022-02-16 412 }
241f6885965683 Alistair Popple 2022-09-28 413
241f6885965683 Alistair Popple 2022-09-28 414 unmapped++;
76cbbead253ddc Christoph Hellwig 2022-02-16 415 }
76cbbead253ddc Christoph Hellwig 2022-02-16 416
76cbbead253ddc Christoph Hellwig 2022-02-16 417 for (i = 0; i < npages && restore; i++) {
241f6885965683 Alistair Popple 2022-09-28 418 struct page *page = migrate_pfn_to_page(src_pfns[i]);
4eecb8b9163df8 Matthew Wilcox (Oracle 2022-01-28 419) struct folio *folio;
76cbbead253ddc Christoph Hellwig 2022-02-16 420
241f6885965683 Alistair Popple 2022-09-28 421 if (!page || (src_pfns[i] & MIGRATE_PFN_MIGRATE))
76cbbead253ddc Christoph Hellwig 2022-02-16 422 continue;
76cbbead253ddc Christoph Hellwig 2022-02-16 423
4eecb8b9163df8 Matthew Wilcox (Oracle 2022-01-28 424) folio = page_folio(page);
4eecb8b9163df8 Matthew Wilcox (Oracle 2022-01-28 425) remove_migration_ptes(folio, folio, false);
76cbbead253ddc Christoph Hellwig 2022-02-16 426
241f6885965683 Alistair Popple 2022-09-28 427 src_pfns[i] = 0;
4eecb8b9163df8 Matthew Wilcox (Oracle 2022-01-28 428) folio_unlock(folio);
4eecb8b9163df8 Matthew Wilcox (Oracle 2022-01-28 429) folio_put(folio);
76cbbead253ddc Christoph Hellwig 2022-02-16 430 restore--;
76cbbead253ddc Christoph Hellwig 2022-02-16 431 }
241f6885965683 Alistair Popple 2022-09-28 432
241f6885965683 Alistair Popple 2022-09-28 433 return unmapped;
241f6885965683 Alistair Popple 2022-09-28 434 }
241f6885965683 Alistair Popple 2022-09-28 435
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next parent reply other threads:[~2024-03-28 12:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20240327141034.3712697-4-wangkefeng.wang@huawei.com>
2024-03-28 12:22 ` kernel test robot [this message]
2024-03-28 12:56 ` [PATCH 3/6] mm: remove isolate_lru_page() Kefeng Wang
2024-03-28 15:33 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202403282057.pIA3kJoz-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=baolin.wang@linux.alibaba.com \
--cc=corbet@lwn.net \
--cc=david@redhat.com \
--cc=hughd@google.com \
--cc=linmiaohe@huawei.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=llvm@lists.linux.dev \
--cc=naoya.horiguchi@nec.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=osalvador@suse.de \
--cc=wangkefeng.wang@huawei.com \
--cc=willy@infradead.org \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).