Received: by 10.223.185.116 with SMTP id b49csp1061284wrg; Fri, 23 Feb 2018 11:12:17 -0800 (PST) X-Google-Smtp-Source: AH8x225tNesKyIcfIP/iFVDtrh7Mfpl8VXnLBq+Z5YUaNmbXdt8IFDGagqoO5mjYm3QoEaL2b9D3 X-Received: by 2002:a17:902:5819:: with SMTP id m25-v6mr2608140pli.248.1519413137539; Fri, 23 Feb 2018 11:12:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519413137; cv=none; d=google.com; s=arc-20160816; b=cKzjSCbWpVAK/SDGSloM0SBRWFdylpWvIHSZnha3mBRr7EONfhx1cHvTfpnIHvj1YR FR0vTulmFO+aZp+a1CgOYTao3FaKnLzJwfg/N9OhZpPyPDx6xHIGdu2S1XIpEVVoorDh kSBUQpsPpOMa9EQhgAeoVRajyuvqPwxsXH3isX1xDjLK5z7qj3+oeMA5GDswIJ4GtZ67 1uq8q4F4MUZQ+x6raCcV2xETg9VtU8EVTqnasAbp+o4fQFD9LhSwDxbA7YViwOfe/khg MSzvo+z9hGKlgNfrG3beITSyDSfM0+OB9e1DoDmYQI+KwHKzMhIAt5mjwOtzpjbkIpgs opgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=NOjZooq6u65QtqBIPzsyPzgUUYrNPVCikGKkBwSMXFI=; b=kaY1Fihygsmsnd69yAOHErWXYXAnHy2SWenvQoqmn9erSkxL/ZPXfl92K8uCM18vQu +Y5LyZjjoBKouG5RVdAfxGOpoYATK7V8+zfqUdaUu551KRAF/tfZfkQKq2gKKjB7XhZ6 TkYy4AGk3/6enIL6mF/KufbDSFJOMMheb24gJjc15qngD4UZbUCNnvvNh0g5RMQpALIr pMEfZNSwoqsbLNF/6r2G7QIhO0qCebB2YZVCuO+BAIzs8sy3KcHJhzaaCHJV0ckjj8DN DKbTd5o+PWYd9jgFdi9Vq8mI/9dgU7vPu5ZMXSp8Bp2b0IbRnUTcbMRIGycMoFK+gEFG rCng== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w9-v6si2158470plz.12.2018.02.23.11.12.02; Fri, 23 Feb 2018 11:12:17 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935626AbeBWS4g (ORCPT + 99 others); Fri, 23 Feb 2018 13:56:36 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:48936 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S935609AbeBWS4b (ORCPT ); Fri, 23 Feb 2018 13:56:31 -0500 Received: from localhost (LFbn-1-12258-90.w90-92.abo.wanadoo.fr [90.92.71.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id B3DEA12C8; Fri, 23 Feb 2018 18:56:29 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Omar Sandoval , Qu Wenruo , David Sterba , Sasha Levin Subject: [PATCH 4.14 119/159] Btrfs: disable FUA if mounted with nobarrier Date: Fri, 23 Feb 2018 19:27:07 +0100 Message-Id: <20180223170757.691151421@linuxfoundation.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180223170743.086611315@linuxfoundation.org> References: <20180223170743.086611315@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Omar Sandoval [ Upstream commit 1b9e619c5bc8235cfba3dc4ced2fb0e3554a05d4 ] I was seeing disk flushes still happening when I mounted a Btrfs filesystem with nobarrier for testing. This is because we use FUA to write out the first super block, and on devices without FUA support, the block layer translates FUA to a flush. Even on devices supporting true FUA, using FUA when we asked for no barriers is surprising. Fixes: 387125fc722a8ed ("Btrfs: fix barrier flushes") Signed-off-by: Omar Sandoval Reviewed-by: Qu Wenruo Reviewed-by: David Sterba Signed-off-by: David Sterba Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- fs/btrfs/disk-io.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -3391,6 +3391,7 @@ static int write_dev_supers(struct btrfs int errors = 0; u32 crc; u64 bytenr; + int op_flags; if (max_mirrors == 0) max_mirrors = BTRFS_SUPER_MIRROR_MAX; @@ -3433,13 +3434,10 @@ static int write_dev_supers(struct btrfs * we fua the first super. The others we allow * to go down lazy. */ - if (i == 0) { - ret = btrfsic_submit_bh(REQ_OP_WRITE, - REQ_SYNC | REQ_FUA | REQ_META | REQ_PRIO, bh); - } else { - ret = btrfsic_submit_bh(REQ_OP_WRITE, - REQ_SYNC | REQ_META | REQ_PRIO, bh); - } + op_flags = REQ_SYNC | REQ_META | REQ_PRIO; + if (i == 0 && !btrfs_test_opt(device->fs_info, NOBARRIER)) + op_flags |= REQ_FUA; + ret = btrfsic_submit_bh(REQ_OP_WRITE, op_flags, bh); if (ret) errors++; }