All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Chao Yu <yuchao0@huawei.com>, Chao Yu <chao@kernel.org>
Cc: kbuild-all@lists.01.org, Chao Yu <yuchao0@huawei.com>,
	Chao Yu <chao@kernel.org>,
	linux-kernel@vger.kernel.org
Subject: [chao:feature/dax 1/10] fs/f2fs/super.c:1635:9: error: implicit declaration of function 'fs_put_dax'
Date: Mon, 8 Aug 2022 03:47:39 +0800	[thread overview]
Message-ID: <202208080337.Chy4GFmX-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/chao/linux.git feature/dax
head:   42f73c9b2a369f724de6c1df5acb0bbde2688e35
commit: 7df0eb556b0ee20e66872600b62542a7f39d444c [1/10] f2fs: support iomap operation
config: arm-randconfig-r001-20220807 (https://download.01.org/0day-ci/archive/20220808/202208080337.Chy4GFmX-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
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
        # https://git.kernel.org/pub/scm/linux/kernel/git/chao/linux.git/commit/?id=7df0eb556b0ee20e66872600b62542a7f39d444c
        git remote add chao https://git.kernel.org/pub/scm/linux/kernel/git/chao/linux.git
        git fetch --no-tags chao feature/dax
        git checkout 7df0eb556b0ee20e66872600b62542a7f39d444c
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash fs/

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

All errors (new ones prefixed by >>):

   fs/f2fs/super.c: In function 'f2fs_put_super':
>> fs/f2fs/super.c:1635:9: error: implicit declaration of function 'fs_put_dax' [-Werror=implicit-function-declaration]
    1635 |         fs_put_dax(sbi->s_daxdev);
         |         ^~~~~~~~~~
   fs/f2fs/super.c: In function 'f2fs_fill_super':
>> fs/f2fs/super.c:4037:25: error: implicit declaration of function 'fs_dax_get_by_bdev'; did you mean 'blkdev_get_by_dev'? [-Werror=implicit-function-declaration]
    4037 |         sbi->s_daxdev = fs_dax_get_by_bdev(sb->s_bdev, &sbi->s_dax_part_off);
         |                         ^~~~~~~~~~~~~~~~~~
         |                         blkdev_get_by_dev
   fs/f2fs/super.c:4037:23: warning: assignment to 'struct dax_device *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    4037 |         sbi->s_daxdev = fs_dax_get_by_bdev(sb->s_bdev, &sbi->s_dax_part_off);
         |                       ^
   cc1: some warnings being treated as errors


vim +/fs_put_dax +1635 fs/f2fs/super.c

  1531	
  1532	static void f2fs_put_super(struct super_block *sb)
  1533	{
  1534		struct f2fs_sb_info *sbi = F2FS_SB(sb);
  1535		int i;
  1536		bool dropped;
  1537	
  1538		/* unregister procfs/sysfs entries in advance to avoid race case */
  1539		f2fs_unregister_sysfs(sbi);
  1540	
  1541		f2fs_quota_off_umount(sb);
  1542	
  1543		/* prevent remaining shrinker jobs */
  1544		mutex_lock(&sbi->umount_mutex);
  1545	
  1546		/*
  1547		 * flush all issued checkpoints and stop checkpoint issue thread.
  1548		 * after then, all checkpoints should be done by each process context.
  1549		 */
  1550		f2fs_stop_ckpt_thread(sbi);
  1551	
  1552		/*
  1553		 * We don't need to do checkpoint when superblock is clean.
  1554		 * But, the previous checkpoint was not done by umount, it needs to do
  1555		 * clean checkpoint again.
  1556		 */
  1557		if ((is_sbi_flag_set(sbi, SBI_IS_DIRTY) ||
  1558				!is_set_ckpt_flags(sbi, CP_UMOUNT_FLAG))) {
  1559			struct cp_control cpc = {
  1560				.reason = CP_UMOUNT,
  1561			};
  1562			f2fs_write_checkpoint(sbi, &cpc);
  1563		}
  1564	
  1565		/* be sure to wait for any on-going discard commands */
  1566		dropped = f2fs_issue_discard_timeout(sbi);
  1567	
  1568		if ((f2fs_hw_support_discard(sbi) || f2fs_hw_should_discard(sbi)) &&
  1569						!sbi->discard_blks && !dropped) {
  1570			struct cp_control cpc = {
  1571				.reason = CP_UMOUNT | CP_TRIMMED,
  1572			};
  1573			f2fs_write_checkpoint(sbi, &cpc);
  1574		}
  1575	
  1576		/*
  1577		 * normally superblock is clean, so we need to release this.
  1578		 * In addition, EIO will skip do checkpoint, we need this as well.
  1579		 */
  1580		f2fs_release_ino_entry(sbi, true);
  1581	
  1582		f2fs_leave_shrinker(sbi);
  1583		mutex_unlock(&sbi->umount_mutex);
  1584	
  1585		/* our cp_error case, we can wait for any writeback page */
  1586		f2fs_flush_merged_writes(sbi);
  1587	
  1588		f2fs_wait_on_all_pages(sbi, F2FS_WB_CP_DATA);
  1589	
  1590		f2fs_bug_on(sbi, sbi->fsync_node_num);
  1591	
  1592		f2fs_destroy_compress_inode(sbi);
  1593	
  1594		iput(sbi->node_inode);
  1595		sbi->node_inode = NULL;
  1596	
  1597		iput(sbi->meta_inode);
  1598		sbi->meta_inode = NULL;
  1599	
  1600		/*
  1601		 * iput() can update stat information, if f2fs_write_checkpoint()
  1602		 * above failed with error.
  1603		 */
  1604		f2fs_destroy_stats(sbi);
  1605	
  1606		/* destroy f2fs internal modules */
  1607		f2fs_destroy_node_manager(sbi);
  1608		f2fs_destroy_segment_manager(sbi);
  1609	
  1610		f2fs_destroy_post_read_wq(sbi);
  1611	
  1612		kvfree(sbi->ckpt);
  1613	
  1614		sb->s_fs_info = NULL;
  1615		if (sbi->s_chksum_driver)
  1616			crypto_free_shash(sbi->s_chksum_driver);
  1617		kfree(sbi->raw_super);
  1618	
  1619		destroy_device_list(sbi);
  1620		f2fs_destroy_page_array_cache(sbi);
  1621		f2fs_destroy_xattr_caches(sbi);
  1622		mempool_destroy(sbi->write_io_dummy);
  1623	#ifdef CONFIG_QUOTA
  1624		for (i = 0; i < MAXQUOTAS; i++)
  1625			kfree(F2FS_OPTION(sbi).s_qf_names[i]);
  1626	#endif
  1627		fscrypt_free_dummy_policy(&F2FS_OPTION(sbi).dummy_enc_policy);
  1628		destroy_percpu_info(sbi);
  1629		f2fs_destroy_iostat(sbi);
  1630		for (i = 0; i < NR_PAGE_TYPE; i++)
  1631			kvfree(sbi->write_io[i]);
  1632	#if IS_ENABLED(CONFIG_UNICODE)
  1633		utf8_unload(sb->s_encoding);
  1634	#endif
> 1635		fs_put_dax(sbi->s_daxdev);
  1636		kfree(sbi);
  1637	}
  1638	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

             reply	other threads:[~2022-08-07 19:48 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-07 19:47 kernel test robot [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-08-07 19:47 [chao:feature/dax 1/10] fs/f2fs/super.c:1635:9: error: implicit declaration of function 'fs_put_dax' kernel test robot

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=202208080337.Chy4GFmX-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=chao@kernel.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=yuchao0@huawei.com \
    /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.