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 <l...@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-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to