Re: Deadlock in nullfs/zfs somewhere

From: Andriy Gapon <avg_at_FreeBSD.org>
Date: Wed, 17 Jul 2013 14:26:12 +0300
on 16/07/2013 22:40 Adrian Chadd said the following:
> :(  So it's a deadlock. Ok, so what's next?

A creative process...

One possibility is to add getnewvnode_reserve() calls before the ZFS transaction
beginnings in the places where a new vnode/znode may have to be allocated within
a transaction.
This looks like a quick and cheap solution but it makes the code somewhat messier.

Another possibility is to change something in VFS machinery, so that VOP_RECLAIM
getting blocked for one filesystem does not prevent vnode allocation for other
filesystems.

I could think of other possible solutions via infrastructural changes in VFS or
ZFS...

-- 
Andriy Gapon
Received on Wed Jul 17 2013 - 09:27:16 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:39 UTC