lkml.org 
[lkml]   [2022]   [May]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectfs/btrfs/tree-log.c:6792: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fdaf9a5840acaab18694a19e0eb0aa51162eeeed
commit: d5f5bd546552a94eefd68c42f40f778c40a89d2c btrfs: pass the dentry to btrfs_log_new_name() instead of the inode
date: 2 months ago
config: x86_64-randconfig-a011 (https://download.01.org/0day-ci/archive/20220526/202205260024.TLEp6Pj2-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-1) 11.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d5f5bd546552a94eefd68c42f40f778c40a89d2c
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout d5f5bd546552a94eefd68c42f40f778c40a89d2c
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

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

All warnings (new ones prefixed by >>):

>> fs/btrfs/tree-log.c:6792: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
* Update the log after adding a new name for an inode.


vim +6792 fs/btrfs/tree-log.c

6790
6791 /**
> 6792 * Update the log after adding a new name for an inode.
6793 *
6794 * @trans: Transaction handle.
6795 * @old_dentry: The dentry associated with the old name and the old
6796 * parent directory.
6797 * @old_dir: The inode of the previous parent directory for the case
6798 * of a rename. For a link operation, it must be NULL.
6799 * @parent: The dentry associated with the directory under which the
6800 * new name is located.
6801 *
6802 * Call this after adding a new name for an inode, as a result of a link or
6803 * rename operation, and it will properly update the log to reflect the new name.
6804 */
6805 void btrfs_log_new_name(struct btrfs_trans_handle *trans,
6806 struct dentry *old_dentry, struct btrfs_inode *old_dir,
6807 struct dentry *parent)
6808 {
6809 struct btrfs_inode *inode = BTRFS_I(d_inode(old_dentry));
6810 struct btrfs_log_ctx ctx;
6811
6812 /*
6813 * this will force the logging code to walk the dentry chain
6814 * up for the file
6815 */
6816 if (!S_ISDIR(inode->vfs_inode.i_mode))
6817 inode->last_unlink_trans = trans->transid;
6818
6819 /*
6820 * if this inode hasn't been logged and directory we're renaming it
6821 * from hasn't been logged, we don't need to log it
6822 */
6823 if (!inode_logged(trans, inode) &&
6824 (!old_dir || !inode_logged(trans, old_dir)))
6825 return;
6826
6827 /*
6828 * If we are doing a rename (old_dir is not NULL) from a directory that
6829 * was previously logged, make sure the next log attempt on the directory
6830 * is not skipped and logs the inode again. This is because the log may
6831 * not currently be authoritative for a range including the old
6832 * BTRFS_DIR_INDEX_KEY key, so we want to make sure after a log replay we
6833 * do not end up with both the new and old dentries around (in case the
6834 * inode is a directory we would have a directory with two hard links and
6835 * 2 inode references for different parents). The next log attempt of
6836 * old_dir will happen at btrfs_log_all_parents(), called through
6837 * btrfs_log_inode_parent() below, because we have previously set
6838 * inode->last_unlink_trans to the current transaction ID, either here or
6839 * at btrfs_record_unlink_dir() in case the inode is a directory.
6840 */
6841 if (old_dir)
6842 old_dir->logged_trans = 0;
6843
6844 btrfs_init_log_ctx(&ctx, &inode->vfs_inode);
6845 ctx.logging_new_name = true;
6846 /*
6847 * We don't care about the return value. If we fail to log the new name
6848 * then we know the next attempt to sync the log will fallback to a full
6849 * transaction commit (due to a call to btrfs_set_log_full_commit()), so
6850 * we don't need to worry about getting a log committed that has an
6851 * inconsistent state after a rename operation.
6852 */
6853 btrfs_log_inode_parent(trans, inode, parent, LOG_INODE_EXISTS, &ctx);
6854 }
6855

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

\
 
 \ /
  Last update: 2022-05-25 18:33    [W:0.109 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site