All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Matthew Wilcox <willy@infradead.org>
Cc: kbuild-all@01.org, linux-mm@kvack.org,
	"zhangyi (F)" <yi.zhang@huawei.com>,
	linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH v2] mm: Add unmap_mapping_pages
Date: Fri, 8 Dec 2017 10:10:55 +0800	[thread overview]
Message-ID: <201712080802.7Qlq9cj1%fengguang.wu@intel.com> (raw)
In-Reply-To: <20171205154453.GD28760@bombadil.infradead.org>

[-- Attachment #1: Type: text/plain, Size: 8840 bytes --]

Hi Matthew,

I love your patch! Yet something to improve:

[auto build test ERROR on mmotm/master]
[also build test ERROR on v4.15-rc2 next-20171207]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Matthew-Wilcox/mm-Add-unmap_mapping_pages/20171208-072634
base:   git://git.cmpxchg.org/linux-mmotm.git master
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.2.0-12) 7.2.1 20171025
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

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

   In file included from include/linux/memcontrol.h:29:0,
                    from include/linux/swap.h:9,
                    from include/linux/suspend.h:5,
                    from arch/x86/kernel/asm-offsets.c:13:
   include/linux/mm.h: In function 'unmap_shared_mapping_range':
>> include/linux/mm.h:1328:2: error: implicit declaration of function 'unmap_mapping_range'; did you mean 'unmap_shared_mapping_range'? [-Werror=implicit-function-declaration]
     unmap_mapping_range(mapping, holebegin, holelen, 0);
     ^~~~~~~~~~~~~~~~~~~
     unmap_shared_mapping_range
   include/linux/mm.h: At top level:
>> include/linux/mm.h:1347:6: warning: conflicting types for 'unmap_mapping_range'
    void unmap_mapping_range(struct address_space *mapping,
         ^~~~~~~~~~~~~~~~~~~
   include/linux/mm.h:1328:2: note: previous implicit declaration of 'unmap_mapping_range' was here
     unmap_mapping_range(mapping, holebegin, holelen, 0);
     ^~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
   make[2]: *** [arch/x86/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [sub-make] Error 2

vim +1328 include/linux/mm.h

e6473092bd Matt Mackall                  2008-02-04  1307  
2165009bdf Dave Hansen                   2008-06-12  1308  int walk_page_range(unsigned long addr, unsigned long end,
2165009bdf Dave Hansen                   2008-06-12  1309  		struct mm_walk *walk);
900fc5f197 Naoya Horiguchi               2015-02-11  1310  int walk_page_vma(struct vm_area_struct *vma, struct mm_walk *walk);
42b7772812 Jan Beulich                   2008-07-23  1311  void free_pgd_range(struct mmu_gather *tlb, unsigned long addr,
3bf5ee9564 Hugh Dickins                  2005-04-19  1312  		unsigned long end, unsigned long floor, unsigned long ceiling);
^1da177e4c Linus Torvalds                2005-04-16  1313  int copy_page_range(struct mm_struct *dst, struct mm_struct *src,
^1da177e4c Linus Torvalds                2005-04-16  1314  			struct vm_area_struct *vma);
0979639595 Ross Zwisler                  2017-01-10  1315  int follow_pte_pmd(struct mm_struct *mm, unsigned long address,
a4d1a88525 J�r�me Glisse                 2017-08-31  1316  			     unsigned long *start, unsigned long *end,
0979639595 Ross Zwisler                  2017-01-10  1317  			     pte_t **ptepp, pmd_t **pmdpp, spinlock_t **ptlp);
3b6748e2dd Johannes Weiner               2009-06-16  1318  int follow_pfn(struct vm_area_struct *vma, unsigned long address,
3b6748e2dd Johannes Weiner               2009-06-16  1319  	unsigned long *pfn);
d87fe6607c venkatesh.pallipadi@intel.com 2008-12-19  1320  int follow_phys(struct vm_area_struct *vma, unsigned long address,
d87fe6607c venkatesh.pallipadi@intel.com 2008-12-19  1321  		unsigned int flags, unsigned long *prot, resource_size_t *phys);
28b2ee20c7 Rik van Riel                  2008-07-23  1322  int generic_access_phys(struct vm_area_struct *vma, unsigned long addr,
28b2ee20c7 Rik van Riel                  2008-07-23  1323  			void *buf, int len, int write);
^1da177e4c Linus Torvalds                2005-04-16  1324  
^1da177e4c Linus Torvalds                2005-04-16  1325  static inline void unmap_shared_mapping_range(struct address_space *mapping,
^1da177e4c Linus Torvalds                2005-04-16  1326  		loff_t const holebegin, loff_t const holelen)
^1da177e4c Linus Torvalds                2005-04-16  1327  {
^1da177e4c Linus Torvalds                2005-04-16 @1328  	unmap_mapping_range(mapping, holebegin, holelen, 0);
^1da177e4c Linus Torvalds                2005-04-16  1329  }
^1da177e4c Linus Torvalds                2005-04-16  1330  
7caef26767 Kirill A. Shutemov            2013-09-12  1331  extern void truncate_pagecache(struct inode *inode, loff_t new);
2c27c65ed0 Christoph Hellwig             2010-06-04  1332  extern void truncate_setsize(struct inode *inode, loff_t newsize);
90a8020278 Jan Kara                      2014-10-01  1333  void pagecache_isize_extended(struct inode *inode, loff_t from, loff_t to);
623e3db9f9 Hugh Dickins                  2012-03-28  1334  void truncate_pagecache_range(struct inode *inode, loff_t offset, loff_t end);
750b4987b0 Nick Piggin                   2009-09-16  1335  int truncate_inode_page(struct address_space *mapping, struct page *page);
2571873621 Andi Kleen                    2009-09-16  1336  int generic_error_remove_page(struct address_space *mapping, struct page *page);
83f786680a Wu Fengguang                  2009-09-16  1337  int invalidate_inode_page(struct page *page);
83f786680a Wu Fengguang                  2009-09-16  1338  
7ee1dd3fee David Howells                 2006-01-06  1339  #ifdef CONFIG_MMU
dcddffd41d Kirill A. Shutemov            2016-07-26  1340  extern int handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
dcddffd41d Kirill A. Shutemov            2016-07-26  1341  		unsigned int flags);
5c723ba5b7 Peter Zijlstra                2011-07-27  1342  extern int fixup_user_fault(struct task_struct *tsk, struct mm_struct *mm,
4a9e1cda27 Dominik Dingel                2016-01-15  1343  			    unsigned long address, unsigned int fault_flags,
4a9e1cda27 Dominik Dingel                2016-01-15  1344  			    bool *unlocked);
dcd7006c23 Matthew Wilcox                2017-12-05  1345  void unmap_mapping_pages(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1346  		pgoff_t start, pgoff_t nr, bool even_cows);
dcd7006c23 Matthew Wilcox                2017-12-05 @1347  void unmap_mapping_range(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1348  		loff_t const holebegin, loff_t const holelen, int even_cows);
7ee1dd3fee David Howells                 2006-01-06  1349  #else
dcddffd41d Kirill A. Shutemov            2016-07-26  1350  static inline int handle_mm_fault(struct vm_area_struct *vma,
dcddffd41d Kirill A. Shutemov            2016-07-26  1351  		unsigned long address, unsigned int flags)
7ee1dd3fee David Howells                 2006-01-06  1352  {
7ee1dd3fee David Howells                 2006-01-06  1353  	/* should never happen if there's no MMU */
7ee1dd3fee David Howells                 2006-01-06  1354  	BUG();
7ee1dd3fee David Howells                 2006-01-06  1355  	return VM_FAULT_SIGBUS;
7ee1dd3fee David Howells                 2006-01-06  1356  }
5c723ba5b7 Peter Zijlstra                2011-07-27  1357  static inline int fixup_user_fault(struct task_struct *tsk,
5c723ba5b7 Peter Zijlstra                2011-07-27  1358  		struct mm_struct *mm, unsigned long address,
4a9e1cda27 Dominik Dingel                2016-01-15  1359  		unsigned int fault_flags, bool *unlocked)
5c723ba5b7 Peter Zijlstra                2011-07-27  1360  {
5c723ba5b7 Peter Zijlstra                2011-07-27  1361  	/* should never happen if there's no MMU */
5c723ba5b7 Peter Zijlstra                2011-07-27  1362  	BUG();
5c723ba5b7 Peter Zijlstra                2011-07-27  1363  	return -EFAULT;
5c723ba5b7 Peter Zijlstra                2011-07-27  1364  }
dcd7006c23 Matthew Wilcox                2017-12-05  1365  static inline void unmap_mapping_pages(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1366  		pgoff_t start, pgoff_t nr, bool even_cows) { }
dcd7006c23 Matthew Wilcox                2017-12-05  1367  static inline void unmap_mapping_range(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1368  		loff_t const holebegin, loff_t const holelen, int even_cows) { }
7ee1dd3fee David Howells                 2006-01-06  1369  #endif
f33ea7f404 Nick Piggin                   2005-08-03  1370  

:::::: The code at line 1328 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 6795 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: Matthew Wilcox <willy@infradead.org>
Cc: kbuild-all@01.org, linux-mm@kvack.org,
	"zhangyi (F)" <yi.zhang@huawei.com>,
	linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH v2] mm: Add unmap_mapping_pages
Date: Fri, 8 Dec 2017 10:10:55 +0800	[thread overview]
Message-ID: <201712080802.7Qlq9cj1%fengguang.wu@intel.com> (raw)
In-Reply-To: <20171205154453.GD28760@bombadil.infradead.org>

[-- Attachment #1: Type: text/plain, Size: 8836 bytes --]

Hi Matthew,

I love your patch! Yet something to improve:

[auto build test ERROR on mmotm/master]
[also build test ERROR on v4.15-rc2 next-20171207]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Matthew-Wilcox/mm-Add-unmap_mapping_pages/20171208-072634
base:   git://git.cmpxchg.org/linux-mmotm.git master
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.2.0-12) 7.2.1 20171025
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

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

   In file included from include/linux/memcontrol.h:29:0,
                    from include/linux/swap.h:9,
                    from include/linux/suspend.h:5,
                    from arch/x86/kernel/asm-offsets.c:13:
   include/linux/mm.h: In function 'unmap_shared_mapping_range':
>> include/linux/mm.h:1328:2: error: implicit declaration of function 'unmap_mapping_range'; did you mean 'unmap_shared_mapping_range'? [-Werror=implicit-function-declaration]
     unmap_mapping_range(mapping, holebegin, holelen, 0);
     ^~~~~~~~~~~~~~~~~~~
     unmap_shared_mapping_range
   include/linux/mm.h: At top level:
>> include/linux/mm.h:1347:6: warning: conflicting types for 'unmap_mapping_range'
    void unmap_mapping_range(struct address_space *mapping,
         ^~~~~~~~~~~~~~~~~~~
   include/linux/mm.h:1328:2: note: previous implicit declaration of 'unmap_mapping_range' was here
     unmap_mapping_range(mapping, holebegin, holelen, 0);
     ^~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
   make[2]: *** [arch/x86/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [sub-make] Error 2

vim +1328 include/linux/mm.h

e6473092bd Matt Mackall                  2008-02-04  1307  
2165009bdf Dave Hansen                   2008-06-12  1308  int walk_page_range(unsigned long addr, unsigned long end,
2165009bdf Dave Hansen                   2008-06-12  1309  		struct mm_walk *walk);
900fc5f197 Naoya Horiguchi               2015-02-11  1310  int walk_page_vma(struct vm_area_struct *vma, struct mm_walk *walk);
42b7772812 Jan Beulich                   2008-07-23  1311  void free_pgd_range(struct mmu_gather *tlb, unsigned long addr,
3bf5ee9564 Hugh Dickins                  2005-04-19  1312  		unsigned long end, unsigned long floor, unsigned long ceiling);
^1da177e4c Linus Torvalds                2005-04-16  1313  int copy_page_range(struct mm_struct *dst, struct mm_struct *src,
^1da177e4c Linus Torvalds                2005-04-16  1314  			struct vm_area_struct *vma);
0979639595 Ross Zwisler                  2017-01-10  1315  int follow_pte_pmd(struct mm_struct *mm, unsigned long address,
a4d1a88525 Jerome Glisse                 2017-08-31  1316  			     unsigned long *start, unsigned long *end,
0979639595 Ross Zwisler                  2017-01-10  1317  			     pte_t **ptepp, pmd_t **pmdpp, spinlock_t **ptlp);
3b6748e2dd Johannes Weiner               2009-06-16  1318  int follow_pfn(struct vm_area_struct *vma, unsigned long address,
3b6748e2dd Johannes Weiner               2009-06-16  1319  	unsigned long *pfn);
d87fe6607c venkatesh.pallipadi@intel.com 2008-12-19  1320  int follow_phys(struct vm_area_struct *vma, unsigned long address,
d87fe6607c venkatesh.pallipadi@intel.com 2008-12-19  1321  		unsigned int flags, unsigned long *prot, resource_size_t *phys);
28b2ee20c7 Rik van Riel                  2008-07-23  1322  int generic_access_phys(struct vm_area_struct *vma, unsigned long addr,
28b2ee20c7 Rik van Riel                  2008-07-23  1323  			void *buf, int len, int write);
^1da177e4c Linus Torvalds                2005-04-16  1324  
^1da177e4c Linus Torvalds                2005-04-16  1325  static inline void unmap_shared_mapping_range(struct address_space *mapping,
^1da177e4c Linus Torvalds                2005-04-16  1326  		loff_t const holebegin, loff_t const holelen)
^1da177e4c Linus Torvalds                2005-04-16  1327  {
^1da177e4c Linus Torvalds                2005-04-16 @1328  	unmap_mapping_range(mapping, holebegin, holelen, 0);
^1da177e4c Linus Torvalds                2005-04-16  1329  }
^1da177e4c Linus Torvalds                2005-04-16  1330  
7caef26767 Kirill A. Shutemov            2013-09-12  1331  extern void truncate_pagecache(struct inode *inode, loff_t new);
2c27c65ed0 Christoph Hellwig             2010-06-04  1332  extern void truncate_setsize(struct inode *inode, loff_t newsize);
90a8020278 Jan Kara                      2014-10-01  1333  void pagecache_isize_extended(struct inode *inode, loff_t from, loff_t to);
623e3db9f9 Hugh Dickins                  2012-03-28  1334  void truncate_pagecache_range(struct inode *inode, loff_t offset, loff_t end);
750b4987b0 Nick Piggin                   2009-09-16  1335  int truncate_inode_page(struct address_space *mapping, struct page *page);
2571873621 Andi Kleen                    2009-09-16  1336  int generic_error_remove_page(struct address_space *mapping, struct page *page);
83f786680a Wu Fengguang                  2009-09-16  1337  int invalidate_inode_page(struct page *page);
83f786680a Wu Fengguang                  2009-09-16  1338  
7ee1dd3fee David Howells                 2006-01-06  1339  #ifdef CONFIG_MMU
dcddffd41d Kirill A. Shutemov            2016-07-26  1340  extern int handle_mm_fault(struct vm_area_struct *vma, unsigned long address,
dcddffd41d Kirill A. Shutemov            2016-07-26  1341  		unsigned int flags);
5c723ba5b7 Peter Zijlstra                2011-07-27  1342  extern int fixup_user_fault(struct task_struct *tsk, struct mm_struct *mm,
4a9e1cda27 Dominik Dingel                2016-01-15  1343  			    unsigned long address, unsigned int fault_flags,
4a9e1cda27 Dominik Dingel                2016-01-15  1344  			    bool *unlocked);
dcd7006c23 Matthew Wilcox                2017-12-05  1345  void unmap_mapping_pages(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1346  		pgoff_t start, pgoff_t nr, bool even_cows);
dcd7006c23 Matthew Wilcox                2017-12-05 @1347  void unmap_mapping_range(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1348  		loff_t const holebegin, loff_t const holelen, int even_cows);
7ee1dd3fee David Howells                 2006-01-06  1349  #else
dcddffd41d Kirill A. Shutemov            2016-07-26  1350  static inline int handle_mm_fault(struct vm_area_struct *vma,
dcddffd41d Kirill A. Shutemov            2016-07-26  1351  		unsigned long address, unsigned int flags)
7ee1dd3fee David Howells                 2006-01-06  1352  {
7ee1dd3fee David Howells                 2006-01-06  1353  	/* should never happen if there's no MMU */
7ee1dd3fee David Howells                 2006-01-06  1354  	BUG();
7ee1dd3fee David Howells                 2006-01-06  1355  	return VM_FAULT_SIGBUS;
7ee1dd3fee David Howells                 2006-01-06  1356  }
5c723ba5b7 Peter Zijlstra                2011-07-27  1357  static inline int fixup_user_fault(struct task_struct *tsk,
5c723ba5b7 Peter Zijlstra                2011-07-27  1358  		struct mm_struct *mm, unsigned long address,
4a9e1cda27 Dominik Dingel                2016-01-15  1359  		unsigned int fault_flags, bool *unlocked)
5c723ba5b7 Peter Zijlstra                2011-07-27  1360  {
5c723ba5b7 Peter Zijlstra                2011-07-27  1361  	/* should never happen if there's no MMU */
5c723ba5b7 Peter Zijlstra                2011-07-27  1362  	BUG();
5c723ba5b7 Peter Zijlstra                2011-07-27  1363  	return -EFAULT;
5c723ba5b7 Peter Zijlstra                2011-07-27  1364  }
dcd7006c23 Matthew Wilcox                2017-12-05  1365  static inline void unmap_mapping_pages(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1366  		pgoff_t start, pgoff_t nr, bool even_cows) { }
dcd7006c23 Matthew Wilcox                2017-12-05  1367  static inline void unmap_mapping_range(struct address_space *mapping,
dcd7006c23 Matthew Wilcox                2017-12-05  1368  		loff_t const holebegin, loff_t const holelen, int even_cows) { }
7ee1dd3fee David Howells                 2006-01-06  1369  #endif
f33ea7f404 Nick Piggin                   2005-08-03  1370  

:::::: The code at line 1328 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 6795 bytes --]

  parent reply	other threads:[~2017-12-08  2:10 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-05 15:44 [PATCH v2] mm: Add unmap_mapping_pages Matthew Wilcox
2017-12-05 15:44 ` Matthew Wilcox
2017-12-05 23:01 ` Ross Zwisler
2017-12-06 14:26 ` [PATCH v3] " Matthew Wilcox
2017-12-06 14:26   ` Matthew Wilcox
2017-12-06 18:26   ` Ross Zwisler
2017-12-10 10:55   ` Kirill A. Shutemov
2017-12-08  2:10 ` kbuild test robot [this message]
2017-12-08  2:10   ` [PATCH v2] " kbuild test robot
2017-12-08  2:38 ` kbuild test robot
2017-12-08  2:38   ` kbuild test robot
2017-12-09  1:36   ` Matthew Wilcox
2017-12-09  2:42     ` Fengguang Wu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201712080802.7Qlq9cj1%fengguang.wu@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@01.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=willy@infradead.org \
    --cc=yi.zhang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.