Re: [GIT PULL] Ceph updates for 5.13-rc1

From: Al Viro
Date: Thu May 06 2021 - 20:53:51 EST


On Thu, May 06, 2021 at 10:51:33AM -0700, Linus Torvalds wrote:
> On Thu, May 6, 2021 at 7:33 AM Ilya Dryomov <idryomov@xxxxxxxxx> wrote:
> >
> > There is a merge conflict in fs/ceph/dir.c because Jeff's inode
> > type handling patch went through the vfs tree together with Al's
> > inode_wrong_type() helper. for-linus-merged has the resolution.
>
> Actually, the linux-next resolution looks wrong - or at least
> unnecessary - to me.
>
> The conversion to d_splice_alias() means that the IS_ERR() test is now
> pointless, because d_splice_alias() handles an error-pointer natively,
> and just returns the error back with ERR_CAST().
>
> So the proper resolution seems to be to just drop the IS_ERR().

Agreed; -next resolution is not wrong per se, but it's not needed -
d_splice_alias(ERR_PTR(e), d) == ERR_PTR(e) for any e in -4095..-1,
so the variant of resolution in mainline merge will do the right thing.