From nobody Tue Feb 10 03:55:37 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=yandex-team.ru ARC-Seal: i=1; a=rsa-sha256; t=1658867431; cv=none; d=zohomail.com; s=zohoarc; b=Y3hTIFXF30F2cWNzsUYQ7tMac0AVIbNgJzOUU0D3f6gD/VW3Znz1jseP+GVk1ncw/d1X/LxO4AQdfhX5/rqTm6qsL4V82Zag+nLTmYvlc9DJZvGyP3ytmXlyVeFk8dy5wGt2nA0U9QsH85ZjcqSqUWIK9TiN/FHKxx2pdsztcBU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658867431; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=u2WoYoeSGjAr7Fv4syh3Df9fQs2caGcLdlmtxXnX5Lc=; b=LIdYIhoZ/n0iAKiLIjnDJ70m/qV+gIODPqcs0102sMXT2SYlhjVdMFDhVX80BPxCx8IAnIzOpD/+OmoDiM8hEoMwW4wykdsvwthniFNfDX40u/L7LXkTdnmpxL6p2T1nPyJWTojASvLlKvB96negNYeroGCXsrPUeDkSDhuuRz0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1658867431674235.05838795780232; Tue, 26 Jul 2022 13:30:31 -0700 (PDT) Received: from localhost ([::1]:59868 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oGRCH-00048c-Nc for importer@patchew.org; Tue, 26 Jul 2022 16:30:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58518) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oGQui-0001JO-AN; Tue, 26 Jul 2022 16:12:23 -0400 Received: from forwardcorp1j.mail.yandex.net ([5.45.199.163]:47754) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oGQug-0001G0-6T; Tue, 26 Jul 2022 16:12:19 -0400 Received: from sas1-7470331623bb.qloud-c.yandex.net (sas1-7470331623bb.qloud-c.yandex.net [IPv6:2a02:6b8:c08:bd1e:0:640:7470:3316]) by forwardcorp1j.mail.yandex.net (Yandex) with ESMTP id 62C6F2E1C28; Tue, 26 Jul 2022 23:12:07 +0300 (MSK) Received: from localhost.localdomain (172.31.44.48-vpn.dhcp.yndx.net [172.31.44.48]) by sas1-7470331623bb.qloud-c.yandex.net (smtpcorp/Yandex) with ESMTPSA id ZssKVYgWJm-C6O0tanj; Tue, 26 Jul 2022 23:12:06 +0300 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client certificate not present) X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex-team.ru; s=default; t=1658866326; bh=u2WoYoeSGjAr7Fv4syh3Df9fQs2caGcLdlmtxXnX5Lc=; h=Message-Id:Date:In-Reply-To:Cc:Subject:References:To:From; b=Ehgz2B2sjWsdi6eQnHfW0fkUMHN0IvVm0s622nrjI2NuWJK0uKbcJuhVAAmQIRJ6t nuoCfX8U91xfWlnpO5TZ/lE6NO6c70nifv/cOfTDbGi1IHaGObW9ed8GOEi4Rhdy0j xfPsuoPT5bP1VtVdbobOBBCqJfpi/IHE5+dvwLU4= Authentication-Results: sas1-7470331623bb.qloud-c.yandex.net; dkim=pass header.i=@yandex-team.ru From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, kwolf@redhat.com, hreitz@redhat.com, vsementsov@yandex-team.ru Subject: [PATCH v7 11/15] Revert "block: Restructure remove_file_or_backing_child()" Date: Tue, 26 Jul 2022 23:11:30 +0300 Message-Id: <20220726201134.924743-12-vsementsov@yandex-team.ru> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220726201134.924743-1-vsementsov@yandex-team.ru> References: <20220726201134.924743-1-vsementsov@yandex-team.ru> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=5.45.199.163; envelope-from=vsementsov@yandex-team.ru; helo=forwardcorp1j.mail.yandex.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @yandex-team.ru) X-ZM-MESSAGEID: 1658867433117100001 Content-Type: text/plain; charset="utf-8" That's a preparation to previously reverted "block: Let replace_child_noperm free children". Drop it too, we don't need it for a new approach. This reverts commit 562bda8bb41879eeda0bd484dd3d55134579b28e. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Hanna Reitz --- block.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/block.c b/block.c index 1b9e0a2d79..5eefadf768 100644 --- a/block.c +++ b/block.c @@ -5053,33 +5053,30 @@ static void bdrv_remove_file_or_backing_child(Block= DriverState *bs, BdrvChild *child, Transaction *tran) { - BdrvChild **childp; BdrvRemoveFilterOrCowChild *s; =20 + assert(child =3D=3D bs->backing || child =3D=3D bs->file); + if (!child) { return; } =20 - if (child =3D=3D bs->backing) { - childp =3D &bs->backing; - } else if (child =3D=3D bs->file) { - childp =3D &bs->file; - } else { - g_assert_not_reached(); - } - if (child->bs) { - bdrv_replace_child_tran(*childp, NULL, tran); + bdrv_replace_child_tran(child, NULL, tran); } =20 s =3D g_new(BdrvRemoveFilterOrCowChild, 1); *s =3D (BdrvRemoveFilterOrCowChild) { .child =3D child, - .is_backing =3D (childp =3D=3D &bs->backing), + .is_backing =3D (child =3D=3D bs->backing), }; tran_add(tran, &bdrv_remove_filter_or_cow_child_drv, s); =20 - *childp =3D NULL; + if (s->is_backing) { + bs->backing =3D NULL; + } else { + bs->file =3D NULL; + } } =20 /* --=20 2.25.1