All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [hch-block:blkdev.h-includes 2/17] fs/btrfs/compression.c:441:3: error: implicit declaration of function 'kthread_associate_blkcg'
Date: Tue, 07 Sep 2021 19:19:37 +0800	[thread overview]
Message-ID: <202109071925.ZUKYwGly-lkp@intel.com> (raw)

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

tree:   git://git.infradead.org/users/hch/block.git blkdev.h-includes
head:   861642952ebe9d329c3049cf0ab45991c27333e3
commit: 5f9d4a5e4db2d84c769f9406b3a86cdb80b8ab48 [2/17] mm: don't include <linux/blk-cgroup.h> in <linux/backing-dev.h>
config: riscv-buildonly-randconfig-r005-20210906 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 9c476172b93367d2cb88d7d3f4b1b5b456fa6020)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        git remote add hch-block git://git.infradead.org/users/hch/block.git
        git fetch --no-tags hch-block blkdev.h-includes
        git checkout 5f9d4a5e4db2d84c769f9406b3a86cdb80b8ab48
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> fs/btrfs/compression.c:441:3: error: implicit declaration of function 'kthread_associate_blkcg' [-Werror,-Wimplicit-function-declaration]
                   kthread_associate_blkcg(blkcg_css);
                   ^
   fs/btrfs/compression.c:530:3: error: implicit declaration of function 'kthread_associate_blkcg' [-Werror,-Wimplicit-function-declaration]
                   kthread_associate_blkcg(NULL);
                   ^
   2 errors generated.


vim +/kthread_associate_blkcg +441 fs/btrfs/compression.c

c8b978188c9a0f Chris Mason        2008-10-29  376  
c8b978188c9a0f Chris Mason        2008-10-29  377  /*
c8b978188c9a0f Chris Mason        2008-10-29  378   * worker function to build and submit bios for previously compressed pages.
c8b978188c9a0f Chris Mason        2008-10-29  379   * The corresponding pages in the inode should be marked for writeback
c8b978188c9a0f Chris Mason        2008-10-29  380   * and the compressed pages should have a reference on them for dropping
c8b978188c9a0f Chris Mason        2008-10-29  381   * when the IO is complete.
c8b978188c9a0f Chris Mason        2008-10-29  382   *
c8b978188c9a0f Chris Mason        2008-10-29  383   * This also checksums the file bytes and gets things ready for
c8b978188c9a0f Chris Mason        2008-10-29  384   * the end io hooks.
c8b978188c9a0f Chris Mason        2008-10-29  385   */
c7ee1819dc7169 Nikolay Borisov    2020-06-03  386  blk_status_t btrfs_submit_compressed_write(struct btrfs_inode *inode, u64 start,
65b5355f770828 Anand Jain         2021-05-29  387  				 unsigned int len, u64 disk_start,
65b5355f770828 Anand Jain         2021-05-29  388  				 unsigned int compressed_len,
c8b978188c9a0f Chris Mason        2008-10-29  389  				 struct page **compressed_pages,
65b5355f770828 Anand Jain         2021-05-29  390  				 unsigned int nr_pages,
ec39f7696ccfac Chris Mason        2019-07-10  391  				 unsigned int write_flags,
ec39f7696ccfac Chris Mason        2019-07-10  392  				 struct cgroup_subsys_state *blkcg_css)
c8b978188c9a0f Chris Mason        2008-10-29  393  {
c7ee1819dc7169 Nikolay Borisov    2020-06-03  394  	struct btrfs_fs_info *fs_info = inode->root->fs_info;
c8b978188c9a0f Chris Mason        2008-10-29  395  	struct bio *bio = NULL;
c8b978188c9a0f Chris Mason        2008-10-29  396  	struct compressed_bio *cb;
c8b978188c9a0f Chris Mason        2008-10-29  397  	unsigned long bytes_left;
306e16ce13c0f3 David Sterba       2011-04-19  398  	int pg_index = 0;
c8b978188c9a0f Chris Mason        2008-10-29  399  	struct page *page;
c8b978188c9a0f Chris Mason        2008-10-29  400  	u64 first_byte = disk_start;
4e4cbee93d5613 Christoph Hellwig  2017-06-03  401  	blk_status_t ret;
c7ee1819dc7169 Nikolay Borisov    2020-06-03  402  	int skip_sum = inode->flags & BTRFS_INODE_NODATASUM;
764c7c9a464b68 Johannes Thumshirn 2021-05-19  403  	const bool use_append = btrfs_use_zone_append(inode, disk_start);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  404  	const unsigned int bio_op = use_append ? REQ_OP_ZONE_APPEND : REQ_OP_WRITE;
c8b978188c9a0f Chris Mason        2008-10-29  405  
fdb1e121803433 Johannes Thumshirn 2018-12-05  406  	WARN_ON(!PAGE_ALIGNED(start));
2ff7e61e0d30ff Jeff Mahoney       2016-06-22  407  	cb = kmalloc(compressed_bio_size(fs_info, compressed_len), GFP_NOFS);
dac97e516c617f Yoshinori Sano     2011-02-15  408  	if (!cb)
4e4cbee93d5613 Christoph Hellwig  2017-06-03  409  		return BLK_STS_RESOURCE;
a50299ae7cc4ba Elena Reshetova    2017-03-03  410  	refcount_set(&cb->pending_bios, 0);
c8b978188c9a0f Chris Mason        2008-10-29  411  	cb->errors = 0;
c7ee1819dc7169 Nikolay Borisov    2020-06-03  412  	cb->inode = &inode->vfs_inode;
c8b978188c9a0f Chris Mason        2008-10-29  413  	cb->start = start;
c8b978188c9a0f Chris Mason        2008-10-29  414  	cb->len = len;
d20f7043fa6565 Chris Mason        2008-12-08  415  	cb->mirror_num = 0;
c8b978188c9a0f Chris Mason        2008-10-29  416  	cb->compressed_pages = compressed_pages;
c8b978188c9a0f Chris Mason        2008-10-29  417  	cb->compressed_len = compressed_len;
c8b978188c9a0f Chris Mason        2008-10-29  418  	cb->orig_bio = NULL;
c8b978188c9a0f Chris Mason        2008-10-29  419  	cb->nr_pages = nr_pages;
c8b978188c9a0f Chris Mason        2008-10-29  420  
e749af443fa8da David Sterba       2019-06-18  421  	bio = btrfs_bio_alloc(first_byte);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  422  	bio->bi_opf = bio_op | write_flags;
c8b978188c9a0f Chris Mason        2008-10-29  423  	bio->bi_private = cb;
c8b978188c9a0f Chris Mason        2008-10-29  424  	bio->bi_end_io = end_compressed_bio_write;
ec39f7696ccfac Chris Mason        2019-07-10  425  
764c7c9a464b68 Johannes Thumshirn 2021-05-19  426  	if (use_append) {
e7ff9e6b8e7d89 Johannes Thumshirn 2021-05-19  427  		struct btrfs_device *device;
764c7c9a464b68 Johannes Thumshirn 2021-05-19  428  
e7ff9e6b8e7d89 Johannes Thumshirn 2021-05-19  429  		device = btrfs_zoned_get_device(fs_info, disk_start, PAGE_SIZE);
e7ff9e6b8e7d89 Johannes Thumshirn 2021-05-19  430  		if (IS_ERR(device)) {
764c7c9a464b68 Johannes Thumshirn 2021-05-19  431  			kfree(cb);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  432  			bio_put(bio);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  433  			return BLK_STS_NOTSUPP;
764c7c9a464b68 Johannes Thumshirn 2021-05-19  434  		}
764c7c9a464b68 Johannes Thumshirn 2021-05-19  435  
e7ff9e6b8e7d89 Johannes Thumshirn 2021-05-19  436  		bio_set_dev(bio, device->bdev);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  437  	}
764c7c9a464b68 Johannes Thumshirn 2021-05-19  438  
ec39f7696ccfac Chris Mason        2019-07-10  439  	if (blkcg_css) {
ec39f7696ccfac Chris Mason        2019-07-10  440  		bio->bi_opf |= REQ_CGROUP_PUNT;
46bcff2bfc5e6a Dennis Zhou        2019-12-11 @441  		kthread_associate_blkcg(blkcg_css);
ec39f7696ccfac Chris Mason        2019-07-10  442  	}
a50299ae7cc4ba Elena Reshetova    2017-03-03  443  	refcount_set(&cb->pending_bios, 1);
c8b978188c9a0f Chris Mason        2008-10-29  444  
c8b978188c9a0f Chris Mason        2008-10-29  445  	/* create and submit bios for the compressed pages */
c8b978188c9a0f Chris Mason        2008-10-29  446  	bytes_left = compressed_len;
306e16ce13c0f3 David Sterba       2011-04-19  447  	for (pg_index = 0; pg_index < cb->nr_pages; pg_index++) {
4e4cbee93d5613 Christoph Hellwig  2017-06-03  448  		int submit = 0;
4c80a97d7b02cf Qu Wenruo          2021-05-25  449  		int len = 0;
4e4cbee93d5613 Christoph Hellwig  2017-06-03  450  
306e16ce13c0f3 David Sterba       2011-04-19  451  		page = compressed_pages[pg_index];
c7ee1819dc7169 Nikolay Borisov    2020-06-03  452  		page->mapping = inode->vfs_inode.i_mapping;
4f024f3797c43c Kent Overstreet    2013-10-11  453  		if (bio->bi_iter.bi_size)
da12fe5414f922 Nikolay Borisov    2018-11-27  454  			submit = btrfs_bio_fits_in_stripe(page, PAGE_SIZE, bio,
da12fe5414f922 Nikolay Borisov    2018-11-27  455  							  0);
c8b978188c9a0f Chris Mason        2008-10-29  456  
4c80a97d7b02cf Qu Wenruo          2021-05-25  457  		/*
4c80a97d7b02cf Qu Wenruo          2021-05-25  458  		 * Page can only be added to bio if the current bio fits in
4c80a97d7b02cf Qu Wenruo          2021-05-25  459  		 * stripe.
4c80a97d7b02cf Qu Wenruo          2021-05-25  460  		 */
4c80a97d7b02cf Qu Wenruo          2021-05-25  461  		if (!submit) {
764c7c9a464b68 Johannes Thumshirn 2021-05-19  462  			if (pg_index == 0 && use_append)
4c80a97d7b02cf Qu Wenruo          2021-05-25  463  				len = bio_add_zone_append_page(bio, page,
4c80a97d7b02cf Qu Wenruo          2021-05-25  464  							       PAGE_SIZE, 0);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  465  			else
764c7c9a464b68 Johannes Thumshirn 2021-05-19  466  				len = bio_add_page(bio, page, PAGE_SIZE, 0);
4c80a97d7b02cf Qu Wenruo          2021-05-25  467  		}
764c7c9a464b68 Johannes Thumshirn 2021-05-19  468  
70b99e6959a4c2 Chris Mason        2008-10-31  469  		page->mapping = NULL;
764c7c9a464b68 Johannes Thumshirn 2021-05-19  470  		if (submit || len < PAGE_SIZE) {
af09abfece59aa Chris Mason        2008-11-07  471  			/*
af09abfece59aa Chris Mason        2008-11-07  472  			 * inc the count before we submit the bio so
af09abfece59aa Chris Mason        2008-11-07  473  			 * we know the end IO handler won't happen before
af09abfece59aa Chris Mason        2008-11-07  474  			 * we inc the count.  Otherwise, the cb might get
af09abfece59aa Chris Mason        2008-11-07  475  			 * freed before we're done setting it up
af09abfece59aa Chris Mason        2008-11-07  476  			 */
a50299ae7cc4ba Elena Reshetova    2017-03-03  477  			refcount_inc(&cb->pending_bios);
0b246afa62b0cf Jeff Mahoney       2016-06-22  478  			ret = btrfs_bio_wq_end_io(fs_info, bio,
bfebd8b5441755 David Sterba       2014-07-30  479  						  BTRFS_WQ_ENDIO_DATA);
79787eaab46121 Jeff Mahoney       2012-03-12  480  			BUG_ON(ret); /* -ENOMEM */
c8b978188c9a0f Chris Mason        2008-10-29  481  
e55179b3d7d41d Li Zefan           2011-07-14  482  			if (!skip_sum) {
c7ee1819dc7169 Nikolay Borisov    2020-06-03  483  				ret = btrfs_csum_one_bio(inode, bio, start, 1);
79787eaab46121 Jeff Mahoney       2012-03-12  484  				BUG_ON(ret); /* -ENOMEM */
e55179b3d7d41d Li Zefan           2011-07-14  485  			}
d20f7043fa6565 Chris Mason        2008-12-08  486  
08635bae0b4ceb Chris Mason        2019-07-10  487  			ret = btrfs_map_bio(fs_info, bio, 0);
f5daf2c780f2dd Liu Bo             2016-06-22  488  			if (ret) {
4e4cbee93d5613 Christoph Hellwig  2017-06-03  489  				bio->bi_status = ret;
f5daf2c780f2dd Liu Bo             2016-06-22  490  				bio_endio(bio);
f5daf2c780f2dd Liu Bo             2016-06-22  491  			}
c8b978188c9a0f Chris Mason        2008-10-29  492  
e749af443fa8da David Sterba       2019-06-18  493  			bio = btrfs_bio_alloc(first_byte);
764c7c9a464b68 Johannes Thumshirn 2021-05-19  494  			bio->bi_opf = bio_op | write_flags;
c8b978188c9a0f Chris Mason        2008-10-29  495  			bio->bi_private = cb;
c8b978188c9a0f Chris Mason        2008-10-29  496  			bio->bi_end_io = end_compressed_bio_write;
46bcff2bfc5e6a Dennis Zhou        2019-12-11  497  			if (blkcg_css)
7b62e66cbbfb46 Dennis Zhou        2019-12-11  498  				bio->bi_opf |= REQ_CGROUP_PUNT;
764c7c9a464b68 Johannes Thumshirn 2021-05-19  499  			/*
764c7c9a464b68 Johannes Thumshirn 2021-05-19  500  			 * Use bio_add_page() to ensure the bio has at least one
764c7c9a464b68 Johannes Thumshirn 2021-05-19  501  			 * page.
764c7c9a464b68 Johannes Thumshirn 2021-05-19  502  			 */
09cbfeaf1a5a67 Kirill A. Shutemov 2016-04-01  503  			bio_add_page(bio, page, PAGE_SIZE, 0);
c8b978188c9a0f Chris Mason        2008-10-29  504  		}
09cbfeaf1a5a67 Kirill A. Shutemov 2016-04-01  505  		if (bytes_left < PAGE_SIZE) {
0b246afa62b0cf Jeff Mahoney       2016-06-22  506  			btrfs_info(fs_info,
282ab3ff16120e David Sterba       2019-10-14  507  					"bytes left %lu compress len %u nr %u",
cfbc246eaae2a1 Chris Mason        2008-10-30  508  			       bytes_left, cb->compressed_len, cb->nr_pages);
cfbc246eaae2a1 Chris Mason        2008-10-30  509  		}
09cbfeaf1a5a67 Kirill A. Shutemov 2016-04-01  510  		bytes_left -= PAGE_SIZE;
09cbfeaf1a5a67 Kirill A. Shutemov 2016-04-01  511  		first_byte += PAGE_SIZE;
771ed689d2cd53 Chris Mason        2008-11-06  512  		cond_resched();
c8b978188c9a0f Chris Mason        2008-10-29  513  	}
c8b978188c9a0f Chris Mason        2008-10-29  514  
0b246afa62b0cf Jeff Mahoney       2016-06-22  515  	ret = btrfs_bio_wq_end_io(fs_info, bio, BTRFS_WQ_ENDIO_DATA);
79787eaab46121 Jeff Mahoney       2012-03-12  516  	BUG_ON(ret); /* -ENOMEM */
c8b978188c9a0f Chris Mason        2008-10-29  517  
e55179b3d7d41d Li Zefan           2011-07-14  518  	if (!skip_sum) {
c7ee1819dc7169 Nikolay Borisov    2020-06-03  519  		ret = btrfs_csum_one_bio(inode, bio, start, 1);
79787eaab46121 Jeff Mahoney       2012-03-12  520  		BUG_ON(ret); /* -ENOMEM */
e55179b3d7d41d Li Zefan           2011-07-14  521  	}
d20f7043fa6565 Chris Mason        2008-12-08  522  
08635bae0b4ceb Chris Mason        2019-07-10  523  	ret = btrfs_map_bio(fs_info, bio, 0);
f5daf2c780f2dd Liu Bo             2016-06-22  524  	if (ret) {
4e4cbee93d5613 Christoph Hellwig  2017-06-03  525  		bio->bi_status = ret;
f5daf2c780f2dd Liu Bo             2016-06-22  526  		bio_endio(bio);
f5daf2c780f2dd Liu Bo             2016-06-22  527  	}
c8b978188c9a0f Chris Mason        2008-10-29  528  
46bcff2bfc5e6a Dennis Zhou        2019-12-11  529  	if (blkcg_css)
46bcff2bfc5e6a Dennis Zhou        2019-12-11  530  		kthread_associate_blkcg(NULL);
46bcff2bfc5e6a Dennis Zhou        2019-12-11  531  
c8b978188c9a0f Chris Mason        2008-10-29  532  	return 0;
c8b978188c9a0f Chris Mason        2008-10-29  533  }
c8b978188c9a0f Chris Mason        2008-10-29  534  

:::::: The code at line 441 was first introduced by commit
:::::: 46bcff2bfc5e6a8c638d3a32e4f6f6fa4bd01461 btrfs: fix compressed write bio blkcg attribution

:::::: TO: Dennis Zhou <dennis@kernel.org>
:::::: CC: David Sterba <dsterba@suse.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 34668 bytes --]

                 reply	other threads:[~2021-09-07 11:19 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202109071925.ZUKYwGly-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /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.