unionfs bugs, a partial patch and some comments [Was: Re: 1-BETA3 Panic: __lockmgr_args: downgrade a recursed lockmgr nfs @ /usr/local/share/deploy-tools/RELENG_11/src/sys/fs/unionfs/union_vnops.c:1905]

Konstantin Belousov kostikbel at gmail.com
Thu Aug 18 07:55:32 UTC 2016


On Thu, Aug 18, 2016 at 12:03:33AM +0000, Rick Macklem wrote:
>  Kostik wrote:
> [stuff snipped]
> >insmnque() performs the cleanup on its own, and that default cleanup isnot suitable >for the situation.  I think that insmntque1() would betterfit your requirements, your >need to move the common code into a helper.It seems that >unionfs_ins_cached_vnode() cleanup could reuse it.
> <https://lists.freebsd.org>
> I've attached an updated patch (untested like the last one). This one creates a
> custom version insmntque_stddtr() that first calls unionfs_noderem() and then
> does the same stuff as insmntque_stddtr(). This looks like it does the required
> stuff (unionfs_noderem() is what the unionfs VOP_RECLAIM() does).
> It switches the node back to using its own v_vnlock that is exclusively locked,
> among other things.

The patch looks good to me, from the visual shape of it.


More information about the freebsd-stable mailing list