All of lore.kernel.org
 help / color / mirror / Atom feed
* [hch-block:blkdev.h-includes 2/17] fs/btrfs/compression.c:441:3: error: implicit declaration of function 'kthread_associate_blkcg'
@ 2021-09-07 11:19 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-09-07 11:19 UTC (permalink / raw)
  To: kbuild-all

[-- 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 --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-09-07 11:19 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-07 11:19 [hch-block:blkdev.h-includes 2/17] fs/btrfs/compression.c:441:3: error: implicit declaration of function 'kthread_associate_blkcg' kernel test robot

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.