Hi Chen,

[auto build test ERROR on v4.4-rc5]
[also build test ERROR on next-20151215]

url:    
https://github.com/0day-ci/linux/commits/Chen-Gang/include-asm-generic-Notice-about-80-columns-in-pgtable-no-h/20151215-221607
config: mips-xway_defconfig (attached as .config)
reproduce:
        wget 
https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
 -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=mips 

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

   In file included from include/linux/mm.h:55:0,
                    from include/linux/pid_namespace.h:6,
                    from include/linux/ptrace.h:8,
                    from arch/mips/mm/fault.c:16:
   arch/mips/mm/fault.c: In function '__do_page_fault':
>> arch/mips/include/asm/pgtable.h:241:33: error: expected expression before 
>> 'do'
    #define set_pmd(pmdptr, pmdval) do { *(pmdptr) = (pmdval); } while(0)
                                    ^
>> include/asm-generic/pgtable-nopmd.h:41:36: note: in expansion of macro 
>> 'set_pmd'
    #define set_pud(pudptr, pudval)   (set_pmd((pmd_t *)(pudptr), \
                                       ^
>> include/asm-generic/pgtable-nopud.h:36:36: note: in expansion of macro 
>> 'set_pud'
    #define set_pgd(pgdptr, pgdval)   (set_pud((pud_t *)(pgdptr), \
                                       ^
>> arch/mips/mm/fault.c:314:3: note: in expansion of macro 'set_pgd'
      set_pgd(pgd, *pgd_k);
      ^

vim +/set_pmd +41 include/asm-generic/pgtable-nopmd.h

    25   * The "pud_xxx()" functions here are trivial for a folded two-level
    26   * setup: the pmd is never bad, and a pmd always exists (as it's folded
    27   * into the pud entry)
    28   */
    29  static inline int pud_none(pud_t pud)           { return 0; }
    30  static inline int pud_bad(pud_t pud)            { return 0; }
    31  static inline int pud_present(pud_t pud)        { return 1; }
    32  static inline void pud_clear(pud_t *pud)        { }
    33  #define pmd_ERROR(pmd)                          (pud_ERROR((pmd).pud))
    34  
    35  #define pud_populate(mm, pmd, pte)              do { } while (0)
    36  
    37  /*
    38   * (pmds are folded into puds so this doesn't get actually called,
    39   * but the define is needed for a generic inline function.)
    40   */
  > 41  #define set_pud(pudptr, pudval)                 (set_pmd((pmd_t 
*)(pudptr), \
    42                                                          (pmd_t) { 
pudval }))
    43  
    44  static inline pmd_t * pmd_offset(pud_t * pud, unsigned long address)
    45  {
    46          return (pmd_t *)pud;
    47  }
    48  
    49  #define pmd_val(x)                              (pud_val((x).pud))

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

Attachment: .config.gz
Description: Binary data

Reply via email to