Re: [PATCH stable 5.15] xfs: remove incorrect ASSERT in xfs_rename

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 08, 2022 at 08:54:13AM -0700, Darrick J. Wong wrote:
> On Thu, Jul 07, 2022 at 03:58:35PM -0700, Kuniyuki Iwashima wrote:
> > From: Eric Sandeen <sandeen@xxxxxxxxxx>
> > 
> > commit e445976537ad139162980bee015b7364e5b64fff upstream.
> > 
> > Ayushman Dutta reported our 5.10 kernel hit the warning.  It was because
> > the original commit misses a Fixes tag and was not backported to the stable
> > tree.  The fix is merged in 5.16, so please backport it to 5.15 first.
> > 
> > This ASSERT in xfs_rename is a) incorrect, because
> > (RENAME_WHITEOUT|RENAME_NOREPLACE) is a valid combination, and
> > b) unnecessary, because actual invalid flag combinations are already
> > handled at the vfs level in do_renameat2() before we get called.
> > So, remove it.
> > 
> > Reported-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
> > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> > Reviewed-by: Darrick J. Wong <djwong@xxxxxxxxxx>
> > Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>
> > Fixes: 7dcf5c3e4527 ("xfs: add RENAME_WHITEOUT support")
> > Reported-by: Ayushman Dutta <ayudutta@xxxxxxxxxx>
> > Signed-off-by: Kuniyuki Iwashima <kuniyu@xxxxxxxxxx>
> 
> Looks good to me, but you really ought to send 5.10 patches to the 5.10
> XFS maintainer (Amir, now cc'd).  (Yes, this is a recent change.) ;)

...and of course the first thing that happens is that I mix up the 5.10
and 5.15 patches.

Amir is the 5.10 maintainer, Leah is the 5.15 maintainer.  Sorry about
the mixup.  /me pours himself a third(!) cup of coffee.

--D

> Acked-by: Darrick J. Wong <djwong@xxxxxxxxxx>
> 
> --D
> 
> > ---
> > I will send another patch for 4.9 - 5.4 because of a conflict with idmapped
> > mount changes.
> > ---
> >  fs/xfs/xfs_inode.c | 1 -
> >  1 file changed, 1 deletion(-)
> > 
> > diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
> > index 2477e301fa82..c19f3ca605af 100644
> > --- a/fs/xfs/xfs_inode.c
> > +++ b/fs/xfs/xfs_inode.c
> > @@ -3128,7 +3128,6 @@ xfs_rename(
> >  	 * appropriately.
> >  	 */
> >  	if (flags & RENAME_WHITEOUT) {
> > -		ASSERT(!(flags & (RENAME_NOREPLACE | RENAME_EXCHANGE)));
> >  		error = xfs_rename_alloc_whiteout(mnt_userns, target_dp, &wip);
> >  		if (error)
> >  			return error;
> > -- 
> > 2.30.2
> > 



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux