tree: https://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next.git blk-iolatency-v5 head: 9ca920cdc56987426bfc77c18dbfff9d99f242e3 commit: 9ca920cdc56987426bfc77c18dbfff9d99f242e3 [14/14] skip readahead if the cgroup is congested config: x86_64-randconfig-x013-201824 (attached as .config) compiler: gcc-7 (Debian 7.3.0-16) 7.3.0 reproduce: git checkout 9ca920cdc56987426bfc77c18dbfff9d99f242e3 # save the attached .config to linux build tree make ARCH=x86_64
All warnings (new ones prefixed by >>):
In file included from include/linux/kernel.h:10:0,
from mm/readahead.c:10:
mm/readahead.c: In function 'page_cache_sync_readahead':
mm/readahead.c:503:6: error: implicit declaration of function
'blk_cgroup_congested'; did you mean 'bdi_rw_congested'?
[-Werror=implicit-function-declaration]
if (blk_cgroup_congested())
^
include/linux/compiler.h:58:30: note: in definition of macro '__trace_if'
if (__builtin_constant_p(!!(cond)) ? !!(cond) : \
^~~~
>> mm/readahead.c:503:2: note: in expansion of macro 'if'
if (blk_cgroup_congested())
^~
cc1: some warnings being treated as errors
vim +/if +503 mm/readahead.c
480
481 /**
482 * page_cache_sync_readahead - generic file readahead
483 * @mapping: address_space which holds the pagecache and I/O vectors
484 * @ra: file_ra_state which holds the readahead state
485 * @filp: passed on to ->readpage() and ->readpages()
486 * @offset: start offset into @mapping, in pagecache page-sized units
487 * @req_size: hint: total size of the read which the caller is
performing in
488 * pagecache pages
489 *
490 * page_cache_sync_readahead() should be called when a cache miss
happened:
491 * it will submit the read. The readahead logic may decide to
piggyback more
492 * pages onto the read request if access patterns suggest it will
improve
493 * performance.
494 */
495 void page_cache_sync_readahead(struct address_space *mapping,
496 struct file_ra_state *ra, struct file
*filp,
497 pgoff_t offset, unsigned long req_size)
498 {
499 /* no read-ahead */
500 if (!ra->ra_pages)
501 return;
502
> 503 if (blk_cgroup_congested())
504 return;
505
506 /* be dumb */
507 if (filp && (filp->f_mode & FMODE_RANDOM)) {
508 force_page_cache_readahead(mapping, filp, offset,
req_size);
509 return;
510 }
511
512 /* do read-ahead */
513 ondemand_readahead(mapping, ra, filp, false, offset, req_size);
514 }
515 EXPORT_SYMBOL_GPL(page_cache_sync_readahead);
516
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip
