From patchwork Thu Aug 30 17:41:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Josef Bacik X-Patchwork-Id: 10582439 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 12CCB5A4 for ; Thu, 30 Aug 2018 17:42:46 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 01B9E2C342 for ; Thu, 30 Aug 2018 17:42:46 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EA7602C35E; Thu, 30 Aug 2018 17:42:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9D89D2C342 for ; Thu, 30 Aug 2018 17:42:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727494AbeH3Vp7 (ORCPT ); Thu, 30 Aug 2018 17:45:59 -0400 Received: from mail-qt0-f196.google.com ([209.85.216.196]:36781 "EHLO mail-qt0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726727AbeH3Vp7 (ORCPT ); Thu, 30 Aug 2018 17:45:59 -0400 Received: by mail-qt0-f196.google.com with SMTP id t5-v6so11316797qtn.3 for ; Thu, 30 Aug 2018 10:42:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=toxicpanda-com.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=hQA2QiaAcDFMD13ptawL3ysOtVrK0z54ONtFPBPf75M=; b=Ev2toNaFA+TKSNSfcVwWuppv/LQ6jwFD6I8ie6WXzxuUr4qEdchY0EBYI5JbMoI6on 3Ks/SfhVXLClHJI89AgUbiWLBdzWpdBNUB1zo3qE5ZqcTiIUlu9fGIrluxIeriGc6rtv Pf69Bepwfu+uX4teq+/T0EJp+nWaws81oKmxYLWd48b4AqQc1AmB0jgoy2RzMyOmfmiE keuUn6Plwj4dU+gjKRZIjtEoeMv60INMmKfYOMtKz9B1W+dJMlrnTc9kcXXO3sc2z7lr Dj/sRJIZz+9LfaFAbDYNohb0mgdsSZqHJQe5Si4v89evFxPP4Zs592sgGY+0i2J1ofqB 0w3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=hQA2QiaAcDFMD13ptawL3ysOtVrK0z54ONtFPBPf75M=; b=AkB7/j5l/a7OBm/4Sa/YJmmUngsmibMHeypPdKmVbv08bDSgqs5q/0eyB/Jrolrqls PMrw0hRx68gc2p0sjNuZQsIpz4G+3geZKs/LkGjhMHpwyMdPEmT9F4b/xNx5NbTTww35 Pt18RiQ7l80EQ0sWTzdVHVnyBuN3lQl6s+2/9oAGSdBkbbLIW5S6ucjd8uxFyMdc0FTB B3LZ2rt0JYZh9yFXTRm2Yo9BtuPuW0jxGgDBrKxDUqrAq5UaawjwfazvALw6mH9znn+G MvE2tqGNXVhzNbvaQWGp5jY256GDpxxf8UHYyQlkvNIVFqjUwISAOl6jp1gfJctJd+lD 2lUQ== X-Gm-Message-State: APzg51DvnfQyjXYpm1qEkcRxp/+cmaS9JvV2IVtBNDZAzYi4VsHLaPI1 Df78Cit1jTAlPQhc9MOv5Nm5BbIy/rqesw== X-Google-Smtp-Source: ANB0VdYQ0PQDc//oLEWOvl/IFt5D8WOSKvzGNXg1L8aOYGOmUnFUeRBmh4PfzxE544y8ZkJ+5ULj6g== X-Received: by 2002:ae9:e314:: with SMTP id v20-v6mr12580573qkf.69.1535650963083; Thu, 30 Aug 2018 10:42:43 -0700 (PDT) Received: from localhost ([107.15.81.208]) by smtp.gmail.com with ESMTPSA id p23-v6sm5027360qtf.6.2018.08.30.10.42.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 30 Aug 2018 10:42:42 -0700 (PDT) From: Josef Bacik To: linux-btrfs@vger.kernel.org Subject: [PATCH 08/35] btrfs: release metadata before running delayed refs Date: Thu, 30 Aug 2018 13:41:58 -0400 Message-Id: <20180830174225.2200-9-josef@toxicpanda.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180830174225.2200-1-josef@toxicpanda.com> References: <20180830174225.2200-1-josef@toxicpanda.com> Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP We want to release the unused reservation we have since it refills the delayed refs reserve, which will make everything go smoother when running the delayed refs if we're short on our reservation. Signed-off-by: Josef Bacik Reviewed-by: Omar Sandoval Reviewed-by: Nikolay Borisov Reviewed-by: Liu Bo --- fs/btrfs/transaction.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c index 99741254e27e..ebb0c0405598 100644 --- a/fs/btrfs/transaction.c +++ b/fs/btrfs/transaction.c @@ -1915,6 +1915,9 @@ int btrfs_commit_transaction(struct btrfs_trans_handle *trans) return ret; } + btrfs_trans_release_metadata(trans); + trans->block_rsv = NULL; + /* make a pass through all the delayed refs we have so far * any runnings procs may add more while we are here */ @@ -1924,9 +1927,6 @@ int btrfs_commit_transaction(struct btrfs_trans_handle *trans) return ret; } - btrfs_trans_release_metadata(trans); - trans->block_rsv = NULL; - cur_trans = trans->transaction; /*