Hi Alexei, kernel test robot noticed the following build warnings: [auto build test WARNING on bpf-next/master] url: https://github.com/intel-lab-lkp/linux/commits/Alexei-Starovoitov/mm-bpf-Introduce-__GFP_TRYLOCK-for-opportunistic-page-allocation/20241210-104250 base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master patch link: https://lore.kernel.org/r/20241210023936.46871-5-alexei.starovoitov%40gmail.com patch subject: [PATCH bpf-next v2 4/6] memcg: Add __GFP_TRYLOCK support. config: x86_64-buildonly-randconfig-001-20241210 (https://download.01.org/0day-ci/archive/20241212/202412120745.nnianRgw-lkp@xxxxxxxxx/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241212/202412120745.nnianRgw-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202412120745.nnianRgw-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): >> mm/memcontrol.c:1761: warning: Function parameter or struct member 'gfp_mask' not described in 'consume_stock' vim +1761 mm/memcontrol.c cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1743 56751146238723 Sebastian Andrzej Siewior 2022-03-22 1744 static struct obj_cgroup *drain_obj_stock(struct memcg_stock_pcp *stock); bf4f059954dcb2 Roman Gushchin 2020-08-06 1745 static bool obj_stock_flush_required(struct memcg_stock_pcp *stock, bf4f059954dcb2 Roman Gushchin 2020-08-06 1746 struct mem_cgroup *root_memcg); bf4f059954dcb2 Roman Gushchin 2020-08-06 1747 a0956d54492eb7 Suleiman Souhlal 2012-12-18 1748 /** a0956d54492eb7 Suleiman Souhlal 2012-12-18 1749 * consume_stock: Try to consume stocked charge on this cpu. a0956d54492eb7 Suleiman Souhlal 2012-12-18 1750 * @memcg: memcg to consume from. a0956d54492eb7 Suleiman Souhlal 2012-12-18 1751 * @nr_pages: how many pages to charge. a0956d54492eb7 Suleiman Souhlal 2012-12-18 1752 * a0956d54492eb7 Suleiman Souhlal 2012-12-18 1753 * The charges will only happen if @memcg matches the current cpu's memcg a0956d54492eb7 Suleiman Souhlal 2012-12-18 1754 * stock, and at least @nr_pages are available in that stock. Failure to a0956d54492eb7 Suleiman Souhlal 2012-12-18 1755 * service an allocation will refill the stock. a0956d54492eb7 Suleiman Souhlal 2012-12-18 1756 * a0956d54492eb7 Suleiman Souhlal 2012-12-18 1757 * returns true if successful, false otherwise. cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1758 */ c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1759 static bool consume_stock(struct mem_cgroup *memcg, unsigned int nr_pages, c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1760 gfp_t gfp_mask) cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 @1761 { cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1762 struct memcg_stock_pcp *stock; 1872b3bcd5874b Breno Leitao 2024-05-01 1763 unsigned int stock_pages; db2ba40c277dc5 Johannes Weiner 2016-09-19 1764 unsigned long flags; 3e32cb2e0a12b6 Johannes Weiner 2014-12-10 1765 bool ret = false; cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1766 a983b5ebee5720 Johannes Weiner 2018-01-31 1767 if (nr_pages > MEMCG_CHARGE_BATCH) 3e32cb2e0a12b6 Johannes Weiner 2014-12-10 1768 return ret; a0956d54492eb7 Suleiman Souhlal 2012-12-18 1769 c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1770 if (!local_trylock_irqsave(&memcg_stock.stock_lock, flags)) { c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1771 if (gfp_mask & __GFP_TRYLOCK) c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1772 return ret; 56751146238723 Sebastian Andrzej Siewior 2022-03-22 1773 local_lock_irqsave(&memcg_stock.stock_lock, flags); c889f3c0bc9a18 Alexei Starovoitov 2024-12-09 1774 } db2ba40c277dc5 Johannes Weiner 2016-09-19 1775 db2ba40c277dc5 Johannes Weiner 2016-09-19 1776 stock = this_cpu_ptr(&memcg_stock); 1872b3bcd5874b Breno Leitao 2024-05-01 1777 stock_pages = READ_ONCE(stock->nr_pages); 1872b3bcd5874b Breno Leitao 2024-05-01 1778 if (memcg == READ_ONCE(stock->cached) && stock_pages >= nr_pages) { 1872b3bcd5874b Breno Leitao 2024-05-01 1779 WRITE_ONCE(stock->nr_pages, stock_pages - nr_pages); 3e32cb2e0a12b6 Johannes Weiner 2014-12-10 1780 ret = true; 3e32cb2e0a12b6 Johannes Weiner 2014-12-10 1781 } db2ba40c277dc5 Johannes Weiner 2016-09-19 1782 56751146238723 Sebastian Andrzej Siewior 2022-03-22 1783 local_unlock_irqrestore(&memcg_stock.stock_lock, flags); db2ba40c277dc5 Johannes Weiner 2016-09-19 1784 cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1785 return ret; cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1786 } cdec2e4265dfa0 KAMEZAWA Hiroyuki 2009-12-15 1787 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki