[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] xen/balloon: fix page onlining when populating new zone
Hi Juergen, I love your patch! Yet something to improve: [auto build test ERROR on xen-tip/linux-next] [also build test ERROR on linus/master linux/master v5.18-rc1 next-20220406] [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] url: https://github.com/intel-lab-lkp/linux/commits/Juergen-Gross/xen-balloon-fix-page-onlining-when-populating-new-zone/20220407-000935 base: https://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git linux-next config: arm64-randconfig-r011-20220406 (https://download.01.org/0day-ci/archive/20220407/202204071359.uas4tsu0-lkp@xxxxxxxxx/config) compiler: aarch64-linux-gcc (GCC) 11.2.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/b3deb59d5386ade4fb227038f202a9bdb8ade4ab git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Juergen-Gross/xen-balloon-fix-page-onlining-when-populating-new-zone/20220407-000935 git checkout b3deb59d5386ade4fb227038f202a9bdb8ade4ab # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): drivers/xen/balloon.c: In function 'decrease_reservation': >> drivers/xen/balloon.c:518:24: error: implicit declaration of function >> 'alloc_page_for_balloon' [-Werror=implicit-function-declaration] 518 | page = alloc_page_for_balloon(gfp); | ^~~~~~~~~~~~~~~~~~~~~~ drivers/xen/balloon.c:518:22: warning: assignment to 'struct page *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 518 | page = alloc_page_for_balloon(gfp); | ^ >> drivers/xen/balloon.c:545:17: error: implicit declaration of function >> 'add_page_to_balloon' [-Werror=implicit-function-declaration] 545 | add_page_to_balloon(page); | ^~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/alloc_page_for_balloon +518 drivers/xen/balloon.c 505 506 static enum bp_state decrease_reservation(unsigned long nr_pages, gfp_t gfp) 507 { 508 enum bp_state state = BP_DONE; 509 unsigned long i; 510 struct page *page, *tmp; 511 int ret; 512 LIST_HEAD(pages); 513 514 if (nr_pages > ARRAY_SIZE(frame_list)) 515 nr_pages = ARRAY_SIZE(frame_list); 516 517 for (i = 0; i < nr_pages; i++) { > 518 page = alloc_page_for_balloon(gfp); 519 if (page == NULL) { 520 nr_pages = i; 521 state = BP_EAGAIN; 522 break; 523 } 524 list_add(&page->lru, &pages); 525 } 526 527 /* 528 * Ensure that ballooned highmem pages don't have kmaps. 529 * 530 * Do this before changing the p2m as kmap_flush_unused() 531 * reads PTEs to obtain pages (and hence needs the original 532 * p2m entry). 533 */ 534 kmap_flush_unused(); 535 536 /* 537 * Setup the frame, update direct mapping, invalidate P2M, 538 * and add to balloon. 539 */ 540 i = 0; 541 list_for_each_entry_safe(page, tmp, &pages, lru) { 542 frame_list[i++] = xen_page_to_gfn(page); 543 544 list_del(&page->lru); > 545 add_page_to_balloon(page); 546 } 547 548 flush_tlb_all(); 549 550 ret = xenmem_reservation_decrease(nr_pages, frame_list); 551 BUG_ON(ret != nr_pages); 552 553 balloon_stats.current_pages -= nr_pages; 554 555 return state; 556 } 557 -- 0-DAY CI Kernel Test Service https://01.org/lkp
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |