From patchwork Thu Jan 11 09:17:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nikolay Borisov X-Patchwork-Id: 10157651 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 8542A605F8 for ; Thu, 11 Jan 2018 09:18:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 84AEF2869B for ; Thu, 11 Jan 2018 09:18:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7961B286A9; Thu, 11 Jan 2018 09:18:02 +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=-6.9 required=2.0 tests=BAYES_00,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 19A642869B for ; Thu, 11 Jan 2018 09:18:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754442AbeAKJR5 (ORCPT ); Thu, 11 Jan 2018 04:17:57 -0500 Received: from mx2.suse.de ([195.135.220.15]:59160 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754413AbeAKJRy (ORCPT ); Thu, 11 Jan 2018 04:17:54 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id BB875AD48; Thu, 11 Jan 2018 09:17:52 +0000 (UTC) From: Nikolay Borisov To: fstests@vger.kernel.org Cc: linux-btrfs@vger.kernel.org, Nikolay Borisov Subject: [PATCH v2] generic/015: Change the test filesystem size to 101mb Date: Thu, 11 Jan 2018 11:17:47 +0200 Message-Id: <1515662267-21518-1-git-send-email-nborisov@suse.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1515401010-26802-1-git-send-email-nborisov@suse.com> References: <1515401010-26802-1-git-send-email-nborisov@suse.com> Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This test has been failing for btrfs for quite some time, at least since 4.7. There are 2 implementation details of btrfs that it exposes: 1. Currently btrfs filesystem under 100mb are created in Mixed block group mode. Freespace accounting for it is not 100% accurate - I've observed consistent 1mb discrepancy between a newly created filesystem, then writing a file and deleting it and checking the free space. 2. BTRFS won't flush it's delayed allocation on file deletion if less than 32mb are deleted. On such files we need to perform sync (missing in the test) or wait until time elapses for transaction commit. In order to avoid both of the aforementioned idiosyncrasies of the fs make the test filesystem 101mb. With this we achieve 2 things: 1. Since the filesystem is larger we can create a file larger than 32mb, so it's going to be flushed upon deletion and numbers acquired from df will be accurate 2. We don't create the filesystem in mixed mode and also since the 1mb is less than %1 of 101mb we will fall within the tolerance of 1% Signed-off-by: Nikolay Borisov --- tests/generic/015 | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/generic/015 b/tests/generic/015 index 78f2b13..9dcdde9 100755 --- a/tests/generic/015 +++ b/tests/generic/015 @@ -53,7 +53,11 @@ _supported_os Linux _require_scratch _require_no_large_scratch_dev -_scratch_mkfs_sized `expr 50 \* 1024 \* 1024` >/dev/null 2>&1 \ +# With filesystems less than 100mb btrfs is created in mixed mode +# which can lead to slight accounting errors of 1mb. Having the +# fs be at least 101 mb ensures those errors are within the error +# tolerance of 1% +_scratch_mkfs_sized `expr 101 \* 1024 \* 1024` >/dev/null 2>&1 \ || _fail "mkfs failed" _scratch_mount || _fail "mount failed" out=$SCRATCH_MNT/fillup.$$