[pci:pci/resource 6/10] arch/powerpc/mm/pgtable_32.c:92:1: note: in expansion of macro 'ioremap_wt'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git pci/resource
head:   77b15942fccf15e4e2733a16408c570995fa49ca
commit: eb18a3a645978f8f8f0febb36c66ef7ebd1c3957 [6/10] powerpc: Implement ioremap_wt() for PPC32
config: powerpc-lite5200b_defconfig (attached as .config)
compiler: powerpc-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout eb18a3a645978f8f8f0febb36c66ef7ebd1c3957
        # save the attached .config to linux build tree
        make.cross ARCH=powerpc 

All error/warnings (new ones prefixed by >>):

   In file included from arch/powerpc/include/asm/book3s/32/pgtable.h:94:0,
                    from arch/powerpc/include/asm/book3s/pgtable.h:7,
                    from arch/powerpc/include/asm/pgtable.h:16,
                    from include/linux/mm.h:68,
                    from arch/powerpc/mm/pgtable_32.c:25:
>> arch/powerpc/include/asm/io.h:758:45: error: expected declaration specifiers or '...' before '(' token
    #define ioremap_nocache(addr, size) ioremap((addr), (size))
                                                ^
>> include/asm-generic/iomap.h:78:20: note: in expansion of macro 'ioremap_nocache'
    #define ioremap_wt ioremap_nocache
                       ^~~~~~~~~~~~~~~
>> arch/powerpc/mm/pgtable_32.c:92:1: note: in expansion of macro 'ioremap_wt'
    ioremap_wt(phys_addr_t addr, unsigned long size)
    ^~~~~~~~~~
   arch/powerpc/include/asm/io.h:758:53: error: expected declaration specifiers or '...' before '(' token
    #define ioremap_nocache(addr, size) ioremap((addr), (size))
                                                        ^
>> include/asm-generic/iomap.h:78:20: note: in expansion of macro 'ioremap_nocache'
    #define ioremap_wt ioremap_nocache
                       ^~~~~~~~~~~~~~~
>> arch/powerpc/mm/pgtable_32.c:92:1: note: in expansion of macro 'ioremap_wt'
    ioremap_wt(phys_addr_t addr, unsigned long size)
    ^~~~~~~~~~
   In file included from include/linux/linkage.h:6:0,
                    from include/linux/kernel.h:6,
                    from arch/powerpc/mm/pgtable_32.c:22:
>> include/asm-generic/iomap.h:78:20: error: 'ioremap_nocache' undeclared here (not in a function)
    #define ioremap_wt ioremap_nocache
                       ^
   include/linux/export.h:65:16: note: in definition of macro '___EXPORT_SYMBOL'
     extern typeof(sym) sym;      \
                   ^~~
>> arch/powerpc/mm/pgtable_32.c:97:1: note: in expansion of macro 'EXPORT_SYMBOL'
    EXPORT_SYMBOL(ioremap_wt);
    ^~~~~~~~~~~~~
   arch/powerpc/mm/pgtable_32.c:97:15: note: in expansion of macro 'ioremap_wt'
    EXPORT_SYMBOL(ioremap_wt);
                  ^~~~~~~~~~

vim +/ioremap_wt +92 arch/powerpc/mm/pgtable_32.c

    16	 *  modify it under the terms of the GNU General Public License
    17	 *  as published by the Free Software Foundation; either version
    18	 *  2 of the License, or (at your option) any later version.
    19	 *
    20	 */
    21	
  > 22	#include <linux/kernel.h>
    23	#include <linux/module.h>
    24	#include <linux/types.h>
  > 25	#include <linux/mm.h>
    26	#include <linux/vmalloc.h>
    27	#include <linux/init.h>
    28	#include <linux/highmem.h>
    29	#include <linux/memblock.h>
    30	#include <linux/slab.h>
    31	
    32	#include <asm/pgtable.h>
    33	#include <asm/pgalloc.h>
    34	#include <asm/fixmap.h>
    35	#include <asm/io.h>
    36	#include <asm/setup.h>
    37	
    38	#include "mmu_decl.h"
    39	
    40	unsigned long ioremap_bot;
    41	EXPORT_SYMBOL(ioremap_bot);	/* aka VMALLOC_END */
    42	
    43	extern char etext[], _stext[], _sinittext[], _einittext[];
    44	
    45	__ref pte_t *pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address)
    46	{
    47		pte_t *pte;
    48	
    49		if (slab_is_available()) {
    50			pte = (pte_t *)__get_free_page(GFP_KERNEL|__GFP_ZERO);
    51		} else {
    52			pte = __va(memblock_alloc(PAGE_SIZE, PAGE_SIZE));
    53			if (pte)
    54				clear_page(pte);
    55		}
    56		return pte;
    57	}
    58	
    59	pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long address)
    60	{
    61		struct page *ptepage;
    62	
    63		gfp_t flags = GFP_KERNEL | __GFP_ZERO;
    64	
    65		ptepage = alloc_pages(flags, 0);
    66		if (!ptepage)
    67			return NULL;
    68		if (!pgtable_page_ctor(ptepage)) {
    69			__free_page(ptepage);
    70			return NULL;
    71		}
    72		return ptepage;
    73	}
    74	
    75	void __iomem *
    76	ioremap(phys_addr_t addr, unsigned long size)
    77	{
    78		return __ioremap_caller(addr, size, _PAGE_NO_CACHE | _PAGE_GUARDED,
    79					__builtin_return_address(0));
    80	}
    81	EXPORT_SYMBOL(ioremap);
    82	
    83	void __iomem *
    84	ioremap_wc(phys_addr_t addr, unsigned long size)
    85	{
    86		return __ioremap_caller(addr, size, _PAGE_NO_CACHE,
    87					__builtin_return_address(0));
    88	}
    89	EXPORT_SYMBOL(ioremap_wc);
    90	
    91	void __iomem *
  > 92	ioremap_wt(phys_addr_t addr, unsigned long size)
    93	{
    94		return __ioremap_caller(addr, size, _PAGE_WRITETHRU,
    95					__builtin_return_address(0));
    96	}
  > 97	EXPORT_SYMBOL(ioremap_wt);
    98	
    99	void __iomem *
   100	ioremap_prot(phys_addr_t addr, unsigned long size, unsigned long flags)

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

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux