Messages in this thread | | | Date | Thu, 21 May 2020 05:47:49 +0800 | From | kbuild test robot <> | Subject | Re: [PATCH] x86/Hyper-V: Support for free page reporting |
| |
Hi Sunil,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on next-20200519] [cannot apply to tip/auto-latest linus/master tip/x86/core asm-generic/master linux/master v5.7-rc6 v5.7-rc5 v5.7-rc4 v5.7-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Sunil-Muthuswamy/x86-Hyper-V-Support-for-free-page-reporting/20200520-024140 base: fb57b1fabcb28f358901b2df90abd2b48abc1ca8 config: x86_64-allmodconfig (attached as .config) compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 reproduce: # apt-get install sparse # sparse version: v0.6.1-193-gb8fad4bc-dirty # save the attached .config to linux build tree make C=1 ARCH=x86_64 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/hv/hv_balloon.c:1585:43: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void const [noderef] <asn:3> *__vpp_verify @@ got const [noderef] <asn:3> *__vpp_verify @@ >> drivers/hv/hv_balloon.c:1585:43: sparse: expected void const [noderef] <asn:3> *__vpp_verify >> drivers/hv/hv_balloon.c:1585:43: sparse: got void [noderef] <asn:3> **
vim +1585 drivers/hv/hv_balloon.c
1572 1573 #ifdef CONFIG_PAGE_REPORTING 1574 static int hv_free_page_report(struct page_reporting_dev_info *pr_dev_info, 1575 struct scatterlist *sgl, unsigned int nents) 1576 { 1577 unsigned long flags; 1578 struct hv_memory_hint *hint; 1579 int i; 1580 u64 status; 1581 struct scatterlist *sg; 1582 1583 WARN_ON(nents > HV_MAX_GPA_PAGE_RANGES); 1584 local_irq_save(flags); > 1585 hint = *(struct hv_memory_hint **)this_cpu_ptr(hyperv_pcpu_input_arg); 1586 if (!hint) { 1587 local_irq_restore(flags); 1588 return -ENOSPC; 1589 } 1590 1591 hint->type = HV_EXT_MEMORY_HEAT_HINT_TYPE_COLD_DISCARD; 1592 hint->reserved = 0; 1593 for (i = 0, sg = sgl; sg; sg = sg_next(sg), i++) { 1594 int order; 1595 union hv_gpa_page_range *range; 1596 1597 order = get_order(sg->length); 1598 range = &hint->ranges[i]; 1599 range->address_space = 0; 1600 range->page.largepage = 1; 1601 range->page.additional_pages = (1ull << (order - 9)) - 1; 1602 range->base_large_pfn = page_to_pfn(sg_page(sg)) >> 9; 1603 } 1604 1605 status = hv_do_rep_hypercall(HV_EXT_CALL_MEMORY_HEAT_HINT, nents, 0, 1606 hint, NULL); 1607 local_irq_restore(flags); 1608 status &= HV_HYPERCALL_RESULT_MASK; 1609 if (status != HV_STATUS_SUCCESS) { 1610 pr_err("Cold memory discard hypercall failed with status %llx\n", 1611 status); 1612 return -1; 1613 } 1614 1615 return 0; 1616 } 1617
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [unhandled content-type:application/gzip] | |