From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0C6F0C433E4 for ; Fri, 24 Jul 2020 09:47:19 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DAAD02074F for ; Fri, 24 Jul 2020 09:47:18 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=kroah.com header.i=@kroah.com header.b="KVf9e4Gz"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="XeCEfwtg" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726963AbgGXJrS (ORCPT ); Fri, 24 Jul 2020 05:47:18 -0400 Received: from wout2-smtp.messagingengine.com ([64.147.123.25]:58199 "EHLO wout2-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726114AbgGXJrS (ORCPT ); Fri, 24 Jul 2020 05:47:18 -0400 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.west.internal (Postfix) with ESMTP id 13583CC1; Fri, 24 Jul 2020 05:47:17 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Fri, 24 Jul 2020 05:47:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kroah.com; h= date:from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm1; bh=vDWGH6eWsUd/YnN0zWWBM27Irbj 5lY4lQRZBYu5So58=; b=KVf9e4GzPYptdUxAfUFJye71eR1j1Aag/GzDFDvrWsp hqHgxcP0bauxUB1eE8Ypm9sii35Xt+3rgmlRw1jCnVy3wdsinIoIuH7MuLJeBFpt pr0tNiqr3n85r7dICrWzqc3JAozAk4MoyStuYAfGFjlmaOp4tlmUSAEPoik6gs1m 7IUn4mNH/3gVhFuyYvYyAVz2EqIefi7oh4q/Hqt5uvLWGNYRyBJYXrkv0Agn+Lyq LZ+g2SB306wze8JuhxxJPEIgGX/5tRUKAxWZ9WlONED4w7Uxwfg8/XGG7ba05IYP 34pUGmWsHRmNAmvmEpcGzziK6wcTdk3tP6XK+/rK/pw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=vDWGH6 eWsUd/YnN0zWWBM27Irbj5lY4lQRZBYu5So58=; b=XeCEfwtgA/rPX6ZPNHcyTW 8VrC4X3oDfOb7VQHuCrlJysTISv+YKuxtjqP3DY3Z6/ruyyaZrFRnZ1/Clx5g1F8 Dvw5ZH5FQ9NA92wZbPHUxojbb+7LCNKtxTwdFOMUovH9Y2XP+5AKTUy5dbyyXklY L4hvwXDDk6uMHNmCpGqJeJ2sYQxKohBg6Gwm56nJ7gVe+atIFBywduoOHfjNrlf/ gj6VRgK89hUQszpGjc7jzYL2p81W3KV0Pj1k/eeMjCq/63vgzDmF05WWKUIQasRv e9TifN0sLuz6YwUSoLGaSmvPcgVYST6Ig0k3P0ECHaRrV7gmbYLF3rVqiGN2hpkw == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduiedrheefgddvtdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvuffkfhggtggujgesthdtredttddtvdenucfhrhhomhepifhrvghgucfm jfcuoehgrhgvgheskhhrohgrhhdrtghomheqnecuggftrfgrthhtvghrnhepveeuheejgf ffgfeivddukedvkedtleelleeghfeljeeiueeggeevueduudekvdetnecukfhppeekfedr keeirdekledruddtjeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpehgrhgvgheskhhrohgrhhdrtghomh X-ME-Proxy: Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) by mail.messagingengine.com (Postfix) with ESMTPA id 444483060067; Fri, 24 Jul 2020 05:47:16 -0400 (EDT) Date: Fri, 24 Jul 2020 11:47:19 +0200 From: Greg KH To: Qu Wenruo Cc: linux-btrfs@vger.kernel.org, stable@vger.kernel.org, David Sterba Subject: Re: [PATCH] btrfs: reloc: clear DEAD_RELOC_TREE bit for orphan roots to prevent runaway balance Message-ID: <20200724094719.GC4176508@kroah.com> References: <20200724014640.20784-1-wqu@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200724014640.20784-1-wqu@suse.com> Sender: linux-btrfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org On Fri, Jul 24, 2020 at 09:46:40AM +0800, Qu Wenruo wrote: > commit 1dae7e0e58b484eaa43d530f211098fdeeb0f404 upstream. > > [BUG] > There are several reported runaway balance, that balance is flooding the > log with "found X extents" where the X never changes. > > [CAUSE] > Commit d2311e698578 ("btrfs: relocation: Delay reloc tree deletion after > merge_reloc_roots") introduced BTRFS_ROOT_DEAD_RELOC_TREE bit to > indicate that one subvolume has finished its tree blocks swap with its > reloc tree. > > However if balance is canceled or hits ENOSPC halfway, we didn't clear > the BTRFS_ROOT_DEAD_RELOC_TREE bit, leaving that bit hanging forever > until unmount. > > Any subvolume root with that bit, would cause backref cache to skip this > tree block, as it has finished its tree block swap. This would cause > all tree blocks of that root be ignored by balance, leading to runaway > balance. > > [FIX] > Fix the problem by also clearing the BTRFS_ROOT_DEAD_RELOC_TREE bit for > the original subvolume of orphan reloc root. > > Add an umount check for the stale bit still set. > > Fixes: d2311e698578 ("btrfs: relocation: Delay reloc tree deletion after merge_reloc_roots") > Cc: # 5.7.x > Signed-off-by: Qu Wenruo > Signed-off-by: David Sterba > --- > fs/btrfs/disk-io.c | 1 + > fs/btrfs/relocation.c | 2 ++ > 2 files changed, 3 insertions(+) Thanks for the backports, all now queued up. greg k-h