[Ocfs2-devel] [patch 04/11] ocfs2: fix a tiny race when running dirop_fileop_racer
Mark Fasheh
mfasheh at suse.de
Wed Feb 12 15:29:21 PST 2014
> @@ -1097,6 +1174,22 @@ static int ocfs2_rename(struct inode *ol
> goto bail;
> }
> rename_lock = 1;
> +
> + /* here we cannot guarantee the inodes haven't just been
> + * changed, so check if they are nested again */
> + status = ocfs2_check_if_ancestor(osb, new_dir->i_ino,
> + old_inode->i_ino);
> + if (status < 0) {
> + mlog_errno(status);
> + goto bail;
> + } else if (status == 1) {
> + status = -EPERM;
> + mlog(ML_ERROR, "src inode %llu should not be ancestor "
> + "of new dir inode %llu\n",
> + (unsigned long long)old_inode->i_ino,
> + (unsigned long long)new_dir->i_ino);
Is it possible for the user to trigger this mlog(ML_ERROR, "....") print at
will? If so we need to make it a debug print otherwise we risk blowing up
systemlog when someone abuses rename().
--Mark
--
Mark Fasheh
More information about the Ocfs2-devel
mailing list