All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Kairui Song <ryncsn@gmail.com>, linux-mm@kvack.org
Cc: oe-kbuild-all@lists.linux.dev,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux Memory Management List <linux-mm@kvack.org>,
	Matthew Wilcox <willy@infradead.org>,
	Johannes Weiner <hannes@cmpxchg.org>,
	Roman Gushchin <roman.gushchin@linux.dev>,
	Waiman Long <longman@redhat.com>,
	Shakeel Butt <shakeelb@google.com>, Nhat Pham <nphamcs@gmail.com>,
	Michal Hocko <mhocko@suse.com>,
	Chengming Zhou <zhouchengming@bytedance.com>,
	Qi Zheng <zhengqi.arch@bytedance.com>,
	Muchun Song <muchun.song@linux.dev>, Chris Li <chrisl@kernel.org>,
	Yosry Ahmed <yosryahmed@google.com>,
	"Huang, Ying" <ying.huang@intel.com>,
	Kairui Song <kasong@tencent.com>
Subject: Re: [PATCH 7/7] mm/list_lru: Simplify the list_lru walk callback function
Date: Fri, 28 Jun 2024 03:58:55 +0800	[thread overview]
Message-ID: <202406280355.Qwjjjiug-lkp@intel.com> (raw)
In-Reply-To: <20240624175313.47329-8-ryncsn@gmail.com>

Hi Kairui,

kernel test robot noticed the following build warnings:

[auto build test WARNING on akpm-mm/mm-everything]
[also build test WARNING on staging/staging-testing staging/staging-next staging/staging-linus xfs-linux/for-next linus/master v6.10-rc5 next-20240626]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Kairui-Song/mm-swap-workingset-make-anon-workingset-nodes-memcg-aware/20240625-231015
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link:    https://lore.kernel.org/r/20240624175313.47329-8-ryncsn%40gmail.com
patch subject: [PATCH 7/7] mm/list_lru: Simplify the list_lru walk callback function
config: i386-buildonly-randconfig-001-20240628 (https://download.01.org/0day-ci/archive/20240628/202406280355.Qwjjjiug-lkp@intel.com/config)
compiler: gcc-10 (Ubuntu 10.5.0-1ubuntu1) 10.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240628/202406280355.Qwjjjiug-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202406280355.Qwjjjiug-lkp@intel.com/

All warnings (new ones prefixed by >>):

   drivers/android/binder_alloc.c:1060: warning: Function parameter or struct member 'lru' not described in 'binder_alloc_free_page'
>> drivers/android/binder_alloc.c:1060: warning: Excess function parameter 'lock' description in 'binder_alloc_free_page'


vim +1060 drivers/android/binder_alloc.c

0c972a05cde66e Todd Kjos         2017-06-29  1046  
f2517eb76f1f2f Sherry Yang       2017-08-23  1047  /**
f2517eb76f1f2f Sherry Yang       2017-08-23  1048   * binder_alloc_free_page() - shrinker callback to free pages
f2517eb76f1f2f Sherry Yang       2017-08-23  1049   * @item:   item to free
f2517eb76f1f2f Sherry Yang       2017-08-23  1050   * @lock:   lock protecting the item
f2517eb76f1f2f Sherry Yang       2017-08-23  1051   * @cb_arg: callback argument
f2517eb76f1f2f Sherry Yang       2017-08-23  1052   *
f2517eb76f1f2f Sherry Yang       2017-08-23  1053   * Called from list_lru_walk() in binder_shrink_scan() to free
f2517eb76f1f2f Sherry Yang       2017-08-23  1054   * up pages when the system is under memory pressure.
f2517eb76f1f2f Sherry Yang       2017-08-23  1055   */
f2517eb76f1f2f Sherry Yang       2017-08-23  1056  enum lru_status binder_alloc_free_page(struct list_head *item,
f2517eb76f1f2f Sherry Yang       2017-08-23  1057  				       struct list_lru_one *lru,
f2517eb76f1f2f Sherry Yang       2017-08-23  1058  				       void *cb_arg)
5672291f7d5dc5 Kairui Song       2024-06-25  1059  	__must_hold(&lru->lock)
f2517eb76f1f2f Sherry Yang       2017-08-23 @1060  {
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1061  	struct binder_lru_page *page = container_of(item, typeof(*page), lru);
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1062  	struct binder_alloc *alloc = page->alloc;
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1063  	struct mm_struct *mm = alloc->mm;
a1b2289cef92ef Sherry Yang       2017-10-03  1064  	struct vm_area_struct *vma;
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1065  	struct page *page_to_free;
df9aabead791d7 Carlos Llamas     2023-12-01  1066  	unsigned long page_addr;
f2517eb76f1f2f Sherry Yang       2017-08-23  1067  	size_t index;
f2517eb76f1f2f Sherry Yang       2017-08-23  1068  
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1069  	if (!mmget_not_zero(mm))
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1070  		goto err_mmget;
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1071  	if (!mmap_read_trylock(mm))
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1072  		goto err_mmap_read_lock_failed;
7710e2cca32e7f Carlos Llamas     2023-12-01  1073  	if (!spin_trylock(&alloc->lock))
7710e2cca32e7f Carlos Llamas     2023-12-01  1074  		goto err_get_alloc_lock_failed;
f2517eb76f1f2f Sherry Yang       2017-08-23  1075  	if (!page->page_ptr)
f2517eb76f1f2f Sherry Yang       2017-08-23  1076  		goto err_page_already_freed;
f2517eb76f1f2f Sherry Yang       2017-08-23  1077  
f2517eb76f1f2f Sherry Yang       2017-08-23  1078  	index = page - alloc->pages;
df9aabead791d7 Carlos Llamas     2023-12-01  1079  	page_addr = alloc->buffer + index * PAGE_SIZE;
5cec2d2e5839f9 Todd Kjos         2019-03-01  1080  
3f489c2067c582 Carlos Llamas     2023-12-01  1081  	vma = vma_lookup(mm, page_addr);
3f489c2067c582 Carlos Llamas     2023-12-01  1082  	if (vma && vma != binder_alloc_get_vma(alloc))
3f489c2067c582 Carlos Llamas     2023-12-01  1083  		goto err_invalid_vma;
a1b2289cef92ef Sherry Yang       2017-10-03  1084  
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1085  	trace_binder_unmap_kernel_start(alloc, index);
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1086  
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1087  	page_to_free = page->page_ptr;
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1088  	page->page_ptr = NULL;
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1089  
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1090  	trace_binder_unmap_kernel_end(alloc, index);
a1b2289cef92ef Sherry Yang       2017-10-03  1091  
a1b2289cef92ef Sherry Yang       2017-10-03  1092  	list_lru_isolate(lru, item);
7710e2cca32e7f Carlos Llamas     2023-12-01  1093  	spin_unlock(&alloc->lock);
5672291f7d5dc5 Kairui Song       2024-06-25  1094  	spin_unlock(&lru->lock);
f2517eb76f1f2f Sherry Yang       2017-08-23  1095  
a1b2289cef92ef Sherry Yang       2017-10-03  1096  	if (vma) {
e41e164c3cdff6 Sherry Yang       2017-08-23  1097  		trace_binder_unmap_user_start(alloc, index);
e41e164c3cdff6 Sherry Yang       2017-08-23  1098  
e9adcfecf572fc Mike Kravetz      2023-01-03  1099  		zap_page_range_single(vma, page_addr, PAGE_SIZE, NULL);
f2517eb76f1f2f Sherry Yang       2017-08-23  1100  
e41e164c3cdff6 Sherry Yang       2017-08-23  1101  		trace_binder_unmap_user_end(alloc, index);
f2517eb76f1f2f Sherry Yang       2017-08-23  1102  	}
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1103  
d8ed45c5dcd455 Michel Lespinasse 2020-06-08  1104  	mmap_read_unlock(mm);
f867c771f98891 Tetsuo Handa      2020-07-17  1105  	mmput_async(mm);
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1106  	__free_page(page_to_free);
e41e164c3cdff6 Sherry Yang       2017-08-23  1107  
a1b2289cef92ef Sherry Yang       2017-10-03  1108  	return LRU_REMOVED_RETRY;
f2517eb76f1f2f Sherry Yang       2017-08-23  1109  
3f489c2067c582 Carlos Llamas     2023-12-01  1110  err_invalid_vma:
e50f4e6cc9bfac Carlos Llamas     2023-12-01  1111  err_page_already_freed:
7710e2cca32e7f Carlos Llamas     2023-12-01  1112  	spin_unlock(&alloc->lock);
7710e2cca32e7f Carlos Llamas     2023-12-01  1113  err_get_alloc_lock_failed:
3f489c2067c582 Carlos Llamas     2023-12-01  1114  	mmap_read_unlock(mm);
3e4e28c5a8f01e Michel Lespinasse 2020-06-08  1115  err_mmap_read_lock_failed:
a1b2289cef92ef Sherry Yang       2017-10-03  1116  	mmput_async(mm);
a0c2baaf81bd53 Sherry Yang       2017-10-20  1117  err_mmget:
f2517eb76f1f2f Sherry Yang       2017-08-23  1118  	return LRU_SKIP;
f2517eb76f1f2f Sherry Yang       2017-08-23  1119  }
f2517eb76f1f2f Sherry Yang       2017-08-23  1120  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  reply	other threads:[~2024-06-27 19:59 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-24 17:53 [PATCH 0/7] Split list_lru lock into per-cgroup scope Kairui Song
2024-06-24 17:53 ` [PATCH 1/7] mm/swap, workingset: make anon workingset nodes memcg aware Kairui Song
2024-07-17  3:25   ` Muchun Song
2024-07-18 11:33     ` Kairui Song
2024-07-19  1:34   ` Shakeel Butt
2024-06-24 17:53 ` [PATCH 2/7] mm/list_lru: don't pass unnecessary key parameters Kairui Song
2024-06-24 17:53 ` [PATCH 3/7] mm/list_lru: don't export list_lru_add Kairui Song
2024-07-17  3:12   ` Muchun Song
2024-06-24 17:53 ` [PATCH 4/7] mm/list_lru: code clean up for reparenting Kairui Song
2024-07-15  9:10   ` Muchun Song
2024-07-16  8:15     ` Kairui Song
2024-06-24 17:53 ` [PATCH 5/7] mm/list_lru: simplify reparenting and initial allocation Kairui Song
2024-07-17  3:04   ` Muchun Song
2024-07-18 11:49     ` Kairui Song
2024-07-19  2:45       ` Muchun Song
2024-06-24 17:53 ` [PATCH 6/7] mm/list_lru: split the lock to per-cgroup scope Kairui Song
2024-06-24 17:53 ` [PATCH 7/7] mm/list_lru: Simplify the list_lru walk callback function Kairui Song
2024-06-27 19:58   ` kernel test robot [this message]
2024-06-24 21:26 ` [PATCH 0/7] Split list_lru lock into per-cgroup scope Andrew Morton
2024-06-25  7:47   ` Kairui Song
2024-06-25 17:00   ` Shakeel Butt
2024-08-27 18:35 ` Shakeel Butt

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=202406280355.Qwjjjiug-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=chrisl@kernel.org \
    --cc=hannes@cmpxchg.org \
    --cc=kasong@tencent.com \
    --cc=linux-mm@kvack.org \
    --cc=longman@redhat.com \
    --cc=mhocko@suse.com \
    --cc=muchun.song@linux.dev \
    --cc=nphamcs@gmail.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=roman.gushchin@linux.dev \
    --cc=ryncsn@gmail.com \
    --cc=shakeelb@google.com \
    --cc=willy@infradead.org \
    --cc=ying.huang@intel.com \
    --cc=yosryahmed@google.com \
    --cc=zhengqi.arch@bytedance.com \
    --cc=zhouchengming@bytedance.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.