Re: [PATCH 04/21] xfs: Add attibute remove and helper functions

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

 



On Tue, May 08, 2018 at 10:33:05AM +0300, Amir Goldstein wrote:
> On Sun, May 6, 2018 at 8:24 PM, Allison Henderson
> <allison.henderson@xxxxxxxxxx> wrote:
> > This patch adds xfs_attr_remove_args. These sub-routines remove
> > the attributes specified in @args. We will use this later for setting
> > parent pointers as a deferred attribute operation.
> >
> 
> But this patch also adds xfs_defer_init()+xfs_trans_ijoin()
> so maybe I am not understanding how this work, but it seems
> to be changing logic as well.

Sooooo... I went and took another look at this, having realized that
xfs_da_args.dfops is a *pointer* to a dfops, not the dfops itself.
Subsequently we have a bunch of calls to:

xfs_defer_init(args->dfops, ...);

which AFAICT is careful enough that we always pair the init with a
_finish or a _cancel... but this is really gross behavior.  The da_args
creators will declare a separate dfops on the stack and set args.dfops
to the uninitialized dfops(!) and then the attr code blindly assumes
that it owns this dfops pointer and can therefore reinitialize it at
will.

That will need fixing.

> Please say something about this in commit message.

"Mugga wugga mugga wugga mugga wugga mugga wugga mugga wugga wugggga!!!"

--D

> 
> Thanks,
> Amir.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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