[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180717012444.GB10593@intel.com>
Date: Tue, 17 Jul 2018 09:24:44 +0800
From: kbuild test robot <lkp@...el.com>
To: Waiman Long <longman@...hat.com>
Cc: kbuild-all@...org, Alexander Viro <viro@...iv.linux.org.uk>,
Jonathan Corbet <corbet@....net>,
"Luis R. Rodriguez" <mcgrof@...nel.org>,
Kees Cook <keescook@...omium.org>,
linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
linux-mm@...ck.org, linux-doc@...r.kernel.org,
Linus Torvalds <torvalds@...ux-foundation.org>,
Jan Kara <jack@...e.cz>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Ingo Molnar <mingo@...nel.org>,
Miklos Szeredi <mszeredi@...hat.com>,
Matthew Wilcox <willy@...radead.org>,
Larry Woodman <lwoodman@...hat.com>,
James Bottomley <James.Bottomley@...senPartnership.com>,
"Wangkai (Kevin C)" <wangkai86@...wei.com>,
Michal Hocko <mhocko@...nel.org>,
Waiman Long <longman@...hat.com>
Subject: Re: [PATCH v7 4/6] fs/dcache: Print negative dentry warning every
min until turned off by user
Hi Waiman,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v4.18-rc4]
[cannot apply to next-20180713]
[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/Waiman-Long/fs-dcache-Track-report-number-of-negative-dentries/20180714-161258
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
:::::: branch date: 45 minutes ago
:::::: commit date: 45 minutes ago
Note: the linux-review/Waiman-Long/fs-dcache-Track-report-number-of-negative-dentries/20180714-161258 HEAD ca68ee513a450445b269248c2859302c8931a294 builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
fs/dcache.c: In function 'neg_dentry_inc_slowpath':
>> fs/dcache.c:355:8: error: implicit declaration of function 'get_nr_dentry_neg'; did you mean 'neg_dentry_dec'? [-Werror=implicit-function-declaration]
cnt = get_nr_dentry_neg();
^~~~~~~~~~~~~~~~~
neg_dentry_dec
cc1: some warnings being treated as errors
# https://github.com/0day-ci/linux/commit/2aa8bf4658af0dbc07ae9ea07d04937a347e3ef4
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout 2aa8bf4658af0dbc07ae9ea07d04937a347e3ef4
vim +355 fs/dcache.c
bcc9ba8b Waiman Long 2018-07-12 310
bcc9ba8b Waiman Long 2018-07-12 311 static noinline void neg_dentry_inc_slowpath(struct dentry *dentry)
bcc9ba8b Waiman Long 2018-07-12 312 {
bcc9ba8b Waiman Long 2018-07-12 313 long cnt = 0, *pcnt;
2aa8bf46 Waiman Long 2018-07-12 314 unsigned long current_time;
bcc9ba8b Waiman Long 2018-07-12 315
bcc9ba8b Waiman Long 2018-07-12 316 /*
bcc9ba8b Waiman Long 2018-07-12 317 * Try to move some negative dentry quota from the global free
bcc9ba8b Waiman Long 2018-07-12 318 * pool to the percpu count to allow more negative dentries to
bcc9ba8b Waiman Long 2018-07-12 319 * be added to the LRU.
bcc9ba8b Waiman Long 2018-07-12 320 */
bcc9ba8b Waiman Long 2018-07-12 321 pcnt = get_cpu_ptr(&nr_dentry_neg);
bcc9ba8b Waiman Long 2018-07-12 322 if ((READ_ONCE(ndblk.nfree) > 0) &&
bcc9ba8b Waiman Long 2018-07-12 323 (*pcnt > neg_dentry_percpu_limit)) {
bcc9ba8b Waiman Long 2018-07-12 324 cnt = __neg_dentry_nfree_dec(*pcnt - neg_dentry_percpu_limit);
bcc9ba8b Waiman Long 2018-07-12 325 *pcnt -= cnt;
bcc9ba8b Waiman Long 2018-07-12 326 }
bcc9ba8b Waiman Long 2018-07-12 327 put_cpu_ptr(&nr_dentry_neg);
bcc9ba8b Waiman Long 2018-07-12 328
2aa8bf46 Waiman Long 2018-07-12 329 if (cnt)
2aa8bf46 Waiman Long 2018-07-12 330 goto out;
2aa8bf46 Waiman Long 2018-07-12 331
bcc9ba8b Waiman Long 2018-07-12 332 /*
2aa8bf46 Waiman Long 2018-07-12 333 * Put out a warning every minute or so if there are just too many
2aa8bf46 Waiman Long 2018-07-12 334 * negative dentries.
bcc9ba8b Waiman Long 2018-07-12 335 */
2aa8bf46 Waiman Long 2018-07-12 336 current_time = jiffies;
bcc9ba8b Waiman Long 2018-07-12 337
2aa8bf46 Waiman Long 2018-07-12 338 if (current_time < ndblk.warn_jiffies + NEG_WARN_PERIOD)
2aa8bf46 Waiman Long 2018-07-12 339 goto out;
2aa8bf46 Waiman Long 2018-07-12 340 /*
2aa8bf46 Waiman Long 2018-07-12 341 * Update the time in ndblk.warn_jiffies and print a warning
2aa8bf46 Waiman Long 2018-07-12 342 * if time update is successful.
2aa8bf46 Waiman Long 2018-07-12 343 */
2aa8bf46 Waiman Long 2018-07-12 344 raw_spin_lock(&ndblk.nfree_lock);
2aa8bf46 Waiman Long 2018-07-12 345 if (current_time < ndblk.warn_jiffies + NEG_WARN_PERIOD) {
2aa8bf46 Waiman Long 2018-07-12 346 raw_spin_unlock(&ndblk.nfree_lock);
2aa8bf46 Waiman Long 2018-07-12 347 goto out;
2aa8bf46 Waiman Long 2018-07-12 348 }
2aa8bf46 Waiman Long 2018-07-12 349 ndblk.warn_jiffies = current_time;
2aa8bf46 Waiman Long 2018-07-12 350 raw_spin_unlock(&ndblk.nfree_lock);
2aa8bf46 Waiman Long 2018-07-12 351
2aa8bf46 Waiman Long 2018-07-12 352 /*
2aa8bf46 Waiman Long 2018-07-12 353 * Get the current negative dentry count & print a warning.
2aa8bf46 Waiman Long 2018-07-12 354 */
2aa8bf46 Waiman Long 2018-07-12 @355 cnt = get_nr_dentry_neg();
2aa8bf46 Waiman Long 2018-07-12 356 pr_warn("Warning: Too many negative dentries (%ld). "
2aa8bf46 Waiman Long 2018-07-12 357 "This warning can be disabled by writing 0 to \"fs/neg-dentry-limit\" or increasing the limit.\n",
2aa8bf46 Waiman Long 2018-07-12 358 cnt);
2aa8bf46 Waiman Long 2018-07-12 359 out:
2aa8bf46 Waiman Long 2018-07-12 360 return;
bcc9ba8b Waiman Long 2018-07-12 361 }
bcc9ba8b Waiman Long 2018-07-12 362
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (6369 bytes)
Powered by blists - more mailing lists