Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp3099176pxj; Mon, 14 Jun 2021 14:30:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzNqmH8NO25s+KC9yCEH5kYCe1vaGkonBTNvCgoZOD0JWKagoxYfeL+d2nJjG4OIL7AAUH6 X-Received: by 2002:a17:907:35d1:: with SMTP id ap17mr17837558ejc.79.1623706232331; Mon, 14 Jun 2021 14:30:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623706232; cv=none; d=google.com; s=arc-20160816; b=T55PvDn2h1k8xsWKU29OJ8ofAytRfV8+gYFwZIvnrS465u4LKAQpmACQPdVS3IdUWk ICK4+8yz3c4WS8MjdNfAM5pJM14Bw1BrpuOCyGwByw2pm8bUijfUSDO9SqezwJ0idNnk zYszrSl2Fg6rGo90qk2yE46PFlCeZjLO/BVcl3DYFB/irpJDHUJNBuvgUkDhKkrem7Jt Qpy4kfOKSisn39F+FE5Ks/9TOyUlsB3hxGnTh1TwuJ+8l3WuMKEd41ihykiRzYkLxS5l GLyZ5icWhUwB51gnlT7n2D5+eJGw7ULxFQDGVKSDLbDThMFH9WCGaPQACUMHJ98j7YX9 QW9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature:dkim-signature; bh=yPDTs8si2zBRBtH4NG+TBMCnu8ZHdeJcL1egyvuT8bw=; b=Gv8PMt+OxDhLL+vO63gs+8wpp8wdhhUffpR0z7EEZm9Iw5kcQ8PmUarirTEuzrm2al yUiNqL8z2WpwLE91gcII9V6+qBHJ/x86ZWOEVcjxLawPWdc4NuaBoJkNYxflv83MWfZR oaNE4wazmCEj40aD2eFQvaXBZSun8o2ifk/UB+1ne00xA1l3HpuhIZHzeKYBnxcph600 A+bV10phGId4c5VMRPJ79LXN4rjHkIHMvwsSo4Xp95arlPQllyEWmuEiggGoMTIoG97C DlTfwi1BrCcvskKv6GTgcGlWUt7v9t2CL6/4q+tHSeVcqxygm2eMtB79q1S+7nBrEkuH t56g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.cz header.s=susede2_rsa header.b=WK9D1NLk; dkim=neutral (no key) header.i=@suse.cz; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z12si12749922ejl.649.2021.06.14.14.30.01; Mon, 14 Jun 2021 14:30:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.cz header.s=susede2_rsa header.b=WK9D1NLk; dkim=neutral (no key) header.i=@suse.cz; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234594AbhFNVag (ORCPT + 99 others); Mon, 14 Jun 2021 17:30:36 -0400 Received: from smtp-out1.suse.de ([195.135.220.28]:57132 "EHLO smtp-out1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234143AbhFNVag (ORCPT ); Mon, 14 Jun 2021 17:30:36 -0400 Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out1.suse.de (Postfix) with ESMTP id C2E8A21976; Mon, 14 Jun 2021 21:28:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1623706111; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=yPDTs8si2zBRBtH4NG+TBMCnu8ZHdeJcL1egyvuT8bw=; b=WK9D1NLkIstUlwcE9V1tTG2cQ49MFlvCcNB8tpgg5QEXIVd+LT/Pmt2oZrkkEQE2sVyM33 eY+xNR8iGnxhFWb9qPQFj5Li2f560MOWKvse5P993kKUfsApInFjzdY9TTVVkqYNksHOiE V5sz7gvGfRgJGEKxQzA8EnlUcdXH568= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1623706111; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=yPDTs8si2zBRBtH4NG+TBMCnu8ZHdeJcL1egyvuT8bw=; b=L0ApJGZtxlKthKahNoPaZ32fjfQH+IBNJDA3kYef1TrLypxuuPyWWPGCdPSKszbDJ7E96z nOBU0SQn6D+h8aBg== Received: from quack2.suse.cz (unknown [10.100.200.198]) by relay2.suse.de (Postfix) with ESMTP id B7E55A3B9C; Mon, 14 Jun 2021 21:28:31 +0000 (UTC) Received: by quack2.suse.cz (Postfix, from userid 1000) id 4DAB31F2C5F; Mon, 14 Jun 2021 23:28:31 +0200 (CEST) From: Jan Kara To: Ted Tso Cc: , Jan Kara Subject: [PATCH] tune2fs: Update overhead when toggling journal feature Date: Mon, 14 Jun 2021 23:28:30 +0200 Message-Id: <20210614212830.20207-1-jack@suse.cz> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org When adding or removing journal from a filesystem, we also need to add / remove journal blocks from overhead stored in the superblock. Otherwise total number of blocks in the filesystem as reported by statfs(2) need not match reality and could lead to odd results like negative number of used blocks reported by df(1). Signed-off-by: Jan Kara --- misc/tune2fs.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/misc/tune2fs.c b/misc/tune2fs.c index 4d4cf5a13384..2f6858abda32 100644 --- a/misc/tune2fs.c +++ b/misc/tune2fs.c @@ -396,6 +396,8 @@ static errcode_t remove_journal_inode(ext2_filsys fs) _("while clearing journal inode")); return retval; } + fs->super->s_overhead_clusters -= + EXT2FS_NUM_B2C(fs, EXT2_I_SIZE(&inode) / fs->blocksize); memset(&inode, 0, sizeof(inode)); ext2fs_mark_bb_dirty(fs); fs->flags &= ~EXT2_FLAG_SUPER_ONLY; @@ -1663,8 +1665,12 @@ static int add_journal(ext2_filsys fs) com_err(program_name, retval, "%s", _("\n\twhile trying to create journal file")); return retval; - } else - fputs(_("done\n"), stdout); + } + fs->super->s_overhead_clusters += EXT2FS_NUM_B2C(fs, + jparams.num_journal_blocks + jparams.num_fc_blocks); + ext2fs_mark_super_dirty(fs); + fputs(_("done\n"), stdout); + /* * If the filesystem wasn't mounted, we need to force * the block group descriptors out. -- 2.26.2