From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Mason Subject: Re: [PATCH] Btrfs: fix delayed insertion reservations V2 Date: Fri, 4 Nov 2011 20:47:56 -0400 Message-ID: <20111105004756.GA4253@shiny> References: <20111104211853.GB13434@dhcp231-156.rdu.redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-btrfs@vger.kernel.org To: Josef Bacik Return-path: In-Reply-To: <20111104211853.GB13434@dhcp231-156.rdu.redhat.com> List-ID: On Fri, Nov 04, 2011 at 05:18:54PM -0400, Josef Bacik wrote: > V1->V2: I stupidly thought I could get away with some flushing if we needed > space but I was wrong, we could deadlock, so add a btrfs_add_bytes_noflush > variant that will not do any flushing and will just return ENOSPC which will let > us fallback and do our full flushing. > fs/btrfs/ctree.h | 3 +++ > fs/btrfs/delayed-inode.c | 36 ++++++++++++++++++++++++++++-------- > fs/btrfs/extent-tree.c | 18 ++++++++++++++++++ > 3 files changed, 49 insertions(+), 8 deletions(-) This helps but it I've got a bunch of these in the log now: btrfs_dirty_inode: 205 callbacks suppressed btrfs: fail to dirty inode 1294 error -28 btrfs: fail to dirty inode 1208 error -28 btrfs: fail to dirty inode 714 error -28 btrfs: fail to dirty inode 1772 error -28 btrfs: fail to dirty inode 1389 error -28 btrfs: fail to dirty inode 770 error -28 btrfs: fail to dirty inode 345 error -28 btrfs: fail to dirty inode 1533 error -28 btrfs: fail to dirty inode 624 error -28 btrfs: fail to dirty inode 1085 error -28 -chris