From: kernel test robot <lkp@intel.com>
To: Filipe Manana <fdmanana@suse.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org,
David Sterba <dsterba@suse.com>,
linux-doc@vger.kernel.org
Subject: [kdave-btrfs-devel:misc-next 149/153] fs/btrfs/tree-log.c:6755: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
Date: Wed, 26 Jan 2022 07:12:14 +0800 [thread overview]
Message-ID: <202201260759.edlA9lHT-lkp@intel.com> (raw)
tree: https://github.com/kdave/btrfs-devel.git misc-next
head: 8e5d6a5c062f370d4d0b2dace7e95ab40c6ce3dd
commit: 6bfc5d45946acd8286fb026137f20ee8747a50f1 [149/153] btrfs: pass the dentry to btrfs_log_new_name() instead of the inode
config: nds32-allyesconfig (https://download.01.org/0day-ci/archive/20220126/202201260759.edlA9lHT-lkp@intel.com/config)
compiler: nds32le-linux-gcc (GCC) 11.2.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://github.com/kdave/btrfs-devel/commit/6bfc5d45946acd8286fb026137f20ee8747a50f1
git remote add kdave-btrfs-devel https://github.com/kdave/btrfs-devel.git
git fetch --no-tags kdave-btrfs-devel misc-next
git checkout 6bfc5d45946acd8286fb026137f20ee8747a50f1
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=nds32 SHELL=/bin/bash fs/btrfs/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> fs/btrfs/tree-log.c:6755: 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 +6755 fs/btrfs/tree-log.c
6753
6754 /**
> 6755 * Update the log after adding a new name for an inode.
6756 *
6757 * @trans: Transaction handle.
6758 * @old_dentry: The dentry associated with the old name and the old
6759 * parent directory.
6760 * @old_dir: The inode of the previous parent directory for the case
6761 * of a rename. For a link operation, it must be NULL.
6762 * @parent: The dentry associated with the directory under which the
6763 * new name is located.
6764 *
6765 * Call this after adding a new name for an inode, as a result of a link or
6766 * rename operation, and it will properly update the log to reflect the new name.
6767 */
6768 void btrfs_log_new_name(struct btrfs_trans_handle *trans,
6769 struct dentry *old_dentry, struct btrfs_inode *old_dir,
6770 struct dentry *parent)
6771 {
6772 struct btrfs_inode *inode = BTRFS_I(d_inode(old_dentry));
6773 struct btrfs_log_ctx ctx;
6774
6775 /*
6776 * this will force the logging code to walk the dentry chain
6777 * up for the file
6778 */
6779 if (!S_ISDIR(inode->vfs_inode.i_mode))
6780 inode->last_unlink_trans = trans->transid;
6781
6782 /*
6783 * if this inode hasn't been logged and directory we're renaming it
6784 * from hasn't been logged, we don't need to log it
6785 */
6786 if (!inode_logged(trans, inode) &&
6787 (!old_dir || !inode_logged(trans, old_dir)))
6788 return;
6789
6790 /*
6791 * If we are doing a rename (old_dir is not NULL) from a directory that
6792 * was previously logged, make sure the next log attempt on the directory
6793 * is not skipped and logs the inode again. This is because the log may
6794 * not currently be authoritative for a range including the old
6795 * BTRFS_DIR_INDEX_KEY key, so we want to make sure after a log replay we
6796 * do not end up with both the new and old dentries around (in case the
6797 * inode is a directory we would have a directory with two hard links and
6798 * 2 inode references for different parents). The next log attempt of
6799 * old_dir will happen at btrfs_log_all_parents(), called through
6800 * btrfs_log_inode_parent() below, because we have previously set
6801 * inode->last_unlink_trans to the current transaction ID, either here or
6802 * at btrfs_record_unlink_dir() in case the inode is a directory.
6803 */
6804 if (old_dir)
6805 old_dir->logged_trans = 0;
6806
6807 btrfs_init_log_ctx(&ctx, &inode->vfs_inode);
6808 ctx.logging_new_name = true;
6809 /*
6810 * We don't care about the return value. If we fail to log the new name
6811 * then we know the next attempt to sync the log will fallback to a full
6812 * transaction commit (due to a call to btrfs_set_log_full_commit()), so
6813 * we don't need to worry about getting a log committed that has an
6814 * inconsistent state after a rename operation.
6815 */
6816 btrfs_log_inode_parent(trans, inode, parent, LOG_INODE_EXISTS, &ctx);
6817 }
6818
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [kdave-btrfs-devel:misc-next 149/153] fs/btrfs/tree-log.c:6755: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
Date: Wed, 26 Jan 2022 07:12:14 +0800 [thread overview]
Message-ID: <202201260759.edlA9lHT-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 4844 bytes --]
tree: https://github.com/kdave/btrfs-devel.git misc-next
head: 8e5d6a5c062f370d4d0b2dace7e95ab40c6ce3dd
commit: 6bfc5d45946acd8286fb026137f20ee8747a50f1 [149/153] btrfs: pass the dentry to btrfs_log_new_name() instead of the inode
config: nds32-allyesconfig (https://download.01.org/0day-ci/archive/20220126/202201260759.edlA9lHT-lkp(a)intel.com/config)
compiler: nds32le-linux-gcc (GCC) 11.2.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://github.com/kdave/btrfs-devel/commit/6bfc5d45946acd8286fb026137f20ee8747a50f1
git remote add kdave-btrfs-devel https://github.com/kdave/btrfs-devel.git
git fetch --no-tags kdave-btrfs-devel misc-next
git checkout 6bfc5d45946acd8286fb026137f20ee8747a50f1
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=nds32 SHELL=/bin/bash fs/btrfs/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> fs/btrfs/tree-log.c:6755: 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 +6755 fs/btrfs/tree-log.c
6753
6754 /**
> 6755 * Update the log after adding a new name for an inode.
6756 *
6757 * @trans: Transaction handle.
6758 * @old_dentry: The dentry associated with the old name and the old
6759 * parent directory.
6760 * @old_dir: The inode of the previous parent directory for the case
6761 * of a rename. For a link operation, it must be NULL.
6762 * @parent: The dentry associated with the directory under which the
6763 * new name is located.
6764 *
6765 * Call this after adding a new name for an inode, as a result of a link or
6766 * rename operation, and it will properly update the log to reflect the new name.
6767 */
6768 void btrfs_log_new_name(struct btrfs_trans_handle *trans,
6769 struct dentry *old_dentry, struct btrfs_inode *old_dir,
6770 struct dentry *parent)
6771 {
6772 struct btrfs_inode *inode = BTRFS_I(d_inode(old_dentry));
6773 struct btrfs_log_ctx ctx;
6774
6775 /*
6776 * this will force the logging code to walk the dentry chain
6777 * up for the file
6778 */
6779 if (!S_ISDIR(inode->vfs_inode.i_mode))
6780 inode->last_unlink_trans = trans->transid;
6781
6782 /*
6783 * if this inode hasn't been logged and directory we're renaming it
6784 * from hasn't been logged, we don't need to log it
6785 */
6786 if (!inode_logged(trans, inode) &&
6787 (!old_dir || !inode_logged(trans, old_dir)))
6788 return;
6789
6790 /*
6791 * If we are doing a rename (old_dir is not NULL) from a directory that
6792 * was previously logged, make sure the next log attempt on the directory
6793 * is not skipped and logs the inode again. This is because the log may
6794 * not currently be authoritative for a range including the old
6795 * BTRFS_DIR_INDEX_KEY key, so we want to make sure after a log replay we
6796 * do not end up with both the new and old dentries around (in case the
6797 * inode is a directory we would have a directory with two hard links and
6798 * 2 inode references for different parents). The next log attempt of
6799 * old_dir will happen at btrfs_log_all_parents(), called through
6800 * btrfs_log_inode_parent() below, because we have previously set
6801 * inode->last_unlink_trans to the current transaction ID, either here or
6802 * at btrfs_record_unlink_dir() in case the inode is a directory.
6803 */
6804 if (old_dir)
6805 old_dir->logged_trans = 0;
6806
6807 btrfs_init_log_ctx(&ctx, &inode->vfs_inode);
6808 ctx.logging_new_name = true;
6809 /*
6810 * We don't care about the return value. If we fail to log the new name
6811 * then we know the next attempt to sync the log will fallback to a full
6812 * transaction commit (due to a call to btrfs_set_log_full_commit()), so
6813 * we don't need to worry about getting a log committed that has an
6814 * inconsistent state after a rename operation.
6815 */
6816 btrfs_log_inode_parent(trans, inode, parent, LOG_INODE_EXISTS, &ctx);
6817 }
6818
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next reply other threads:[~2022-01-25 23:12 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-25 23:12 kernel test robot [this message]
2022-01-25 23:12 ` [kdave-btrfs-devel:misc-next 149/153] fs/btrfs/tree-log.c:6755: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst kernel test robot
2022-01-26 10:31 ` Filipe Manana
2022-01-26 10:31 ` Filipe Manana
2022-01-26 12:43 ` David Sterba
2022-01-26 12:43 ` David Sterba
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=202201260759.edlA9lHT-lkp@intel.com \
--to=lkp@intel.com \
--cc=dsterba@suse.com \
--cc=fdmanana@suse.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.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.