Linux-mm Archive mirror
 help / color / mirror / Atom feed
* [linux-next:master 2950/3150] mm/mremap.c:285:8: warning: variable 'pud' set but not used
@ 2021-05-17 16:19 kernel test robot
  2021-05-18 19:31 ` Souptick Joarder
  0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2021-05-17 16:19 UTC (permalink / raw
  To: Aneesh Kumar K.V; +Cc: kbuild-all, Linux Memory Management List, Andrew Morton

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   cd557f1c605fc5a2c0eb0b540610f50dc67dd849
commit: dbee97d1f49a2f2f1f5c26bf15151cc998572e89 [2950/3150] mm/mremap: use pmd/pud_poplulate to update page table entries
config: i386-randconfig-r006-20210517 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=dbee97d1f49a2f2f1f5c26bf15151cc998572e89
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout dbee97d1f49a2f2f1f5c26bf15151cc998572e89
        # save the attached .config to linux build tree
        make W=1 W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   mm/mremap.c: In function 'move_normal_pud':
>> mm/mremap.c:285:8: warning: variable 'pud' set but not used [-Wunused-but-set-variable]
     285 |  pud_t pud;
         |        ^~~


vim +/pud +285 mm/mremap.c

2c91bd4a4e2e53 Joel Fernandes (Google  2019-01-03  278) 
c49dd340180260 Kalesh Singh            2020-12-14  279  #ifdef CONFIG_HAVE_MOVE_PUD
c49dd340180260 Kalesh Singh            2020-12-14  280  static bool move_normal_pud(struct vm_area_struct *vma, unsigned long old_addr,
c49dd340180260 Kalesh Singh            2020-12-14  281  		  unsigned long new_addr, pud_t *old_pud, pud_t *new_pud)
c49dd340180260 Kalesh Singh            2020-12-14  282  {
c49dd340180260 Kalesh Singh            2020-12-14  283  	spinlock_t *old_ptl, *new_ptl;
c49dd340180260 Kalesh Singh            2020-12-14  284  	struct mm_struct *mm = vma->vm_mm;
c49dd340180260 Kalesh Singh            2020-12-14 @285  	pud_t pud;
c49dd340180260 Kalesh Singh            2020-12-14  286  
c49dd340180260 Kalesh Singh            2020-12-14  287  	/*
c49dd340180260 Kalesh Singh            2020-12-14  288  	 * The destination pud shouldn't be established, free_pgtables()
c49dd340180260 Kalesh Singh            2020-12-14  289  	 * should have released it.
c49dd340180260 Kalesh Singh            2020-12-14  290  	 */
c49dd340180260 Kalesh Singh            2020-12-14  291  	if (WARN_ON_ONCE(!pud_none(*new_pud)))
c49dd340180260 Kalesh Singh            2020-12-14  292  		return false;
c49dd340180260 Kalesh Singh            2020-12-14  293  
c49dd340180260 Kalesh Singh            2020-12-14  294  	/*
c49dd340180260 Kalesh Singh            2020-12-14  295  	 * We don't have to worry about the ordering of src and dst
c49dd340180260 Kalesh Singh            2020-12-14  296  	 * ptlocks because exclusive mmap_lock prevents deadlock.
c49dd340180260 Kalesh Singh            2020-12-14  297  	 */
c49dd340180260 Kalesh Singh            2020-12-14  298  	old_ptl = pud_lock(vma->vm_mm, old_pud);
c49dd340180260 Kalesh Singh            2020-12-14  299  	new_ptl = pud_lockptr(mm, new_pud);
c49dd340180260 Kalesh Singh            2020-12-14  300  	if (new_ptl != old_ptl)
c49dd340180260 Kalesh Singh            2020-12-14  301  		spin_lock_nested(new_ptl, SINGLE_DEPTH_NESTING);
c49dd340180260 Kalesh Singh            2020-12-14  302  
c49dd340180260 Kalesh Singh            2020-12-14  303  	/* Clear the pud */
c49dd340180260 Kalesh Singh            2020-12-14  304  	pud = *old_pud;
c49dd340180260 Kalesh Singh            2020-12-14  305  	pud_clear(old_pud);
c49dd340180260 Kalesh Singh            2020-12-14  306  
c49dd340180260 Kalesh Singh            2020-12-14  307  	VM_BUG_ON(!pud_none(*new_pud));
c49dd340180260 Kalesh Singh            2020-12-14  308  
dbee97d1f49a2f Aneesh Kumar K.V        2021-05-14  309  	pud_populate(mm, new_pud, (pmd_t *)pud_page_vaddr(pud));
c49dd340180260 Kalesh Singh            2020-12-14  310  	flush_tlb_range(vma, old_addr, old_addr + PUD_SIZE);
c49dd340180260 Kalesh Singh            2020-12-14  311  	if (new_ptl != old_ptl)
c49dd340180260 Kalesh Singh            2020-12-14  312  		spin_unlock(new_ptl);
c49dd340180260 Kalesh Singh            2020-12-14  313  	spin_unlock(old_ptl);
c49dd340180260 Kalesh Singh            2020-12-14  314  
c49dd340180260 Kalesh Singh            2020-12-14  315  	return true;
c49dd340180260 Kalesh Singh            2020-12-14  316  }
c49dd340180260 Kalesh Singh            2020-12-14  317  #else
c49dd340180260 Kalesh Singh            2020-12-14  318  static inline bool move_normal_pud(struct vm_area_struct *vma,
c49dd340180260 Kalesh Singh            2020-12-14  319  		unsigned long old_addr, unsigned long new_addr, pud_t *old_pud,
c49dd340180260 Kalesh Singh            2020-12-14  320  		pud_t *new_pud)
c49dd340180260 Kalesh Singh            2020-12-14  321  {
c49dd340180260 Kalesh Singh            2020-12-14  322  	return false;
c49dd340180260 Kalesh Singh            2020-12-14  323  }
c49dd340180260 Kalesh Singh            2020-12-14  324  #endif
c49dd340180260 Kalesh Singh            2020-12-14  325  

:::::: The code at line 285 was first introduced by commit
:::::: c49dd340180260c6239e453263a9a244da9a7c85 mm: speedup mremap on 1GB or larger regions

:::::: TO: Kalesh Singh <kaleshsingh@google.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [linux-next:master 2950/3150] mm/mremap.c:285:8: warning: variable 'pud' set but not used
  2021-05-17 16:19 [linux-next:master 2950/3150] mm/mremap.c:285:8: warning: variable 'pud' set but not used kernel test robot
@ 2021-05-18 19:31 ` Souptick Joarder
  0 siblings, 0 replies; 2+ messages in thread
From: Souptick Joarder @ 2021-05-18 19:31 UTC (permalink / raw
  To: kernel test robot
  Cc: Aneesh Kumar K.V, kbuild-all, Linux Memory Management List,
	Andrew Morton

On Mon, May 17, 2021 at 9:49 PM kernel test robot <lkp@intel.com> wrote:
>
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head:   cd557f1c605fc5a2c0eb0b540610f50dc67dd849
> commit: dbee97d1f49a2f2f1f5c26bf15151cc998572e89 [2950/3150] mm/mremap: use pmd/pud_poplulate to update page table entries
> config: i386-randconfig-r006-20210517 (attached as .config)
> compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
> reproduce (this is a W=1 build):
>         # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=dbee97d1f49a2f2f1f5c26bf15151cc998572e89
>         git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
>         git fetch --no-tags linux-next master
>         git checkout dbee97d1f49a2f2f1f5c26bf15151cc998572e89
>         # save the attached .config to linux build tree
>         make W=1 W=1 ARCH=i386
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All warnings (new ones prefixed by >>):
>
>    mm/mremap.c: In function 'move_normal_pud':
> >> mm/mremap.c:285:8: warning: variable 'pud' set but not used [-Wunused-but-set-variable]
>      285 |  pud_t pud;
>          |        ^~~
>
>
> vim +/pud +285 mm/mremap.c
>
> 2c91bd4a4e2e53 Joel Fernandes (Google  2019-01-03  278)
> c49dd340180260 Kalesh Singh            2020-12-14  279  #ifdef CONFIG_HAVE_MOVE_PUD
> c49dd340180260 Kalesh Singh            2020-12-14  280  static bool move_normal_pud(struct vm_area_struct *vma, unsigned long old_addr,
> c49dd340180260 Kalesh Singh            2020-12-14  281                    unsigned long new_addr, pud_t *old_pud, pud_t *new_pud)
> c49dd340180260 Kalesh Singh            2020-12-14  282  {
> c49dd340180260 Kalesh Singh            2020-12-14  283          spinlock_t *old_ptl, *new_ptl;
> c49dd340180260 Kalesh Singh            2020-12-14  284          struct mm_struct *mm = vma->vm_mm;
> c49dd340180260 Kalesh Singh            2020-12-14 @285          pud_t pud;
> c49dd340180260 Kalesh Singh            2020-12-14  286
> c49dd340180260 Kalesh Singh            2020-12-14  287          /*
> c49dd340180260 Kalesh Singh            2020-12-14  288           * The destination pud shouldn't be established, free_pgtables()
> c49dd340180260 Kalesh Singh            2020-12-14  289           * should have released it.
> c49dd340180260 Kalesh Singh            2020-12-14  290           */
> c49dd340180260 Kalesh Singh            2020-12-14  291          if (WARN_ON_ONCE(!pud_none(*new_pud)))
> c49dd340180260 Kalesh Singh            2020-12-14  292                  return false;
> c49dd340180260 Kalesh Singh            2020-12-14  293
> c49dd340180260 Kalesh Singh            2020-12-14  294          /*
> c49dd340180260 Kalesh Singh            2020-12-14  295           * We don't have to worry about the ordering of src and dst
> c49dd340180260 Kalesh Singh            2020-12-14  296           * ptlocks because exclusive mmap_lock prevents deadlock.
> c49dd340180260 Kalesh Singh            2020-12-14  297           */
> c49dd340180260 Kalesh Singh            2020-12-14  298          old_ptl = pud_lock(vma->vm_mm, old_pud);
> c49dd340180260 Kalesh Singh            2020-12-14  299          new_ptl = pud_lockptr(mm, new_pud);
> c49dd340180260 Kalesh Singh            2020-12-14  300          if (new_ptl != old_ptl)
> c49dd340180260 Kalesh Singh            2020-12-14  301                  spin_lock_nested(new_ptl, SINGLE_DEPTH_NESTING);
> c49dd340180260 Kalesh Singh            2020-12-14  302
> c49dd340180260 Kalesh Singh            2020-12-14  303          /* Clear the pud */
> c49dd340180260 Kalesh Singh            2020-12-14  304          pud = *old_pud;
> c49dd340180260 Kalesh Singh            2020-12-14  305          pud_clear(old_pud);
> c49dd340180260 Kalesh Singh            2020-12-14  306
> c49dd340180260 Kalesh Singh            2020-12-14  307          VM_BUG_ON(!pud_none(*new_pud));
> c49dd340180260 Kalesh Singh            2020-12-14  308
> dbee97d1f49a2f Aneesh Kumar K.V        2021-05-14  309          pud_populate(mm, new_pud, (pmd_t *)pud_page_vaddr(pud));

pud is passed to pud_page_vaddr().

> c49dd340180260 Kalesh Singh            2020-12-14  310          flush_tlb_range(vma, old_addr, old_addr + PUD_SIZE);
> c49dd340180260 Kalesh Singh            2020-12-14  311          if (new_ptl != old_ptl)
> c49dd340180260 Kalesh Singh            2020-12-14  312                  spin_unlock(new_ptl);
> c49dd340180260 Kalesh Singh            2020-12-14  313          spin_unlock(old_ptl);
> c49dd340180260 Kalesh Singh            2020-12-14  314
> c49dd340180260 Kalesh Singh            2020-12-14  315          return true;
> c49dd340180260 Kalesh Singh            2020-12-14  316  }
> c49dd340180260 Kalesh Singh            2020-12-14  317  #else
> c49dd340180260 Kalesh Singh            2020-12-14  318  static inline bool move_normal_pud(struct vm_area_struct *vma,
> c49dd340180260 Kalesh Singh            2020-12-14  319                  unsigned long old_addr, unsigned long new_addr, pud_t *old_pud,
> c49dd340180260 Kalesh Singh            2020-12-14  320                  pud_t *new_pud)
> c49dd340180260 Kalesh Singh            2020-12-14  321  {
> c49dd340180260 Kalesh Singh            2020-12-14  322          return false;
> c49dd340180260 Kalesh Singh            2020-12-14  323  }
> c49dd340180260 Kalesh Singh            2020-12-14  324  #endif
> c49dd340180260 Kalesh Singh            2020-12-14  325
>
> :::::: The code at line 285 was first introduced by commit
> :::::: c49dd340180260c6239e453263a9a244da9a7c85 mm: speedup mremap on 1GB or larger regions
>
> :::::: TO: Kalesh Singh <kaleshsingh@google.com>
> :::::: CC: Linus Torvalds <torvalds@linux-foundation.org>
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-05-18 19:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-17 16:19 [linux-next:master 2950/3150] mm/mremap.c:285:8: warning: variable 'pud' set but not used kernel test robot
2021-05-18 19:31 ` Souptick Joarder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).