linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Michal Hocko <mhocko@kernel.org>
Cc: kbuild-all@01.org, Andrew Morton <akpm@linux-foundation.org>,
	David Rientjes <rientjes@google.com>,
	Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>,
	Oleg Nesterov <oleg@redhat.com>, Hugh Dickins <hughd@google.com>,
	Andrea Arcangeli <aarcange@redhat.com>,
	linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org>,
	Michal Hocko <mhocko@suse.com>
Subject: Re: [PATCH] mm, oom: allow oom reaper to race with exit_mmap
Date: Tue, 25 Jul 2017 00:42:05 +0800	[thread overview]
Message-ID: <201707250036.3NQRglrp%fengguang.wu@intel.com> (raw)
In-Reply-To: <20170724072332.31903-1-mhocko@kernel.org>

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

Hi Michal,

[auto build test ERROR on mmotm/master]
[also build test ERROR on v4.13-rc2 next-20170724]
[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/Michal-Hocko/mm-oom-allow-oom-reaper-to-race-with-exit_mmap/20170724-233159
base:   git://git.cmpxchg.org/linux-mmotm.git master
config: x86_64-randconfig-x016-201730 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

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

   mm/oom_kill.c: In function '__oom_reap_task_mm':
>> mm/oom_kill.c:523:9: error: 'ret' undeclared (first use in this function)
     return ret;
            ^~~
   mm/oom_kill.c:523:9: note: each undeclared identifier is reported only once for each function it appears in
>> mm/oom_kill.c:524:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^

vim +/ret +523 mm/oom_kill.c

03049269d Michal Hocko       2016-03-25  468  
7ebffa455 Tetsuo Handa       2016-10-07  469  static bool __oom_reap_task_mm(struct task_struct *tsk, struct mm_struct *mm)
aac453635 Michal Hocko       2016-03-25  470  {
aac453635 Michal Hocko       2016-03-25  471  	struct mmu_gather tlb;
aac453635 Michal Hocko       2016-03-25  472  	struct vm_area_struct *vma;
e2fe14564 Michal Hocko       2016-05-27  473  
aac453635 Michal Hocko       2016-03-25  474  	if (!down_read_trylock(&mm->mmap_sem)) {
fa60da35c Andrew Morton      2017-07-14  475  		trace_skip_task_reaping(tsk->pid);
ed7a155c6 Michal Hocko       2017-07-24  476  		return false;
e5e3f4c4f Michal Hocko       2016-07-26  477  	}
e5e3f4c4f Michal Hocko       2016-07-26  478  
ed7a155c6 Michal Hocko       2017-07-24  479  	/* There is nothing to reap so bail out without signs in the log */
ed7a155c6 Michal Hocko       2017-07-24  480  	if (!mm->mmap)
ed7a155c6 Michal Hocko       2017-07-24  481  		goto unlock;
aac453635 Michal Hocko       2016-03-25  482  
fa60da35c Andrew Morton      2017-07-14  483  	trace_start_task_reaping(tsk->pid);
fa60da35c Andrew Morton      2017-07-14  484  
3f70dc38c Michal Hocko       2016-10-07  485  	/*
3f70dc38c Michal Hocko       2016-10-07  486  	 * Tell all users of get_user/copy_from_user etc... that the content
3f70dc38c Michal Hocko       2016-10-07  487  	 * is no longer stable. No barriers really needed because unmapping
3f70dc38c Michal Hocko       2016-10-07  488  	 * should imply barriers already and the reader would hit a page fault
3f70dc38c Michal Hocko       2016-10-07  489  	 * if it stumbled over a reaped memory.
3f70dc38c Michal Hocko       2016-10-07  490  	 */
3f70dc38c Michal Hocko       2016-10-07  491  	set_bit(MMF_UNSTABLE, &mm->flags);
3f70dc38c Michal Hocko       2016-10-07  492  
aac453635 Michal Hocko       2016-03-25  493  	tlb_gather_mmu(&tlb, mm, 0, -1);
aac453635 Michal Hocko       2016-03-25  494  	for (vma = mm->mmap ; vma; vma = vma->vm_next) {
235190738 Kirill A. Shutemov 2017-02-22  495  		if (!can_madv_dontneed_vma(vma))
aac453635 Michal Hocko       2016-03-25  496  			continue;
aac453635 Michal Hocko       2016-03-25  497  
aac453635 Michal Hocko       2016-03-25  498  		/*
aac453635 Michal Hocko       2016-03-25  499  		 * Only anonymous pages have a good chance to be dropped
aac453635 Michal Hocko       2016-03-25  500  		 * without additional steps which we cannot afford as we
aac453635 Michal Hocko       2016-03-25  501  		 * are OOM already.
aac453635 Michal Hocko       2016-03-25  502  		 *
aac453635 Michal Hocko       2016-03-25  503  		 * We do not even care about fs backed pages because all
aac453635 Michal Hocko       2016-03-25  504  		 * which are reclaimable have already been reclaimed and
aac453635 Michal Hocko       2016-03-25  505  		 * we do not want to block exit_mmap by keeping mm ref
aac453635 Michal Hocko       2016-03-25  506  		 * count elevated without a good reason.
aac453635 Michal Hocko       2016-03-25  507  		 */
aac453635 Michal Hocko       2016-03-25  508  		if (vma_is_anonymous(vma) || !(vma->vm_flags & VM_SHARED))
aac453635 Michal Hocko       2016-03-25  509  			unmap_page_range(&tlb, vma, vma->vm_start, vma->vm_end,
3e8715fdc Kirill A. Shutemov 2017-02-22  510  					 NULL);
aac453635 Michal Hocko       2016-03-25  511  	}
aac453635 Michal Hocko       2016-03-25  512  	tlb_finish_mmu(&tlb, 0, -1);
bc448e897 Michal Hocko       2016-03-25  513  	pr_info("oom_reaper: reaped process %d (%s), now anon-rss:%lukB, file-rss:%lukB, shmem-rss:%lukB\n",
bc448e897 Michal Hocko       2016-03-25  514  			task_pid_nr(tsk), tsk->comm,
bc448e897 Michal Hocko       2016-03-25  515  			K(get_mm_counter(mm, MM_ANONPAGES)),
bc448e897 Michal Hocko       2016-03-25  516  			K(get_mm_counter(mm, MM_FILEPAGES)),
bc448e897 Michal Hocko       2016-03-25  517  			K(get_mm_counter(mm, MM_SHMEMPAGES)));
36324a990 Michal Hocko       2016-03-25  518  
fa60da35c Andrew Morton      2017-07-14  519  	trace_finish_task_reaping(tsk->pid);
ed7a155c6 Michal Hocko       2017-07-24  520  unlock:
ed7a155c6 Michal Hocko       2017-07-24  521  	up_read(&mm->mmap_sem);
ed7a155c6 Michal Hocko       2017-07-24  522  
aac453635 Michal Hocko       2016-03-25 @523  	return ret;
aac453635 Michal Hocko       2016-03-25 @524  }
aac453635 Michal Hocko       2016-03-25  525  

:::::: The code at line 523 was first introduced by commit
:::::: aac453635549699c13a84ea1456d5b0e574ef855 mm, oom: introduce oom reaper

:::::: TO: Michal Hocko <mhocko@suse.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.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: 31959 bytes --]

  parent reply	other threads:[~2017-07-24 16:42 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-24  7:23 [PATCH] mm, oom: allow oom reaper to race with exit_mmap Michal Hocko
2017-07-24 14:00 ` Kirill A. Shutemov
2017-07-24 14:15   ` Michal Hocko
2017-07-24 14:51     ` Kirill A. Shutemov
2017-07-24 16:11       ` Michal Hocko
2017-07-25 14:17         ` Kirill A. Shutemov
2017-07-25 14:26           ` Michal Hocko
2017-07-25 15:07             ` Kirill A. Shutemov
2017-07-25 15:15               ` Michal Hocko
2017-07-25 14:26         ` Michal Hocko
2017-07-25 15:17           ` Kirill A. Shutemov
2017-07-25 15:23             ` Michal Hocko
2017-07-25 15:31               ` Kirill A. Shutemov
2017-07-25 16:04                 ` Michal Hocko
2017-07-25 19:19                   ` Andrea Arcangeli
2017-07-26  5:45                     ` Michal Hocko
2017-07-26 16:29                       ` Andrea Arcangeli
2017-07-26 16:43                         ` Andrea Arcangeli
2017-07-27  6:50                         ` Michal Hocko
2017-07-27 14:55                           ` Andrea Arcangeli
2017-07-28  6:23                             ` Michal Hocko
2017-07-28  1:58                         ` [PATCH 1/1] mm: oom: let oom_reap_task and exit_mmap to run kbuild test robot
2017-08-15  0:20                         ` [PATCH] mm, oom: allow oom reaper to race with exit_mmap David Rientjes
2017-07-24 15:27 ` Michal Hocko
2017-07-24 16:42 ` kbuild test robot [this message]
2017-07-24 18:12   ` Michal Hocko
2017-07-25 15:26 ` Andrea Arcangeli
2017-07-25 15:45   ` Michal Hocko
2017-07-25 18:26     ` Andrea Arcangeli
2017-07-26  5:45       ` Michal Hocko
2017-07-26 16:39         ` Andrea Arcangeli
2017-07-27  6:32           ` Michal Hocko
2017-08-10  8:16 Michal Hocko
2017-08-10 18:05 ` Andrea Arcangeli
2017-08-10 18:51   ` Michal Hocko
2017-08-10 20:36     ` Michal Hocko

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=201707250036.3NQRglrp%fengguang.wu@intel.com \
    --to=lkp@intel.com \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=hughd@google.com \
    --cc=kbuild-all@01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@kernel.org \
    --cc=mhocko@suse.com \
    --cc=oleg@redhat.com \
    --cc=penguin-kernel@I-love.SAKURA.ne.jp \
    --cc=rientjes@google.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 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 NNTP newsgroup(s).