From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4D1FDC33CB2 for ; Fri, 31 Jan 2020 03:50:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id EB68A205F4 for ; Fri, 31 Jan 2020 03:50:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727981AbgAaDuU (ORCPT ); Thu, 30 Jan 2020 22:50:20 -0500 Received: from mga07.intel.com ([134.134.136.100]:37572 "EHLO mga07.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727739AbgAaDuT (ORCPT ); Thu, 30 Jan 2020 22:50:19 -0500 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jan 2020 19:50:15 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,384,1574150400"; d="gz'50?scan'50,208,50";a="253223441" Received: from lkp-server01.sh.intel.com (HELO lkp-server01) ([10.239.97.150]) by fmsmga004.fm.intel.com with ESMTP; 30 Jan 2020 19:50:13 -0800 Received: from kbuild by lkp-server01 with local (Exim 4.89) (envelope-from ) id 1ixNJt-0008xO-6c; Fri, 31 Jan 2020 11:50:13 +0800 Date: Fri, 31 Jan 2020 11:49:46 +0800 From: kbuild test robot To: Christoph Hellwig Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org, Paul Walmsley , Anup Patel Subject: drivers//mmc/core/mmc_test.c:492:20: note: in expansion of macro 'virt_to_page' Message-ID: <202001311124.RwR6Egbv%lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="p5ytdjqrnqvxxeq7" Content-Disposition: inline User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --p5ytdjqrnqvxxeq7 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 35c222fd323629cf2e834eb8aff77058856ffdda commit: 6bd33e1ece528f67646db33bf97406b747dafda0 riscv: add nommu support date: 2 months ago config: riscv-randconfig-a001-20200131 (attached as .config) compiler: riscv64-linux-gcc (GCC) 7.5.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 6bd33e1ece528f67646db33bf97406b747dafda0 # save the attached .config to linux build tree GCC_VERSION=7.5.0 make.cross ARCH=riscv If you fix the issue, kindly add following tag Reported-by: kbuild test robot All error/warnings (new ones prefixed by >>): In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/radix-tree.h:14, from include/linux/idr.h:15, from include/linux/kernfs.h:13, from include/linux/sysfs.h:16, from include/linux/kobject.h:20, from include/linux/device.h:16, from include/linux/dmaengine.h:8, from drivers//dma/qcom/hidma_mgmt.c:8: include/linux/mm.h: In function 'virt_to_head_page': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'mem_map'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/mm.h:751:22: note: in expansion of macro 'virt_to_page' struct page *page = virt_to_page(x); ^~~~~~~~~~~~ include/asm-generic/memory_model.h:54:29: note: each undeclared identifier is reported only once for each function it appears in #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/mm.h:751:22: note: in expansion of macro 'virt_to_page' struct page *page = virt_to_page(x); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/thread_info.h:11:0, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/radix-tree.h:14, from include/linux/idr.h:15, from include/linux/kernfs.h:13, from include/linux/sysfs.h:16, from include/linux/kobject.h:20, from include/linux/device.h:16, from include/linux/dmaengine.h:8, from drivers//dma/qcom/hidma_mgmt.c:8: include/linux/mm.h: In function 'lowmem_page_address': include/asm-generic/memory_model.h:55:54: error: 'vmemmap' undeclared (first use in this function); did you mean 'mem_map'? #define __page_to_pfn(page) (unsigned long)((page) - vmemmap) ^ arch/riscv/include/asm/page.h:104:45: note: in definition of macro '__va' #define __va(x) ((void *)((unsigned long) (x) + va_pa_offset)) ^ arch/riscv/include/asm/page.h:107:27: note: in expansion of macro 'PFN_PHYS' #define pfn_to_phys(pfn) (PFN_PHYS(pfn)) ^~~~~~~~ arch/riscv/include/asm/page.h:110:32: note: in expansion of macro 'pfn_to_phys' #define pfn_to_virt(pfn) (__va(pfn_to_phys(pfn))) ^~~~~~~~~~~ arch/riscv/include/asm/page.h:113:29: note: in expansion of macro 'pfn_to_virt' #define page_to_virt(page) (pfn_to_virt(page_to_pfn(page))) ^~~~~~~~~~~ include/asm-generic/memory_model.h:81:21: note: in expansion of macro '__page_to_pfn' #define page_to_pfn __page_to_pfn ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:113:41: note: in expansion of macro 'page_to_pfn' #define page_to_virt(page) (pfn_to_virt(page_to_pfn(page))) ^~~~~~~~~~~ include/linux/mm.h:1321:9: note: in expansion of macro 'page_to_virt' return page_to_virt(page); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/radix-tree.h:14, from include/linux/idr.h:15, from include/linux/kernfs.h:13, from include/linux/sysfs.h:16, from include/linux/kobject.h:20, from include/linux/device.h:16, from include/linux/dmaengine.h:8, from drivers//dma/qcom/hidma_mgmt.c:8: include/linux/scatterlist.h: In function 'sg_set_buf': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/scatterlist.h:145:18: note: in expansion of macro 'virt_to_page' sg_set_page(sg, virt_to_page(buf), buflen, offset_in_page(buf)); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:12:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/radix-tree.h:14, from include/linux/idr.h:15, from include/linux/kernfs.h:13, from include/linux/sysfs.h:16, from include/linux/kobject.h:20, from include/linux/device.h:16, from include/linux/dmaengine.h:8, from drivers//dma/qcom/hidma_mgmt.c:8: include/linux/scatterlist.h: In function 'sg_phys': include/asm-generic/memory_model.h:55:54: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __page_to_pfn(page) (unsigned long)((page) - vmemmap) ^ include/linux/pfn.h:21:36: note: in definition of macro 'PFN_PHYS' #define PFN_PHYS(x) ((phys_addr_t)(x) << PAGE_SHIFT) ^ arch/riscv/include/asm/page.h:115:29: note: in expansion of macro 'pfn_to_phys' #define page_to_phys(page) (pfn_to_phys(page_to_pfn(page))) ^~~~~~~~~~~ include/asm-generic/memory_model.h:81:21: note: in expansion of macro '__page_to_pfn' #define page_to_pfn __page_to_pfn ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:115:41: note: in expansion of macro 'page_to_pfn' #define page_to_phys(page) (pfn_to_phys(page_to_pfn(page))) ^~~~~~~~~~~ include/linux/scatterlist.h:224:9: note: in expansion of macro 'page_to_phys' return page_to_phys(sg_page(sg)) + sg->offset; ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/radix-tree.h:14, from include/linux/idr.h:15, from include/linux/kernfs.h:13, from include/linux/sysfs.h:16, from include/linux/kobject.h:20, from include/linux/device.h:16, from include/linux/dmaengine.h:8, from drivers//dma/qcom/hidma_mgmt.c:8: include/linux/scatterlist.h: In function 'sg_page_iter_page': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ include/linux/mm.h:213:26: note: in expansion of macro 'pfn_to_page' #define nth_page(page,n) pfn_to_page(page_to_pfn((page)) + (n)) ^~~~~~~~~~~ include/linux/scatterlist.h:384:9: note: in expansion of macro 'nth_page' return nth_page(sg_page(piter->sg), piter->sg_pgoffset); ^~~~~~~~ include/linux/dma-mapping.h: In function 'dma_map_single_attrs': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/dma-mapping.h:587:33: note: in expansion of macro 'virt_to_page' return dma_map_page_attrs(dev, virt_to_page(ptr), offset_in_page(ptr), ^~~~~~~~~~~~ -- In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/mm.h: In function 'virt_to_head_page': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'mem_map'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/mm.h:751:22: note: in expansion of macro 'virt_to_page' struct page *page = virt_to_page(x); ^~~~~~~~~~~~ include/asm-generic/memory_model.h:54:29: note: each undeclared identifier is reported only once for each function it appears in #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/mm.h:751:22: note: in expansion of macro 'virt_to_page' struct page *page = virt_to_page(x); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/thread_info.h:11:0, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/mm.h: In function 'lowmem_page_address': include/asm-generic/memory_model.h:55:54: error: 'vmemmap' undeclared (first use in this function); did you mean 'mem_map'? #define __page_to_pfn(page) (unsigned long)((page) - vmemmap) ^ arch/riscv/include/asm/page.h:104:45: note: in definition of macro '__va' #define __va(x) ((void *)((unsigned long) (x) + va_pa_offset)) ^ arch/riscv/include/asm/page.h:107:27: note: in expansion of macro 'PFN_PHYS' #define pfn_to_phys(pfn) (PFN_PHYS(pfn)) ^~~~~~~~ arch/riscv/include/asm/page.h:110:32: note: in expansion of macro 'pfn_to_phys' #define pfn_to_virt(pfn) (__va(pfn_to_phys(pfn))) ^~~~~~~~~~~ arch/riscv/include/asm/page.h:113:29: note: in expansion of macro 'pfn_to_virt' #define page_to_virt(page) (pfn_to_virt(page_to_pfn(page))) ^~~~~~~~~~~ include/asm-generic/memory_model.h:81:21: note: in expansion of macro '__page_to_pfn' #define page_to_pfn __page_to_pfn ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:113:41: note: in expansion of macro 'page_to_pfn' #define page_to_virt(page) (pfn_to_virt(page_to_pfn(page))) ^~~~~~~~~~~ include/linux/mm.h:1321:9: note: in expansion of macro 'page_to_virt' return page_to_virt(page); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/highmem.h: In function 'kmap_to_page': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/highmem.h:75:9: note: in expansion of macro 'virt_to_page' return virt_to_page(addr); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/scatterlist.h: In function 'sg_set_buf': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:112:30: note: in expansion of macro 'pfn_to_page' #define virt_to_page(vaddr) (pfn_to_page(virt_to_pfn(vaddr))) ^~~~~~~~~~~ include/linux/scatterlist.h:145:18: note: in expansion of macro 'virt_to_page' sg_set_page(sg, virt_to_page(buf), buflen, offset_in_page(buf)); ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:12:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/scatterlist.h: In function 'sg_phys': include/asm-generic/memory_model.h:55:54: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __page_to_pfn(page) (unsigned long)((page) - vmemmap) ^ include/linux/pfn.h:21:36: note: in definition of macro 'PFN_PHYS' #define PFN_PHYS(x) ((phys_addr_t)(x) << PAGE_SHIFT) ^ arch/riscv/include/asm/page.h:115:29: note: in expansion of macro 'pfn_to_phys' #define page_to_phys(page) (pfn_to_phys(page_to_pfn(page))) ^~~~~~~~~~~ include/asm-generic/memory_model.h:81:21: note: in expansion of macro '__page_to_pfn' #define page_to_pfn __page_to_pfn ^~~~~~~~~~~~~ arch/riscv/include/asm/page.h:115:41: note: in expansion of macro 'page_to_pfn' #define page_to_phys(page) (pfn_to_phys(page_to_pfn(page))) ^~~~~~~~~~~ include/linux/scatterlist.h:224:9: note: in expansion of macro 'page_to_phys' return page_to_phys(sg_page(sg)) + sg->offset; ^~~~~~~~~~~~ In file included from arch/riscv/include/asm/page.h:131:0, from arch/riscv/include/asm/thread_info.h:11, from include/linux/thread_info.h:38, from include/asm-generic/preempt.h:5, from ./arch/riscv/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/hardirq.h:5, from include/linux/interrupt.h:11, from drivers//mfd/lp873x.c:16: include/linux/scatterlist.h: In function 'sg_page_iter_page': >> include/asm-generic/memory_model.h:54:29: error: 'vmemmap' undeclared (first use in this function); did you mean 'vm_mmap'? #define __pfn_to_page(pfn) (vmemmap + (pfn)) ^ include/asm-generic/memory_model.h:82:21: note: in expansion of macro '__pfn_to_page' #define pfn_to_page __pfn_to_page ^~~~~~~~~~~~~ include/linux/mm.h:213:26: note: in expansion of macro 'pfn_to_page' #define nth_page(page,n) pfn_to_page(page_to_pfn((page)) + (n)) ^~~~~~~~~~~ include/linux/scatterlist.h:384:9: note: in expansion of macro 'nth_page' return nth_page(sg_page(piter->sg), piter->sg_pgoffset); ^~~~~~~~ .. vim +/virt_to_page +492 drivers//mmc/core/mmc_test.c 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 453 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 454 /* 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 455 * Map memory into a scatterlist so that no pages are contiguous. Allow the 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 456 * same memory to be mapped more than once. 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 457 */ 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 458 static int mmc_test_map_sg_max_scatter(struct mmc_test_mem *mem, fec4dcce237c71 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 459 unsigned long sz, 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 460 struct scatterlist *sglist, 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 461 unsigned int max_segs, c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 462 unsigned int max_seg_sz, 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 463 unsigned int *sg_len) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 464 { 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 465 struct scatterlist *sg = NULL; fec4dcce237c71 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 466 unsigned int i = mem->cnt, cnt; fec4dcce237c71 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 467 unsigned long len; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 468 void *base, *addr, *last_addr = NULL; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 469 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 470 sg_init_table(sglist, max_segs); 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 471 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 472 *sg_len = 0; c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 473 while (sz) { 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 474 base = page_address(mem->arr[--i].page); 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 475 cnt = 1 << mem->arr[i].order; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 476 while (sz && cnt) { 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 477 addr = base + PAGE_SIZE * --cnt; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 478 if (last_addr && last_addr + PAGE_SIZE == addr) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 479 continue; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 480 last_addr = addr; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 481 len = PAGE_SIZE; c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 482 if (len > max_seg_sz) c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 483 len = max_seg_sz; c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 484 if (len > sz) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 485 len = sz; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 486 if (sg) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 487 sg = sg_next(sg); 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 488 else 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 489 sg = sglist; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 490 if (!sg) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 491 return -EINVAL; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 @492 sg_set_page(sg, virt_to_page(addr), len, 0); 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 493 sz -= len; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 494 *sg_len += 1; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 495 } c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 496 if (i == 0) c8c8c1bdbe585d drivers/mmc/card/mmc_test.c Adrian Hunter 2010-09-10 497 i = mem->cnt; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 498 } 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 499 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 500 if (sg) 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 501 sg_mark_end(sg); 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 502 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 503 return 0; 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 504 } 64f7120d890b89 drivers/mmc/card/mmc_test.c Adrian Hunter 2010-08-11 505 :::::: The code at line 492 was first introduced by commit :::::: 64f7120d890b892ed2c82c87bed958902e809075 mmc_test: add performance tests :::::: TO: Adrian Hunter :::::: CC: Linus Torvalds --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation --p5ytdjqrnqvxxeq7 Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 AQA= --p5ytdjqrnqvxxeq7--