lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 25 Nov 2019 15:04:33 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Wei Hu <weh@...rosoft.com>
Cc:     kbuild-all@...ts.01.org, b.zolnierkie@...sung.com,
        kys@...rosoft.com, haiyangz@...rosoft.com, sthemmin@...rosoft.com,
        sashal@...nel.org, hch@....de, m.szyprowski@...sung.com,
        mchehab+samsung@...nel.org, sam@...nborg.org,
        gregkh@...uxfoundation.org, alexandre.belloni@...tlin.com,
        info@...ux.net, arnd@...db.de, dri-devel@...ts.freedesktop.org,
        linux-fbdev@...r.kernel.org, linux-kernel@...r.kernel.org,
        linux-hyperv@...r.kernel.org, decui@...rosoft.com,
        mikelley@...rosoft.com, Wei Hu <weh@...rosoft.com>
Subject: Re: [PATCH v2] video: hyperv: hyperv_fb: Use physical memory for fb
 on HyperV Gen 1 VMs.

Hi Wei,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20191122]
[cannot apply to linus/master v5.4-rc8 v5.4-rc7 v5.4-rc6 v5.4]
[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/Wei-Hu/video-hyperv-hyperv_fb-Use-physical-memory-for-fb-on-HyperV-Gen-1-VMs/20191124-163533
base:    b9d3d01405061bb42358fe53f824e894a1922ced
config: i386-allmodconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-14) 7.4.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

   In file included from include/linux/printk.h:7:0,
                    from include/linux/kernel.h:15,
                    from include/linux/list.h:9,
                    from include/linux/module.h:12,
                    from drivers/video/fbdev/hyperv_fb.c:48:
   drivers/video/fbdev/hyperv_fb.c: In function 'hvfb_get_phymem':
   include/linux/kern_levels.h:5:18: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 3 has type 'phys_addr_t {aka unsigned int}' [-Wformat=]
    #define KERN_SOH "\001"  /* ASCII Start Of Header */
                     ^
   include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH'
    #define KERN_INFO KERN_SOH "6" /* informational */
                      ^~~~~~~~
   include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO'
     printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
            ^~~~~~~~~
>> drivers/video/fbdev/hyperv_fb.c:1003:2: note: in expansion of macro 'pr_info'
     pr_info("Allocated %d pages starts at physical addr 0x%llx\n",
     ^~~~~~~

vim +/pr_info +1003 drivers/video/fbdev/hyperv_fb.c

   955	
   956	/*
   957	 * Allocate enough contiguous physical memory.
   958	 * Return physical address if succeeded or -1 if failed.
   959	 */
   960	static phys_addr_t hvfb_get_phymem(struct hv_device *hdev,
   961					   unsigned int request_size)
   962	{
   963		struct page *page = NULL;
   964		dma_addr_t dma_handle;
   965		void *vmem;
   966		unsigned int request_pages;
   967		phys_addr_t paddr = 0;
   968		unsigned int order = get_order(request_size);
   969	
   970		if (request_size == 0)
   971			return -1;
   972	
   973		/* Try to call alloc_pages if the size is less than 2^MAX_ORDER */
   974		if (order < MAX_ORDER) {
   975			page = alloc_pages(GFP_KERNEL | __GFP_ZERO, order);
   976			if (!page)
   977				return -1;
   978	
   979			paddr = (page_to_pfn(page) << PAGE_SHIFT);
   980			request_pages = (1 << order);
   981			goto get_phymem1;
   982		}
   983	
   984		/* Allocate from CMA */
   985		if (hdev == NULL)
   986			return -1;
   987	
   988		hdev->device.coherent_dma_mask = DMA_BIT_MASK(64);
   989	
   990		request_pages = (round_up(request_size, PAGE_SIZE) >> PAGE_SHIFT);
   991	
   992		vmem = dma_alloc_coherent(&hdev->device,
   993					 request_pages * PAGE_SIZE,
   994					 &dma_handle,
   995					 GFP_KERNEL | __GFP_NOWARN);
   996	
   997		if (!vmem)
   998			return -1;
   999	
  1000		paddr = virt_to_phys(vmem);
  1001	
  1002	get_phymem1:
> 1003		pr_info("Allocated %d pages starts at physical addr 0x%llx\n",
  1004			request_pages, paddr);
  1005	
  1006		return paddr;
  1007	}
  1008	

---
0-DAY kernel test infrastructure                 Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (71011 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ