From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197303; cv=pass; d=zohomail.com; s=zohoarc; b=GZDCXNgXAaX6jqf9XwXC+Y8n8ZpdWrYZIJyQKZbwzj7kYtylcdOHy4EyodN2F8SWNUdaNQynSXJoq7CATcciyWjBQJcsea9lfGSIw7S2ksCYu+ux8jWAx65K0FTsQ9HC+ydpxVYYmGXeKczeTrjXdqxJM2yj3Rdsv93AO5ogn/s= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197303; h=Content-Type: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=xMMvLZDdFlVtoMXUZWOUFlKNE9jP+XW12IgXK6hWYG8=; b=P075qCcv7PDcm3Ri5tfO1XZM9Gq1wRhMbsv6bSoqjNSz1sxhJ+C3SIhEvVDyN/V6ioTnMYGaAqD4MwQbgZH5BNqIRNFhnIhy/OIbpNdVzOMqWYUZtRe0oJyAQcT2qqRUE/FYGOf4zQnRanXzaV1vmFBhrF+QqgAIjMiUoiJc8LU= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197303249415.54359403207104; Sat, 9 Jan 2021 05:01:43 -0800 (PST) Received: from localhost ([::1]:46850 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDsD-0007xg-2r for importer@patchew.org; Sat, 09 Jan 2021 08:01:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55312) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpW-0006A7-AO; Sat, 09 Jan 2021 07:58:54 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpS-0003fN-2l; Sat, 09 Jan 2021 07:58:54 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:41 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:41 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IiCY+HrPcoDlp04/pUlqxM/7jng2xf5kpUXbN979N+7+8zd7kHq7jNeZdSuIkyMTBnSQiJpuMYH1VOAovm/cYigDo6obQFhPaG3H9k4Ogc98/lRyOG3osePWpc9WvV6mtVItC2WI3Hyr/gSCjy+OXNTrOUQUcfnbTA2rB9MJWqKd8FiggMVjM2N2GI8ufXBxLC+/NmvWmiM+VL3sXJdQ31I0407KsflcpthJy0oXI6y5ZYYhGJl8/pZRcNYfwnVoRxotPNmDDF8QSh+h26CLYNjKcINasrnsGhCsvkUsIbQX8/A0aE6MX8rf6QA50LIwkx/rQiJkGm/MtuRrS4u9Vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xMMvLZDdFlVtoMXUZWOUFlKNE9jP+XW12IgXK6hWYG8=; b=ktnon88H9039lkZZdwacLTV9RnpQQTs6Tg6sdsJgycWLm9AlCS1viFAXm1w6apErFoBNCmJ2ykSsLQNo3imNLKquFeb1xcQyG23Zi1A+2d7XxJyjAXdcK5UMiGcKBla465jrURcYnvlelrBn2GS2JkePQDtdU6SE5rFB7K2VerMui/2izPpi1RrwWIKJ+5Z1RFjttr/1r0m8Hv4pE26wnZOEdox1V58gImmdxbM5ZrpCDEiSkcgfiDG2MZRIuoMRdlhsgpRmE2vfwlR9aqOGQgptQUTi1tThM8DWcazqMKL0WBOV6RkiYxN//KTtWCuwzx+hzn2Sjaios6khutMsTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xMMvLZDdFlVtoMXUZWOUFlKNE9jP+XW12IgXK6hWYG8=; b=CT+NLBBhKxpVO+bbUE8M97LBN0q59MTU5G5cuZSBPDBQdlgQW9nLUvrasvgPL7P1fqAUGI3zs+MFpoEMzM0BujNMgv3eFBS8mKjz+O0La5Axn5CfGYp3s2M3t3KDHmMQJxKtJNqAKw5gBwQTu+/K/5vb94Enmbonrq68SI7FVbI= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 01/14] block: return status from bdrv_append and friends Date: Sat, 9 Jan 2021 15:57:58 +0300 Message-Id: <20210109125811.209870-2-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a583bcf9-b5b1-43d7-25eb-08d8b49e4a3b X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:873; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qfq5gDoVO+X43S+1PG8cnRApOWUcQtF/elChmWoSMH5JFo8s72yE2HSxW5563yxH1ddOrs0THxm08bbMhgH2IhAGGabLj3qDyUW83vxEb0ydHSZadqwwrgeQLqIDvfHMzzEt3crUB5j/8cv2D0tFXD34R9f29Fb+CmOYbCBOq6EWmQCViMMwq3Kp8Ys3b+xqubB2A+Ex0myfhQmBLYy2Mm0vPFS7eoz6cHrygb8O7JfJEyCDGhym9c3wyrXs4PbDphJj6Dkw6lCwYnJQaCDipc8SXfP972iXN3ZojayAHS8zPLJp3qjezcf/ecnwBSatMloK/02l8gq5avU737HaotoS1XWW+bgyKGCE7gd6vfiWRxO2cF4dcpT5xX5jZC+KTjWrejKj7JcuxSc+51X9jg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?ZHKy28HUADEmk25aa5csdnF1zZ70l0G3468fWI52ObUfs1oHR/KqOa29pdrz?= =?us-ascii?Q?PkHTriSaOLuySfFFEuF2p2C0DGZWP+0JeZqZoKQ1D5Ef4yx6ZZ4QHTY7HAq5?= =?us-ascii?Q?7d2gamAoscrMXBrsOOQ0zmoDAcDJFva8RrrgP5yu2uMh/88Yth2sfFygsf9x?= =?us-ascii?Q?2TfNZjV/mpjsmdeq6ZyPDDC/tK5hySaUREsMZegLd+h+A2DCgbPaDcAhAxOr?= =?us-ascii?Q?bm099OM3TopeVFX6IOt78HfK4F8lekA7GkezFinL30FiDl7P8J/ogiZ+D2Kz?= =?us-ascii?Q?jbSmJDpUZl5kYPtz1itGbMwFNOvmLYxPBU1ba45xDfpU8hY62rMOH/wZphMf?= =?us-ascii?Q?cjUSngwXzgLlWNExra2rCdCOacu3EWaLIJanrn9HM65q+XMcEiSRKxVrPROd?= =?us-ascii?Q?uIYg+lVZuXBmX096JyIYW9+cGP0WMJULFQ2y3rPWel4hhnc4wBZcb0EjdDzi?= =?us-ascii?Q?Z+aCr5MMlXbcEJqAkI3g6OkihKKk12692440qK8xLuFrKdvSiwP8RHso8vmb?= =?us-ascii?Q?FdOocYRIFj4HyLdhgltE5nrNzoZiTM+OWTE62S76dkyIdbAcKK0dqESM/dzN?= =?us-ascii?Q?GweMlfA5MvGpZpTPpSY6rXr3XkV7qjb+1cMOC4Ao/E460TZ42S76YZJtDXus?= =?us-ascii?Q?1w+3glEqfLLO2mAcsIs4e9FW/QjQ42d1PJUqPzl27XWvS2K65/TRZORsONrw?= =?us-ascii?Q?miqfxiXtwitHM8bntKwNn8rkeZtkHcppqUaqDDe/VtG/G+dX+sC7QHhf8FlR?= =?us-ascii?Q?srJbE1mHGXQUHWWvikOa8xZCtBu7zeyF+WACh0KkY1Aet79Rhl4KU0WFgWCd?= =?us-ascii?Q?xj+vwpCjbT95BM51CMy+3gkVjlhhlec98rnS1UTcFIKt2Mbv0Kgn8C0fIt8x?= =?us-ascii?Q?8PYLsJNWrhJCeWOcejNF+KwmwYZw/xrEaWqDJ3VLlDJxgP+Ls7m7H8uDCwwe?= =?us-ascii?Q?yUUrhzmgwbuHrS0QTzK+nUBDIYEl0/fQGGO373cKJ1wsBmpXXaAMDzKh99SO?= =?us-ascii?Q?p/Qp?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:41.5371 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: a583bcf9-b5b1-43d7-25eb-08d8b49e4a3b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 60KBWixxrNymCpOs4MvRe/aBvBcTopKPdyMIE1NAUXkSC9WfwBywYuVv/KBI5EHJ4ezKYoG4m3aWYK63B6OxB/NpP9/Ynn/coM+2jYeWcCo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" The recommended use of qemu error api assumes returning status together with setting errp and avoid void functions with errp parameter. Let's improve bdrv_append and some friends to reduce error-propagation overhead in further patches. Choose int return status, because bdrv_replace_node_common() has call to bdrv_check_update_perm(), which reports int status, which seems correct to propagate. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/block.h | 12 ++++----- block.c | 57 ++++++++++++++++++++++++++++--------------- 2 files changed, 43 insertions(+), 26 deletions(-) diff --git a/include/block/block.h b/include/block/block.h index a193545b6a..b4e0347b49 100644 --- a/include/block/block.h +++ b/include/block/block.h @@ -354,10 +354,10 @@ int bdrv_create(BlockDriver *drv, const char* filenam= e, int bdrv_create_file(const char *filename, QemuOpts *opts, Error **errp); =20 BlockDriverState *bdrv_new(void); -void bdrv_append(BlockDriverState *bs_new, BlockDriverState *bs_top, - Error **errp); -void bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, - Error **errp); +int bdrv_append(BlockDriverState *bs_new, BlockDriverState *bs_top, + Error **errp); +int bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, + Error **errp); =20 int bdrv_parse_aio(const char *mode, int *flags); int bdrv_parse_cache_mode(const char *mode, int *flags, bool *writethrough= ); @@ -369,8 +369,8 @@ BdrvChild *bdrv_open_child(const char *filename, BdrvChildRole child_role, bool allow_none, Error **errp); BlockDriverState *bdrv_open_blockdev_ref(BlockdevRef *ref, Error **errp); -void bdrv_set_backing_hd(BlockDriverState *bs, BlockDriverState *backing_h= d, - Error **errp); +int bdrv_set_backing_hd(BlockDriverState *bs, BlockDriverState *backing_hd, + Error **errp); int bdrv_open_backing_file(BlockDriverState *bs, QDict *parent_options, const char *bdref_key, Error **errp); BlockDriverState *bdrv_open(const char *filename, const char *reference, diff --git a/block.c b/block.c index 8b9d457546..1a5d0e748d 100644 --- a/block.c +++ b/block.c @@ -2827,14 +2827,15 @@ static BdrvChildRole bdrv_backing_role(BlockDriverS= tate *bs) * Sets the bs->backing link of a BDS. A new reference is created; callers * which don't need their own reference any more must call bdrv_unref(). */ -void bdrv_set_backing_hd(BlockDriverState *bs, BlockDriverState *backing_h= d, +int bdrv_set_backing_hd(BlockDriverState *bs, BlockDriverState *backing_hd, Error **errp) { + int ret; bool update_inherits_from =3D bdrv_chain_contains(bs, backing_hd) && bdrv_inherits_from_recursive(backing_hd, bs); =20 if (bdrv_is_backing_chain_frozen(bs, child_bs(bs->backing), errp)) { - return; + return -EPERM; } =20 if (backing_hd) { @@ -2853,15 +2854,24 @@ void bdrv_set_backing_hd(BlockDriverState *bs, Bloc= kDriverState *backing_hd, =20 bs->backing =3D bdrv_attach_child(bs, backing_hd, "backing", &child_of= _bds, bdrv_backing_role(bs), errp); + if (!bs->backing) { + ret =3D -EPERM; + goto out; + } + /* If backing_hd was already part of bs's backing chain, and * inherits_from pointed recursively to bs then let's update it to * point directly to bs (else it will become NULL). */ - if (bs->backing && update_inherits_from) { + if (update_inherits_from) { backing_hd->inherits_from =3D bs; } =20 + ret =3D 0; + out: bdrv_refresh_limits(bs, NULL); + + return ret; } =20 /* @@ -4533,9 +4543,9 @@ static bool should_update_child(BdrvChild *c, BlockDr= iverState *to) * With auto_skip=3Dfalse the error is returned if from has a parent which= should * not be updated. */ -static void bdrv_replace_node_common(BlockDriverState *from, - BlockDriverState *to, - bool auto_skip, Error **errp) +static int bdrv_replace_node_common(BlockDriverState *from, + BlockDriverState *to, + bool auto_skip, Error **errp) { BdrvChild *c, *next; GSList *list =3D NULL, *p; @@ -4562,6 +4572,7 @@ static void bdrv_replace_node_common(BlockDriverState= *from, goto out; } if (c->frozen) { + ret =3D -EPERM; error_setg(errp, "Cannot change '%s' link to '%s'", c->name, from->node_name); goto out; @@ -4592,14 +4603,18 @@ static void bdrv_replace_node_common(BlockDriverSta= te *from, =20 bdrv_set_perm(to); =20 + ret =3D 0; + out: g_slist_free(list); bdrv_drained_end(from); bdrv_unref(from); + + return ret; } =20 -void bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, - Error **errp) +int bdrv_replace_node(BlockDriverState *from, BlockDriverState *to, + Error **errp) { return bdrv_replace_node_common(from, to, true, errp); } @@ -4620,28 +4635,30 @@ void bdrv_replace_node(BlockDriverState *from, Bloc= kDriverState *to, * parents of bs_top after bdrv_append() returns. If the caller needs to k= eep a * reference of its own, it must call bdrv_ref(). */ -void bdrv_append(BlockDriverState *bs_new, BlockDriverState *bs_top, - Error **errp) +int bdrv_append(BlockDriverState *bs_new, BlockDriverState *bs_top, + Error **errp) { - Error *local_err =3D NULL; - - bdrv_set_backing_hd(bs_new, bs_top, &local_err); - if (local_err) { - error_propagate(errp, local_err); + int ret =3D bdrv_set_backing_hd(bs_new, bs_top, errp); + if (ret < 0) { goto out; } =20 - bdrv_replace_node(bs_top, bs_new, &local_err); - if (local_err) { - error_propagate(errp, local_err); + ret =3D bdrv_replace_node(bs_top, bs_new, errp); + if (ret < 0) { bdrv_set_backing_hd(bs_new, NULL, &error_abort); goto out; } =20 - /* bs_new is now referenced by its new parents, we don't need the - * additional reference any more. */ + ret =3D 0; + out: + /* + * bs_new is now referenced by its new parents, we don't need the + * additional reference any more. + */ bdrv_unref(bs_new); + + return ret; } =20 static void bdrv_delete(BlockDriverState *bs) --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197504; cv=pass; d=zohomail.com; s=zohoarc; b=TRJWx9VmdJChVcA7OkB+LU6TTdmTENNicoX/s05yOlL+oxpvjBlKlQa9lpH9ei+EuvJTX5H90rdEGE8qGdxbHXkbwr1w+jAq+Ffxf1hge2F/EUufXdwW/yBrD+OAMU+/GttEf80wcRfIOU8YD0htcswnfoGw3G4Lea5R+hevQoY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197504; h=Content-Type: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=Hc4Nb8E8gqGRpwoov/MvHRCdPM2yDL/Xwq4kYSxOh28=; b=T4MP2TxqeYZef0xX/027ewxlNC7Uz8srgaRgQjDxiNXCbtXGLpF1Fzfpvtez+zOBwHz0i3+o8bgKw51plQj2/lEzWpVzmfPcDmIeSvXayOZU/9iks4yOALZieS63uV2FFyfV+MTnCc80BVBkuzmjqseL2TnA1ubpfV3xy6hdohs= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197504348326.9281747748554; Sat, 9 Jan 2021 05:05:04 -0800 (PST) Received: from localhost ([::1]:55588 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDvT-0003pZ-1K for importer@patchew.org; Sat, 09 Jan 2021 08:05:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55298) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpU-00068s-EP; Sat, 09 Jan 2021 07:58:52 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpR-0003dJ-EH; Sat, 09 Jan 2021 07:58:52 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:43 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:43 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:41 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ofQbwp/JIV7SUf8ab1mq9xosKj3oUDsNdPQphk3d+QhPjIGNES3NG/rfZx6NWltuIE/H2VtdEK7hcapsJGvIUSfWLnMTP7I6ctpHGo97Mz9L+MOrAvBsD7qStBY/umuevmcOFAiW5/1O4mfx8GY2jq0tVexn3MQU+98GrrjzbWWuZtG8NOM6jua6DpVipCrJ6461ui7EcPdwszx4BzN9JRap0UN0yXJYSFD49iYS62Zz9WQxvueFVWc7F6NQ5pO30wCD8jhIhq8FFbKnjAP3yclh34k57//8+nzLOr/0rsWrgtViJqPjwovc/395jsCLzaRVBoUr+FsMjsKocBpOWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Hc4Nb8E8gqGRpwoov/MvHRCdPM2yDL/Xwq4kYSxOh28=; b=TacH991dLVP/aegT027QoWkb5syWvuQwTIQjt8I/j6P/53veAUwY/5/aj7AJe4Zu0y0XxcDCXeB1ogH24B6Zp5yHS/k8rkla3QJViZNn6uJtt9OOyu+T0jSIQ1WAwkzZJ3RHphai0GCKXDqFbhzmAc/wozSSCSjusEifcaR77zXMNTOGsF3+zWgdsAxG3v1UmOOu1WCFBeM+yQh4EZklKI3mcc7A8E1AOgLGOaQ/EHlCy/NcAFz/MgSaUWZGCfc7BzTW419q375fltDYJZ3nBh64+/lAKV+/tfWGWd8uIeRCG0WLkUcVpK2MqgMtvIfNZCxtA7MpM+OMh8N91fvk4A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Hc4Nb8E8gqGRpwoov/MvHRCdPM2yDL/Xwq4kYSxOh28=; b=CfvXZtjXvvxEyKpv48yZWW5sMseUWvfc0aaKIH/9ZtO8Yhmb1RXomhh+rSJlIRZyqHb+BynDaHNZ+DtlNruLE5xju1g0+Y8peBRliRDyrZxkYEZ77SgeR6bbPpPKFqg3VN5jffAZ4F2WP+0LxfiII5+Wsm5MZwDEQmT5CXV2pY0= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 02/14] block: use return status of bdrv_append() Date: Sat, 9 Jan 2021 15:57:59 +0300 Message-Id: <20210109125811.209870-3-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b2768eed-761f-44d0-95d3-08d8b49e4b17 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:40; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: braqcA5Tq81OkkrX4ixOcZKZhyVq3opt659esED8H6vvpLy0pSgsQOO54xCc5yNQMADiw2Z/kdb5MMtL67zIW90IDlOtZVXQWPXqIyuqo5o/qpBeM2lEVZDKQOg4pezHw9CCGn7gs98DGDgjPf1O3e810mxKmAy6qDDYFOenxx/ib4n/VUQvYQCZqIjTyfFq5/3cgP/zvGkXgDlEV9iM3KGNsYEL1kUDWTFBNmdmZSuu8+cL8vEJ52Q6kmm90GHkSlwD7rbH937RnmL46znYp4hx3tc3tq3exSUc6QJYP+Hv8kFnF8aVXTqOeW/Ymzjb+3JdV97INqmPn6vNmntz+3K6k2m2Xgx+er95hQxdBvRB2Bac8pw34kWRtrhr4ZHKfp8Mi7mF4JuYvfR5/qafNw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?kWTHAE49S62Hy+MYZFDmewHxklom/QYrFmErdowBHYtB3P2WE3Glob8+k66W?= =?us-ascii?Q?r3tLWqtjnkoTiXsEhI1bx5fZGas3A6wDxiTfZh3ty+zHrWxLAErh50h+lBq4?= =?us-ascii?Q?AgpZfQQfgHXBc+/+LK+/VAmOOUc/DLAoK6tf3H5Biwo51711BsT27ZgaWkg0?= =?us-ascii?Q?kUMOyFkLdgdMPqx44vKEuN9UZ/9DuzzCVc6HYZMA2ndBSUMu2cdinWnrnrXN?= =?us-ascii?Q?cHz54kKi9XbhxaKiWpK1Otgzd9DKrkqbbcwamvp8tQZK46XKlDXCUVGH4cl0?= =?us-ascii?Q?CGYXvgoiCQE5t4S8on13u1uCXF8nucS/TIpCoxB7G2Zz+rLiM0oQS5/Mlcta?= =?us-ascii?Q?dEU6YkMZTelqzYI2hFojANgawAveh0BEpRxunrqYsN3gukfo40UrC/9tRzmH?= =?us-ascii?Q?EK3q0Te2CNEljPf1oa4I6OxOi2yiTR4dRt+ZDGOQIe7BkkojwZ/KALF5uqlf?= =?us-ascii?Q?hrtFkU6F0z/qhD5n7IPYwFSxYUrp72qDXi9Jw3jdp3m9cr2pd3+uXto3kkfT?= =?us-ascii?Q?B1qluMHIwSVHafZQNkzrEc5dkPdRPwulFp9f1RPKHGgJvxT/0EJtOl+XKOrz?= =?us-ascii?Q?UYLaFdZMWoIPBET58xc89gnCiddQIDXBKYhHSzyyuc/NPHNZI5Csojpi84xR?= =?us-ascii?Q?Hzxb4zMt+IaHioovMkt4DyzeXf0OxblKddxsa8dybi0sBi4ZxwhBBh65wrMr?= =?us-ascii?Q?D+qT+ZTuOO+/JBL0rmqKIaa9sTKHOpbdOFHIYv4FiSQkgggg/UlZWMlHyrwK?= =?us-ascii?Q?JLBVDRBaU63n6RVGdJHmUdOyNrjn1+fuD3AlFdV4vxUXzl3g7V1VGuVXprx/?= =?us-ascii?Q?tYz/QuFi/7ii6ot0c65w7Xnrqy54rwmXDJQA/N6l8NS3Ph4C0NK3Zgrthmr9?= =?us-ascii?Q?X5RAaf5lFyv5up3PGoJYBmnKS0hrnfsKgUcHRpL/BH4nONxni9Zg5kbEAQuB?= =?us-ascii?Q?oBre0wcG8Q4juxOQe7SPMwlYnaE5cf4pp/uT5tuQk7Y0rw0sPGPyxEm+ZqOc?= =?us-ascii?Q?wcdZ?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:42.9439 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: b2768eed-761f-44d0-95d3-08d8b49e4b17 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iVpOte6DgTFvmrYVMIfQQpQgumIUqs3buVnd5n8dJKt20TeKf/M2V9b388jwpf2/DhvUUlpmwHVlMG7TQLVdxhWg8dh2/cjsqUmh12/pey4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Now bdrv_append returns status and we can drop all the local_err things around it. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia --- block.c | 6 ++---- block/backup-top.c | 23 +++++++++++------------ block/commit.c | 6 ++---- block/mirror.c | 6 ++---- blockdev.c | 6 +++--- tests/test-bdrv-graph-mod.c | 6 +++--- 6 files changed, 23 insertions(+), 30 deletions(-) diff --git a/block.c b/block.c index 1a5d0e748d..2a13fbfc73 100644 --- a/block.c +++ b/block.c @@ -3120,7 +3120,6 @@ static BlockDriverState *bdrv_append_temp_snapshot(Bl= ockDriverState *bs, int64_t total_size; QemuOpts *opts =3D NULL; BlockDriverState *bs_snapshot =3D NULL; - Error *local_err =3D NULL; int ret; =20 /* if snapshot, we create a temporary backing file and open it @@ -3167,9 +3166,8 @@ static BlockDriverState *bdrv_append_temp_snapshot(Bl= ockDriverState *bs, * order to be able to return one, we have to increase * bs_snapshot's refcount here */ bdrv_ref(bs_snapshot); - bdrv_append(bs_snapshot, bs, &local_err); - if (local_err) { - error_propagate(errp, local_err); + ret =3D bdrv_append(bs_snapshot, bs, errp); + if (ret < 0) { bs_snapshot =3D NULL; goto out; } diff --git a/block/backup-top.c b/block/backup-top.c index fe6883cc97..46246d46f1 100644 --- a/block/backup-top.c +++ b/block/backup-top.c @@ -190,7 +190,8 @@ BlockDriverState *bdrv_backup_top_append(BlockDriverSta= te *source, BlockCopyState **bcs, Error **errp) { - Error *local_err =3D NULL; + ERRP_GUARD(); + int ret; BDRVBackupTopState *state; BlockDriverState *top; bool appended =3D false; @@ -223,9 +224,9 @@ BlockDriverState *bdrv_backup_top_append(BlockDriverSta= te *source, bdrv_drained_begin(source); =20 bdrv_ref(top); - bdrv_append(top, source, &local_err); - if (local_err) { - error_prepend(&local_err, "Cannot append backup-top filter: "); + ret =3D bdrv_append(top, source, errp); + if (ret < 0) { + error_prepend(errp, "Cannot append backup-top filter: "); goto fail; } appended =3D true; @@ -235,18 +236,17 @@ BlockDriverState *bdrv_backup_top_append(BlockDriverS= tate *source, * we want. */ state->active =3D true; - bdrv_child_refresh_perms(top, top->backing, &local_err); - if (local_err) { - error_prepend(&local_err, - "Cannot set permissions for backup-top filter: "); + ret =3D bdrv_child_refresh_perms(top, top->backing, errp); + if (ret < 0) { + error_prepend(errp, "Cannot set permissions for backup-top filter:= "); goto fail; } =20 state->cluster_size =3D cluster_size; state->bcs =3D block_copy_state_new(top->backing, state->target, - cluster_size, write_flags, &local_er= r); - if (local_err) { - error_prepend(&local_err, "Cannot create block-copy-state: "); + cluster_size, write_flags, errp); + if (!state->bcs) { + error_prepend(errp, "Cannot create block-copy-state: "); goto fail; } *bcs =3D state->bcs; @@ -264,7 +264,6 @@ fail: } =20 bdrv_drained_end(source); - error_propagate(errp, local_err); =20 return NULL; } diff --git a/block/commit.c b/block/commit.c index 71db7ba747..dd9ba87349 100644 --- a/block/commit.c +++ b/block/commit.c @@ -254,7 +254,6 @@ void commit_start(const char *job_id, BlockDriverState = *bs, BlockDriverState *iter; BlockDriverState *commit_top_bs =3D NULL; BlockDriverState *filtered_base; - Error *local_err =3D NULL; int64_t base_size, top_size; uint64_t base_perms, iter_shared_perms; int ret; @@ -312,10 +311,9 @@ void commit_start(const char *job_id, BlockDriverState= *bs, =20 commit_top_bs->total_sectors =3D top->total_sectors; =20 - bdrv_append(commit_top_bs, top, &local_err); - if (local_err) { + ret =3D bdrv_append(commit_top_bs, top, errp); + if (ret < 0) { commit_top_bs =3D NULL; - error_propagate(errp, local_err); goto fail; } =20 diff --git a/block/mirror.c b/block/mirror.c index 8e1ad6eceb..fad2701938 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -1560,7 +1560,6 @@ static BlockJob *mirror_start_job( BlockDriverState *mirror_top_bs; bool target_is_backing; uint64_t target_perms, target_shared_perms; - Error *local_err =3D NULL; int ret; =20 if (granularity =3D=3D 0) { @@ -1609,12 +1608,11 @@ static BlockJob *mirror_start_job( * it alive until block_job_create() succeeds even if bs has no parent= . */ bdrv_ref(mirror_top_bs); bdrv_drained_begin(bs); - bdrv_append(mirror_top_bs, bs, &local_err); + ret =3D bdrv_append(mirror_top_bs, bs, errp); bdrv_drained_end(bs); =20 - if (local_err) { + if (ret < 0) { bdrv_unref(mirror_top_bs); - error_propagate(errp, local_err); return NULL; } =20 diff --git a/blockdev.c b/blockdev.c index 2431448c5d..84c5cde07c 100644 --- a/blockdev.c +++ b/blockdev.c @@ -1432,6 +1432,7 @@ typedef struct ExternalSnapshotState { static void external_snapshot_prepare(BlkActionState *common, Error **errp) { + int ret; int flags =3D 0; QDict *options =3D NULL; Error *local_err =3D NULL; @@ -1591,9 +1592,8 @@ static void external_snapshot_prepare(BlkActionState = *common, * can fail, so we need to do it in .prepare; undoing it for abort is * always possible. */ bdrv_ref(state->new_bs); - bdrv_append(state->new_bs, state->old_bs, &local_err); - if (local_err) { - error_propagate(errp, local_err); + ret =3D bdrv_append(state->new_bs, state->old_bs, errp); + if (ret < 0) { goto out; } state->overlay_appended =3D true; diff --git a/tests/test-bdrv-graph-mod.c b/tests/test-bdrv-graph-mod.c index 8cff13830e..c4f7d16039 100644 --- a/tests/test-bdrv-graph-mod.c +++ b/tests/test-bdrv-graph-mod.c @@ -101,7 +101,7 @@ static BlockDriverState *pass_through_node(const char *= name) */ static void test_update_perm_tree(void) { - Error *local_err =3D NULL; + int ret; =20 BlockBackend *root =3D blk_new(qemu_get_aio_context(), BLK_PERM_WRITE | BLK_PERM_CONSISTENT_READ, @@ -114,8 +114,8 @@ static void test_update_perm_tree(void) bdrv_attach_child(filter, bs, "child", &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, &error_abo= rt); =20 - bdrv_append(filter, bs, &local_err); - error_free_or_abort(&local_err); + ret =3D bdrv_append(filter, bs, NULL); + g_assert_cmpint(ret, <, 0); =20 blk_unref(root); } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197500; cv=pass; d=zohomail.com; s=zohoarc; b=AARhbVZ2HP63CCFFQVD2thU8YwFJpnY4XoPB3+R3Z3+mrnFjrTJ9cPHOhXhrGcCmeFfaDoOrdd1vjhw/HxNig1EH7PmC05qf/h92DzMdGTiTuhjZPQGXNTZwVq9doKVqpZ5NtbXnnHjKJR9G1hENqBA43DixXODu5Q7xFgGrBM0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197500; h=Content-Type: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=SHiqVSYrrsIGha2K3VmGGWdTMKAgFqst8R0FSwT8/Ho=; b=RtRh1JexUdFI+TQrC7AYRmuWJxHMEiJmZLzPCg4hyh1zemd7O3ePTftFqvmt19zXv+R0Nfv5xl0NJZ2z6JE60/AuB4QxOlJBFPgcadNwSgXIVa4eBxFoMBM1t0C3b1342LVO55Xov8EgaL0vII0g6VSi5q4KH7MGpFl+fW7wlPc= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16101975003891009.307855304063; Sat, 9 Jan 2021 05:05:00 -0800 (PST) Received: from localhost ([::1]:55244 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDvP-0003g6-2q for importer@patchew.org; Sat, 09 Jan 2021 08:04:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55314) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpW-0006Am-VR; Sat, 09 Jan 2021 07:58:55 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpV-0003dJ-2x; Sat, 09 Jan 2021 07:58:54 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:44 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:44 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:43 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aWRUnSp9GKpaCmqKLbwI+OGQuaYRDJmzuFgT//9MiJT9XHg9Vx5D5BldHVnH/eNBLQqaiy47po6a2kSuH3h744Ni9055QL7ZyvloEkPnTLUVSNj1yPVePXh6uVGpAJcLRx24HxNQj04twn/PvS4nkTN79lBacUvExZQOmmsTUAsFovJyzgqoqh+Zssf0tz/r4DsgsKkZ3gEygss0Axh9e3cXBh2UUW1kerbDNS3awtyvmM7jvfaEDvmp2zxqJL9d7z4h+TPCJBgm+poUBh+vurHuGoC9IGlHqW5YkG9cEa/ebq9ZbexH29bXpxvPvB0GSKrtdjyML1Zinrw8AgoVyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SHiqVSYrrsIGha2K3VmGGWdTMKAgFqst8R0FSwT8/Ho=; b=N6zpZbRvJ504sfC4zxpnLwWXrX7EvIoUCI3gcpPgqryi5N0ZSpxzTqMShx4iXJigIwkesAhGnW8Y/jge8wK81RBr53uzWZu40qaURG/OfQS6bGyjS75DE2gSkchoQU9erzvsB20emoLrlfxrJOQAfl8DIAWv8ttoEsEiGnPEofLTfag6OYv5VhjdDafsTIrvLDPH9s/L8A39rlIJnaQAXvjMRcC8h3DBhyz2j/2xWTGoIxFwsRWf7r8KeFjyg5FBgCg4jwqie+m6Qf4co/E4PZKA4Qi5F0jGGDvvjZGZGMc5NQ+AB2r4kLyXl2o/qzHaW97ixmBlhAmAKeSh/GSJRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SHiqVSYrrsIGha2K3VmGGWdTMKAgFqst8R0FSwT8/Ho=; b=VPZ8aKXZOBy4POMvyNT6t/ywnFqqhgZlHjjz9/k0MqzUriDH2Y8VmxP5KhkgHjCVBSPOoONbKvFXhPnLHRJeoSR4HeiQhJ/ZFBBK6oDLtKhsxjkeIggQipjnupY7xprUCkkHX1yuoeOVRvakSlq4uxv9z/fXxBhe1cWjBaGYn08= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 03/14] block: check return value of bdrv_open_child and drop error propagation Date: Sat, 9 Jan 2021 15:58:00 +0300 Message-Id: <20210109125811.209870-4-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3a0da22c-6bfd-4fec-44fa-08d8b49e4bc8 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:126; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Yz+yLCDDQNdE25Cuk3tPJ8DOWjGrXbqbPeOfxQaUzn/3JKYB1um5VEQd80lolTUYd3r5X8ANZBlOtnxk8koZYRs5c6OAXzYKqC5ZpfYFacqLVPbKoranjJWSIMcLlwVJ+Ac8PbhK/LKskr8AVizxlK1N22fRXtwH5bAxsAwRxxk6NhvKbi8WhztkkVXqoYDvtBuIcmz8m9SgfnMgMUGcpF4lSEv1kXntE1BRgetSb8cSkzJ6Cu8V2VrWuZSj6G7n1XpAXk13Hxpua3Xwid5zvtDfG1h1SrGb7TswKPIXFNGT82dwXfCDVRM5c/JsL0sbNm7HhmzAErUHl0qJyST/NTw2u71MbxGk6CKhq6gS4sWYwN0pF9oorMiMV/dPLF+yEqfr1nPy79SVYllgQXpT5Q== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?dErJ+J62ZWGLqXBDn4HatVhW7+KVnswhhdTuhWHNvV9DqzeBW8JyIxLAUwOS?= =?us-ascii?Q?Lmlhan63+6VqsMHZ1GonufYuSHvk1z1xJS1AwnlydfQzc7KEvP9LEGltzyXD?= =?us-ascii?Q?Y9uICcD8EuFI3GaqtK9B6ag24BbPnp85qxDHaTbHmgkKfsr8HdEzIxnSIxB+?= =?us-ascii?Q?OxLxO266D+0jxxrb4xc7h1dxAW4dh4kL+VMiIIt+KnEKa1MzTEt4VpDGK5HS?= =?us-ascii?Q?u1NJCl7QSW0XiUROXusP234Wi5ovSEsyQFX31KzpEZI3/Pb6bs5kaXJA2IWQ?= =?us-ascii?Q?AYWiRyGBLAg/nm1yzsILI/rNHsNm7cGF52CCWwVXyvtj6hwyZSJT/9qOGipP?= =?us-ascii?Q?AQc4ssgDntqL6rjAVN/O11veyun6vZck9haz9HWnd9E/QjiXqoZcE9Q+pi3H?= =?us-ascii?Q?XTTLWT3l7sLXoELxpyQ4/hozmIbrJwNmZOtijjoGfzdKD7l+EsdGxddyid8n?= =?us-ascii?Q?Ho7WGkpmmLZbdbERs4N7ZWs28Ek0fcAdBfG9e6xOT3DLLPIPvMWDDjAlEy5C?= =?us-ascii?Q?Dbu7uoEGX0hhdV+DgZfzzmUvySjiEgg4ZBTy0HQOl1EpNxdDMNxGeDm426a/?= =?us-ascii?Q?9WS7vUa0L7ax1V1Pz+6R2BwQhhD3cOrDkRHjdx8h3RgLcSk0UHEnFHns/Om2?= =?us-ascii?Q?9+WZFq0snn9sR2djnO2okFrebu/GGi0jMuoCsAM1R6gbN3CbzsiylIdX4psZ?= =?us-ascii?Q?1d7VsDCRJHn/qeX4zP9Xbf3ZngqYL2pIaRgQ8djBi+AY5eVpOKk8hyw8EkHX?= =?us-ascii?Q?gFoFDxx/cn3EG/2Z9FW77VZhLnw7PC8h+QP/EdpW9OPxMcciLX/59OXLUvEm?= =?us-ascii?Q?dx9VLdRzCjh0HIQLa/4Nz+n2MgnchqliN9dqYQI7ANoh3WDaSMqTnn4e01Ln?= =?us-ascii?Q?4/xIQQAnA4BgagOmEkeodIXn66R9GyByTWKDIOQMb7+CdTOQFoXt7sS9T5O2?= =?us-ascii?Q?2NiYeop4phuSupwYsVjsAfIhOgKv5H9Mu308B0v5nmvr4MAoD9707LPgQRdj?= =?us-ascii?Q?ASr9?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:44.1227 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 3a0da22c-6bfd-4fec-44fa-08d8b49e4bc8 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 82+YRBEipXOcbidjHc5nAmcTUvfQi9dbaibtb9ROFnDQvVV/AHj+2OScEQY1o0KBFLGuxFNbdpccQjrvLmzfKXXBkediex+iDCn8fwebm6o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" This patch is generated by cocci script: @@ symbol bdrv_open_child, errp, local_err; expression file; @@ file =3D bdrv_open_child(..., - &local_err + errp ); - if (local_err) + if (!file) { ... - error_propagate(errp, local_err); ... } with command spatch --sp-file x.cocci --macro-file scripts/cocci-macro-file.h \ --in-place --no-show-diff --max-width 80 --use-gitgrep block Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block/blkdebug.c | 6 ++---- block/blklogwrites.c | 10 ++++------ block/blkreplay.c | 6 ++---- block/blkverify.c | 11 ++++------- block/qcow2.c | 5 ++--- block/quorum.c | 6 ++---- 6 files changed, 16 insertions(+), 28 deletions(-) diff --git a/block/blkdebug.c b/block/blkdebug.c index 5fe6172da9..315965a013 100644 --- a/block/blkdebug.c +++ b/block/blkdebug.c @@ -465,7 +465,6 @@ static int blkdebug_open(BlockDriverState *bs, QDict *o= ptions, int flags, { BDRVBlkdebugState *s =3D bs->opaque; QemuOpts *opts; - Error *local_err =3D NULL; int ret; uint64_t align; =20 @@ -495,10 +494,9 @@ static int blkdebug_open(BlockDriverState *bs, QDict *= options, int flags, bs->file =3D bdrv_open_child(qemu_opt_get(opts, "x-image"), options, "= image", bs, &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, - false, &local_err); - if (local_err) { + false, errp); + if (!bs->file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto out; } =20 diff --git a/block/blklogwrites.c b/block/blklogwrites.c index 13ae63983b..b7579370a3 100644 --- a/block/blklogwrites.c +++ b/block/blklogwrites.c @@ -157,19 +157,17 @@ static int blk_log_writes_open(BlockDriverState *bs, = QDict *options, int flags, /* Open the file */ bs->file =3D bdrv_open_child(NULL, options, "file", bs, &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, f= alse, - &local_err); - if (local_err) { + errp); + if (!bs->file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto fail; } =20 /* Open the log file */ s->log_file =3D bdrv_open_child(NULL, options, "log", bs, &child_of_bd= s, - BDRV_CHILD_METADATA, false, &local_err); - if (local_err) { + BDRV_CHILD_METADATA, false, errp); + if (!s->log_file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto fail; } =20 diff --git a/block/blkreplay.c b/block/blkreplay.c index 30a0f5d57a..4a247752fd 100644 --- a/block/blkreplay.c +++ b/block/blkreplay.c @@ -23,16 +23,14 @@ typedef struct Request { static int blkreplay_open(BlockDriverState *bs, QDict *options, int flags, Error **errp) { - Error *local_err =3D NULL; int ret; =20 /* Open the image file */ bs->file =3D bdrv_open_child(NULL, options, "image", bs, &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, - false, &local_err); - if (local_err) { + false, errp); + if (!bs->file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto fail; } =20 diff --git a/block/blkverify.c b/block/blkverify.c index 4aed53ab59..95ae73e2aa 100644 --- a/block/blkverify.c +++ b/block/blkverify.c @@ -112,7 +112,6 @@ static int blkverify_open(BlockDriverState *bs, QDict *= options, int flags, { BDRVBlkverifyState *s =3D bs->opaque; QemuOpts *opts; - Error *local_err =3D NULL; int ret; =20 opts =3D qemu_opts_create(&runtime_opts, NULL, 0, &error_abort); @@ -125,20 +124,18 @@ static int blkverify_open(BlockDriverState *bs, QDict= *options, int flags, bs->file =3D bdrv_open_child(qemu_opt_get(opts, "x-raw"), options, "ra= w", bs, &child_of_bds, BDRV_CHILD_FILTERED | BDRV_CHILD_PRIMARY, - false, &local_err); - if (local_err) { + false, errp); + if (!bs->file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto fail; } =20 /* Open the test file */ s->test_file =3D bdrv_open_child(qemu_opt_get(opts, "x-image"), option= s, "test", bs, &child_of_bds, BDRV_CHILD_D= ATA, - false, &local_err); - if (local_err) { + false, errp); + if (!s->test_file) { ret =3D -EINVAL; - error_propagate(errp, local_err); goto fail; } =20 diff --git a/block/qcow2.c b/block/qcow2.c index 5d94f45be9..e8dd42d73b 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1611,9 +1611,8 @@ static int coroutine_fn qcow2_do_open(BlockDriverStat= e *bs, QDict *options, /* Open external data file */ s->data_file =3D bdrv_open_child(NULL, options, "data-file", bs, &child_of_bds, BDRV_CHILD_DATA, - true, &local_err); - if (local_err) { - error_propagate(errp, local_err); + true, errp); + if (!s->data_file) { ret =3D -EINVAL; goto fail; } diff --git a/block/quorum.c b/block/quorum.c index 0bd75450de..cfc1436abb 100644 --- a/block/quorum.c +++ b/block/quorum.c @@ -929,7 +929,6 @@ static int quorum_open(BlockDriverState *bs, QDict *opt= ions, int flags, Error **errp) { BDRVQuorumState *s =3D bs->opaque; - Error *local_err =3D NULL; QemuOpts *opts =3D NULL; const char *pattern_str; bool *opened; @@ -1007,9 +1006,8 @@ static int quorum_open(BlockDriverState *bs, QDict *o= ptions, int flags, =20 s->children[i] =3D bdrv_open_child(NULL, options, indexstr, bs, &child_of_bds, BDRV_CHILD_DATA, f= alse, - &local_err); - if (local_err) { - error_propagate(errp, local_err); + errp); + if (!s->children[i]) { ret =3D -EINVAL; goto close_exit; } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197642; cv=pass; d=zohomail.com; s=zohoarc; b=C1fyRd7zAlpVAIrjY3eg2DLXSvm8UC6+eveOIyFeDzf3vkQ4SBVEw8ps6NwG5SDiiRDdtfek256ktbMABrRkFUocJwBIKwCRS3fou1tifKfJKaPsgLDe4uEieTinxAFj9RXU7SpXQMv//0znhBx9mhNUBQ2jqNa29+CLjkyzXwY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197642; h=Content-Type: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=NHnm0nzmIwn+sgo8rhgq9lMJ3jmOf1G9O/f4rw2SwiU=; b=CvDGXjbEyhXnRhGM3dHz6eUcKHXeD2sL5HzTsSkVAqFCB2gvAFs2ETzxnyycXYYHsz3G9nuS29KzuBCvKF5qxntc7zKmCcpg4I5E9Bc7t9pl9h+N4rcXbo5/wNXwVfxWCRHgmoRO0LH1BsH/g1Sh0uupa0hSLwWJUfpSgW1GzdQ= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197642589127.019911629111; Sat, 9 Jan 2021 05:07:22 -0800 (PST) Received: from localhost ([::1]:35170 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDxh-0007Of-7m for importer@patchew.org; Sat, 09 Jan 2021 08:07:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55338) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpY-0006Cl-L3; Sat, 09 Jan 2021 07:58:56 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpX-0003fN-1R; Sat, 09 Jan 2021 07:58:56 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:45 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:45 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AhxNeB6HtQ9i1SUIuI9PN06E66gYomqQXIDUJHw0m9YY0mcp0vdUpuUJvLg1zGFiTpHqoojpXhMlotlauBnmD48ipvmd06WWPJUkrvNqmT9CvpAwUHL6TTZHn/Fuuwy/BcUvmyoLHDwVDaDbJnNJlsrY2pgelPKMkgHLI6TUuueF37R75OrAInNZdp6q7Wkfbk8z+3qo5xDE6Lt+MMfjj+ECskA+uDMUaJDDmToopJBPmJ4sksZErF6hhkuFz6U/VFBlx80IQWyA0UKhUN/DhJbPS/FtJmzLJuuWoM1lFfWIvkSzcW8sjW4r22rR9o4xyw17Kcanc4FZ1PeiBMNnTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NHnm0nzmIwn+sgo8rhgq9lMJ3jmOf1G9O/f4rw2SwiU=; b=RAV3q9cNK6PnRlHDhTQ1jV1xjvGHTUzhwmJNJ7tFDas8SZeHPMh/7Zc/s+lORJAavxqGDGGIVPxbEEcyZITRGColeg+j3LfaLQwzYYKd4GzpKyL9KK5Tkox3316qQTcWf3Khh9lGY2zo7ciMJtzBrlUIBd8pH3iCEzPEiKquvD23gL+SmyLLpPMnX5wauDcP2CopYO8mqXV/KGDmBoUQ6MohAMiAnMdPsDIT1fStDUmwwXhLGDuBAKqSBy/xuCsEp6w4nmAPhYE3+CF9PjJG4M5MBMSwoBS/1OPGQqNjrZDFAMkn7KBPm4nx0qMpg6np2djIIG1zt6FWD9ZM6jT0vQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NHnm0nzmIwn+sgo8rhgq9lMJ3jmOf1G9O/f4rw2SwiU=; b=d88hNszvbrzUkJ/k2hINQVb7lkEhaY12Bb8OrKcWkr4cNqzJML7EnZyxK2dJaIvzBifRlhf2UrypKEoEujvihPmr4g3iXiGB5VP6ARmJwquvDc+zgzZHpaBNdJHF0uTJV2ggWw6e7a9sRDbI4fzdFS8WiDKa/z04i49lENWmHYo= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 04/14] blockdev: fix drive_backup_prepare() missed error Date: Sat, 9 Jan 2021 15:58:01 +0300 Message-Id: <20210109125811.209870-5-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7495fcbc-1c0b-43f3-3b77-08d8b49e4c7b X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1051; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ed+pA+bQ38TCVu+eR+cdzji64KBjduUJJ6eQasQp/ngpjzlWo7ivUz2H4IhXeYIEiaDCQYW/Xy4YXBTAciowmQOANMoKhaO1r2rP8KLhkUO1KTOiM89kT2MDBL0wm6fJCFLKs3tV6u0C0W0vtWTTJDcZM0NGu9uQQvzcbeMMkVQU8HDLSG36rSq77o/Uie5AkAZFoF/T2JhtiBh3f56kyGjncVWea5nbsa3cRnUSZbBF50QLdGouADV2vjAophNE0pR0jduauLl9jBWfM7wruaQz6w3ti7JNKuBr3TLjB4VqhjAP0CXme5tFUEnaLzf1aZhjoZvcYvmPB0ZMOt4YV7KqmVwxFiaN7r3lCGyf6lssvW7Ii5znJkfT1Sa4ccJbFmP9W49mFNZHjD0AJlSLEg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(4744005)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?hU1ZvIK05vXC3/VsfNRSgwwAkf1Ez/Ho3IrthVbztjpXWGKs73lWjeD1CHGM?= =?us-ascii?Q?QGhVUIfE9gWXmurFmmu5dqXgDmlUSBhzx+7vSu8z2nqPwpT9JOqzoWBkImIA?= =?us-ascii?Q?dMBz2NZdpLzREVGRPK4EpBj+jb3pIv8kqXfr74hQ/4Bn+W61W4r7slNwfTZ2?= =?us-ascii?Q?81qzwny26WBnrRx4LIIP2x3omXHfxzj2GF70PpJCs6Xzpr6bpQUfkKNPMePu?= =?us-ascii?Q?QNl5Zmxdv7i5bir/MP7u32/kkBAoQk2HK1Iy49+qEeZjFY6TRZT3to69dCwJ?= =?us-ascii?Q?+ftW9uSvIG+SMVEVQATjLDr3BBJmU2SRDxNxm2/Z1azLCBdIlGS7iPaawOwJ?= =?us-ascii?Q?fFbDOhQFyDw4745Vnu2lL/m/Q3Lq6aMjbRvfPlst8SmE3bn6gEQx+8nuwply?= =?us-ascii?Q?UBaPNtKMBjLWidjKvfkZYUQdA5IBvr3v9NHsgpNCOomcNt3Tcb8o5bhE//uD?= =?us-ascii?Q?rim9mvLJW0qb5HTEMTWV0FPo0l1MQw2UE34kMjLnFYpEZy7qzMnV8fW28pl/?= =?us-ascii?Q?jq7buHGnt+ZFA/3vxBpMyLwOYalv+OpNl/8HV7NV4ttjWdThJRxVYr/k9n/E?= =?us-ascii?Q?9NxChhgRXaKhtxGsdbTuxU8A3kuSxVbC2LsJIubBRI4UWP2E3RL7XaDRaMkP?= =?us-ascii?Q?fQ30k28RHSulOTpyrkRwT6hnQJPXYgwJySgv21cF44pt7ti9qE79enq/TjkV?= =?us-ascii?Q?52l+SnWMQ8fYtOL/w/B6PZ1Krw0ivlp2h4tAZ91HnkNXL6AKnfnZ4pl+ajrV?= =?us-ascii?Q?IN4z4LCCyoLWpZxKLQRITO8ZDmdLRJdMxmhNuD+X6jkSqgacWYFqks6KVfnL?= =?us-ascii?Q?Ea2yeJGSamd0Su4U7W0VRZEGaZiFRE9C4sQh+vLcSd//E+V7BUr9gSDNJlE/?= =?us-ascii?Q?Jv59vAD6IPYlZfDrAWSXn2bAtWKYQEmAha7N3ilpxHh8oQkAk9Y4Lw/f7Lvq?= =?us-ascii?Q?v2BDXUT9pGuntsGbWQQEZZZhdkK8eh8R2aj8MbcT5b2V1BPXdhpOnCx1rY53?= =?us-ascii?Q?pFNe?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:45.2836 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 7495fcbc-1c0b-43f3-3b77-08d8b49e4c7b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 05PyxEZG0AQpmv1O9QGVwCKtqW61yYjsA6JrfYwr+aBwxnTq8EfGw7TnqghS4DjlCn/O1xUkcAaS3G8LZjpznBRz3PlwnLyS76W/DdQZTjU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" We leak local_err and don't report failure to the caller. It's definitely wrong, let's fix. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- blockdev.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/blockdev.c b/blockdev.c index 84c5cde07c..753fb90c16 100644 --- a/blockdev.c +++ b/blockdev.c @@ -1825,9 +1825,7 @@ static void drive_backup_prepare(BlkActionState *comm= on, Error **errp) aio_context_acquire(aio_context); =20 if (set_backing_hd) { - bdrv_set_backing_hd(target_bs, source, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (bdrv_set_backing_hd(target_bs, source, errp) < 0) { goto unref; } } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197342; cv=pass; d=zohomail.com; s=zohoarc; b=c432SNj77X2qmM3GGT2F33/VaVkoOxNZlyMwEpTNzffzTASmTKLpcXHe7HwBZM9ZHJMI5BFeED/SFHbp9hoZRv7ujH5mvv1oIiO4R/dfU6wi6K7I8aUH7+Xe6Aq+7JOAtiAGyrqFv/6p+Gatj3lWtRHQRRDrrdQPFNo6OgBW+eY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197342; h=Content-Type: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=iTb4i/TU8HCHgeMPZ+/3I0dtaeoR6bFUd4N9WISs+2k=; b=eHYfPc80D8L5iPUGLGjoua5NrwAIMGVRWLwzPNUA5J7XeYN+YAvRkc/9Q/qc4gmBLlnbfTQQE2ONyIU+RWLJByog/ABfCuMN5VUHpqUyu6QN1jboMQuf6BD4yLZ5vwrKVdkoM8DWadYKxwHf2WGIEuOvmwndXKCjNxNx91cYaOY= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197342502877.3849784051167; Sat, 9 Jan 2021 05:02:22 -0800 (PST) Received: from localhost ([::1]:48768 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDsr-0000j7-8C for importer@patchew.org; Sat, 09 Jan 2021 08:02:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55346) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpZ-0006Ei-DU; Sat, 09 Jan 2021 07:58:57 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpX-0003dJ-KS; Sat, 09 Jan 2021 07:58:57 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:46 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:46 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X40AG7ngRZETF9t0YlAcay1ExZubITbglHgbIs3X2QtheRT5dYBpW+D9IHb9O3B+6SPKf3eLO8WWq/5yZ7dJPHPcNCj7Xq1Gdc82Gn0e1nhS9yzGwBYM9EEyLYxZykM/CnYOvE/NBYwPInbxtkh7ObWRLRghq0TyCYhsgn9XmloXlrwqbj10abWSQ3NgzBQo5BUl6NelVqH9IfwPzPjuUxGIV1yTnkYiO8zlrZFYAd8Iu5DDUuidWaSZLrmsGj86dDh8Cuwk1ha8+z+HABDBzuxxw7HrY8lh056ClSwdep9R8W3TIFcQmCIIracIEw4UPDrk2AU9ge1UYUZP1tGLPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iTb4i/TU8HCHgeMPZ+/3I0dtaeoR6bFUd4N9WISs+2k=; b=LPsdMk8QDYidl5YacugM8n4INfpa4V7p1JaRv5fl+kHNT9xOomZvJaSFoOrR+Hjv2gkIlFMQ7HH7SRcgTMnv0I7yzqfcuw/byTyL1bn1w9m6W0mBIO7U/pTsZfizCySktEliQmILmI+4ogpqMGRXbA6W7GphokWyGFXfUdoGVEMXioqiMyYkXqPkRnfO67saWhSy0NmwWMILBPoUSIXIn8gP2EaHvnf81JRRtUqzwRmJ30Oe1VbuW1tuIYCWs0MQ3W4sYt5QU1xejmT2V4TAt3m9pul7SpTKM/zzZwuAQ3NoLFbtb/LRwKTVX+7gMeOQrd+3KlsPwOkJmc31TKB/Hg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=iTb4i/TU8HCHgeMPZ+/3I0dtaeoR6bFUd4N9WISs+2k=; b=vHzQSmIkRX8k52EG+gdavMxcb7ypBt2cJPzkG0s7ZOfCWLhzmqxfktCQnuiRyKJW8hFdjV/Y3bFLu1VwUX6ZUS7IwrtkZEcO0i3GXcOKpvc7kEin8Bc/F7lpYj1GeLhABx+JPCJ4DCF42kmD4ctG+fNQCIibcIedNGFcA2IEWc8= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 05/14] block: drop extra error propagation for bdrv_set_backing_hd Date: Sat, 9 Jan 2021 15:58:02 +0300 Message-Id: <20210109125811.209870-6-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e42eb41b-a7b1-44fc-7068-08d8b49e4d45 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:765; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: q/CoCw/KHtRoqPNMNbE2l/UEHpbk9Bw8+g/g+/KWimAR7/ed0TaLOlFhvSO8rn4K77QTgLrxjAZ08FrAc+qAHpEh7C4evPYyGglGPOpHu9WbTpdGzlCtNkb5woAYdCNen3F+YcVWByDe7Um8J3sadqZUAmw4hfbHKLSFtXUXea/9w9hxVtDoC+u9cx1cVKgMHePyr6c6Zf9uo+BWw7mmPey7SKaA9b/gon6l8JDIbU0mtIcPSgXHW/5gVRr3vGnrpOTexweUIiddiQurLCJwI/XbMMhOxvDWOZqwyAhMURukAR5AJzfZyezwCbYCnnuiQYoVa3ePN5ki1tH5taqEwWACp7kMTINCde2yiXWhaZF2BHVgDxlM43GayvuXr+INnAD49IykZQD68OBYOy954g== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(4744005)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?8oYX7mHu5IFEHUojNuP469XfgXJGKlIKEok38rCR5iY9onexz9gTsSDiRfiW?= =?us-ascii?Q?ik6dx1orBKXTp8Gw1Ln7FRMZdAOEzkzuwMOFHXAFLFgApOzS+538mjDePC/z?= =?us-ascii?Q?gN27u2V0DQD7acVO1H0OeJq2LTCI89xQDyIk1YVdjJvGE8IESNQrWRm09DcS?= =?us-ascii?Q?EsM9Iqw9RiGp8DJ9rn3uGHwrotvDRLWe1nB3AJDPO82C25eVcKZEmVAdqV+J?= =?us-ascii?Q?aXEkFKPk81cucRlLvWxtWGYw+vKBsIB//MEJamLK9hDiGhb+TftUD5B0ypNI?= =?us-ascii?Q?qQOlDVaHUYjZUTZezdzyd4UPhpGVt9F4h+/Yx6bJwDJn1eEU7++cocBaXDcx?= =?us-ascii?Q?Q6hgtCIL+5dOugoAOI4LWbeKmW6nj6xeR3E9L/yjdDkqX1bYj1GTdFu0wg0y?= =?us-ascii?Q?sOEfhjKTPVwZ3GH3ICg2+c4TrK+hTheJg1Xo8l+gWokyMbTtzjmDCjLHAs7e?= =?us-ascii?Q?KKBJDakTn4xi9bg3RYKaXeZefbl+Hcntbpr7xXvj2NP43J6NryAsFUrW6O9u?= =?us-ascii?Q?mEWq1yp2ukc+CtEXkw/8lz2RbGN5sNserNLnVx8RHeFcNSRfs3O+G9JQYcVf?= =?us-ascii?Q?MU5U516x7sTKKDOjO1ZUEDrH0H2nYOmjtcqpZJ7LoQakFhtlsfE044Y89OCu?= =?us-ascii?Q?iBf6tKWMqUoy8fYBkFMzEktFNEwz0fj+iZjrzaeXBbCvF3lCXW+/iFjBShi5?= =?us-ascii?Q?z3ExnZbxdUjrd9WZAZb/1oeR+quNcr0S9z3uc5ym2p6wmBRw07lnh/gk7PDp?= =?us-ascii?Q?ULo/h5XzGaThrmsubyXdzNwYRqwP3KpTduFZXf9bLjVbixY7EBUrTVh+7h8P?= =?us-ascii?Q?jXTKIWABTfCAN86vk9OZdQ/X8J0qVEpqY1wx4ctO1hHgfXF/PH4u1u7BF3UM?= =?us-ascii?Q?KPE2ft6MOWU2FkjML8JY0B1SnvVpZbkZu6qADKSTvruGd5pLKA+JybSmjh81?= =?us-ascii?Q?wbyrq/FPoMd//xl7eOIwoR02Tt4eAg2Xqnty5cmqISWH3tF2dyfFTkqF4nqX?= =?us-ascii?Q?udnj?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:46.6785 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: e42eb41b-a7b1-44fc-7068-08d8b49e4d45 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZqhKdaPGKM9VnvldfKL0OD32aIDZEHkvTYqsoMpjMRIsekdRRo1rTDEsiVk26LTUpmsq+t00VtZzXQ7XvB8Ce+Qtov+tcwdhkyRhdq21qSw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" bdrv_set_backing_hd now returns status, let's use it. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/block.c b/block.c index 2a13fbfc73..0d7a62476f 100644 --- a/block.c +++ b/block.c @@ -2975,11 +2975,9 @@ int bdrv_open_backing_file(BlockDriverState *bs, QDi= ct *parent_options, =20 /* Hook up the backing file link; drop our reference, bs owns the * backing_hd reference now */ - bdrv_set_backing_hd(bs, backing_hd, &local_err); + ret =3D bdrv_set_backing_hd(bs, backing_hd, errp); bdrv_unref(backing_hd); - if (local_err) { - error_propagate(errp, local_err); - ret =3D -EINVAL; + if (ret < 0) { goto free_exit; } =20 --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197545; cv=pass; d=zohomail.com; s=zohoarc; b=W0Yxa8Asia/ZgBX6R/w975sg+A+pnTP3TxjUjM2+QwY/3zPXFqr+rrYCSzmIOUZHj28mhSfpTJIc/nM0sUBLh+dEo0SWvSe4nYM2ndntLFqlcUR1dn1e7bn8lAS+Zpkj2FVRBmbubja9ao2aTzn6SRnIPVgVP3ctTRXGGmyIBTQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197545; h=Content-Type: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=Ri/gAVBqCFMbPnfGitHImcXgSuKzBCYqOqV/VUfQisU=; b=NOVyMUyptg4RKxIRXptWijx9mo61l4v/Tws96pVQCNtmmiQKXSCIMPfKCZn/TqubkXCOQ57WvTlETJu30PZS3903VDbIOEHuX/a4oDNLp6Nly+EN7nlbu/2VHHBFW5NWg+9en8ihrNddI4m84vdOCyUPjEDurkcbj3G8XdAzUrk= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197545382627.825988372003; Sat, 9 Jan 2021 05:05:45 -0800 (PST) Received: from localhost ([::1]:57074 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDw8-0004cc-5y for importer@patchew.org; Sat, 09 Jan 2021 08:05:44 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55370) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpa-0006J9-W1; Sat, 09 Jan 2021 07:58:59 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpZ-0003fN-86; Sat, 09 Jan 2021 07:58:58 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:48 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:48 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=it6mf2tNYdcFWmbSg1ZoZTW+phr8rt3KLjLk2v0g4/f0ncQG401ZVzp5CDCEtBEURn90dHU6+2EQWNR5cLuphO50eFpSGIZ3QZJrQmAM24rc/vS5t9lekWfxmqQ50cO1PQaOG1LyLFQCD1u2ZENaIdnAh3i9eywaC2HxhIxYJkpHtqV3pbImW3YDzYQdu8kbW2W5yXHugcoJJxHEmpkmbgjgPXMtr5lEcjEaSonNqovHonP4OE+JTgAVghx1TmUR3VAkY2J34oDNZ/PjrNuATt2+ZlpAWmkSvvKOpIIWwBJ2DWnJOU3FdUU/UhePFXVcD/UmiBIQmCmr7qlzcU1qJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ri/gAVBqCFMbPnfGitHImcXgSuKzBCYqOqV/VUfQisU=; b=exfCdEv0ZW1N7m371IpG7jBhCEDPDBqCKcFHldarGMyTe+ES41vTfWIXaV2m+CY6vPrgRN0ZyRrQRVFLcOsfnxJmv91nhgDz6Tt9KQKmERvw1q0kY98Es5cEQBAApKUDQ+HUP6qUI8GOGm8LQPG62bMn5RpsuHDuZ7b/x2rJenZ+G2oGKwqBjC3DdIt1S5y9jbOJ8NbvGigATyJMGjRHec86ts1/tWz4zWTjDg65lqQohn5SSzwA6PV5kTeJfttMs5z4AfCUE/4VMN8s7NI0nI9bfw22PAj9HCUatvFDFyZow4msJzwvTO/i0PaLb6HYfR501+CxkppKEumQijkXtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ri/gAVBqCFMbPnfGitHImcXgSuKzBCYqOqV/VUfQisU=; b=vHRfvlrPQ/b/fWLsQ6l5JX4woZTI/Nh5yLjSTnU99IOc84R11ckR0s5mxtxrf6L+v5VFlNtxlQmdQr/GWv2lYLlSRnQ4A2ZC7f/bWUAKXk456/wn6VIB4/0YHHOeUbLchl/BErt6XU0NG4fqV7k8tlpWHuBUp8tIqFtbu0xlVII= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 06/14] block/mirror: drop extra error propagation in commit_active_start() Date: Sat, 9 Jan 2021 15:58:03 +0300 Message-Id: <20210109125811.209870-7-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 628e4602-6cf5-4975-474b-08d8b49e4e0e X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:268; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: SoBLKXhzh0EyLUypJiVNzDMnCJYRGNksfaTC0+IBobpvJxoEJcqf2kZpxMg2uZSIBWI9tmkfq2nTQ9BaoHQZI4iMHMDap8xAiNOhFE9yhKDjXzJ8yHRWBNN1wjRNES2s8227SXpNFCvMhZfEIlyqIXNXqQNyBFnfrR0DE10QpzbVoAwVf5AgFsfGirgRGko3peb5HROUbbVL+uAqCxGlh+Bvo0ry5LEYsnKNUMnV+uj4vXvsg4EwF7TYuI7K99LSwtkwb45v9+SoU0PAuG+fgUIOn7oTUAfPIJe9SKZmAzkkVmmFMQohkBkabFyRWLB3nao57ByeFscZdk6z/knA8TIZZHijBoEhoPkPqTXBg6yWR2hwAiLqJJZHz4SfhDExDRyburE+tBfK4t7YOoP66g== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?IdXfsK5IIHh9opo6CwHObd3YcKqZDZB7nDsbW71cOLjrfDr3a/J9x5q4ge5p?= =?us-ascii?Q?DfTMYORA8SR/rAcEP9qtLXY3vi+oMsoBzuqmDqxuolxAtwfBzVhAlJjIDVK2?= =?us-ascii?Q?axg9YN32J03hwmvtk4zT2Qx9jEHE6kiuF3wLDFjmnBl9rJSc+23INu3V/gIk?= =?us-ascii?Q?x4REpfJdyF5zyZ4W1hixrXoWKE7U4A6s15or+EW6Qj2vy0kAmWW74VBHONf0?= =?us-ascii?Q?1D9RlamYRM9Rcwsru8reFfE1Qp8xqopNfbt6PcRMbMeUOFwbTSTMPvy/hZkI?= =?us-ascii?Q?z+xlYK/OvzEagIlx5KMtmORzQGxhHNu+UXcr5BT6Gb5xdP4FBGXn6luYo0jL?= =?us-ascii?Q?Pldti/7hH99ebRMyxr/LanHI+OhMrmry7Eo8oe4H6pLuNRanxQKfZ4YvTduJ?= =?us-ascii?Q?10VPeSiwJPEoPceHg/DooS3bBIN9kKX4TWK4BJ7YH0WvnY/I59tHwieJxMNQ?= =?us-ascii?Q?iPrGHgPrrGfrjnfxYqPRslxOgg6NTL95eYR4BKZB4HZ4+RlUpS32Pd5QKPvw?= =?us-ascii?Q?3nyh64WbHh5zz1+HHhErd39AVQK5kF3pZ2zbf31AtT3Cm3iU0O0Co8G8U5tj?= =?us-ascii?Q?Ro8rt4j3z/2T8UntdcP4al+OEhYHvRgUzi+xtxZgcGPQ1m0EQ6bJkcnm/BU5?= =?us-ascii?Q?VrrMJa0lKDdPOdgB00hhR8c5SMwQ4NCqK/OkknkTneX1fcE2+dIHrin2mdH+?= =?us-ascii?Q?UKIsx3CvIIDS1xAMLE05WiaPNu4CCWZU/qKDFbtYw7Cz1QZYMj2kRdj9+EFz?= =?us-ascii?Q?L6vDAI0nuZ8zb+VgO5t/kauS7WuVGaGOdvPulxG9C2UTzagjvHcVLHJwMU2p?= =?us-ascii?Q?5X9TbUfSjAjNp9A3bruw1qkgTgt60Ca6N3teOcsieQgIkKu6Q6DH8wVKWmg+?= =?us-ascii?Q?N6YU5wGb4HPyxXyG3NGf0xH1PV6TrqZSVDFSYUI2ispv2aV/ual5xm39yxfw?= =?us-ascii?Q?qoNNtzJ0aKyzn20eCkZ0whukjaslPiLaQsV/IDsFYdBv+XupTlM4Tg6OcGjX?= =?us-ascii?Q?YEf3?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:47.8952 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 628e4602-6cf5-4975-474b-08d8b49e4e0e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ou9Xf4rFNoOGJqUC39gi4+LEjzmmAg5+N9NFtyx8p9g7I4vXhx+4/W+MsUieaowqRYckPi5pdfqbK/2kWk93kQP1wMY7cobl0xf0jbbUs7U= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Let's check return value of mirror_start_job to check for failure instead of local_err. Rename ret to job, as ret is usually integer variable. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block/mirror.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/block/mirror.c b/block/mirror.c index fad2701938..b7b5686a57 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -1851,8 +1851,7 @@ BlockJob *commit_active_start(const char *job_id, Blo= ckDriverState *bs, bool auto_complete, Error **errp) { bool base_read_only; - Error *local_err =3D NULL; - BlockJob *ret; + BlockJob *job; =20 base_read_only =3D bdrv_is_read_only(base); =20 @@ -1862,19 +1861,18 @@ BlockJob *commit_active_start(const char *job_id, B= lockDriverState *bs, } } =20 - ret =3D mirror_start_job( + job =3D mirror_start_job( job_id, bs, creation_flags, base, NULL, speed, 0, 0, MIRROR_LEAVE_BACKING_CHAIN, false, on_error, on_error, true, cb, opaque, &commit_active_job_driver, false, base, auto_complete, filter_node_name, false, MIRROR_COPY_MODE_BACKGROUND, - &local_err); - if (local_err) { - error_propagate(errp, local_err); + errp); + if (!job) { goto error_restore_flags; } =20 - return ret; + return job; =20 error_restore_flags: /* ignore error and errp for bdrv_reopen, because we want to propagate --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197639; cv=pass; d=zohomail.com; s=zohoarc; b=drsXcDz4eskUQK8466z6OYnHBXZIJ/0ghRWxoLpPAbWeck+p8Yz8dTkZ2tDGX0Q/Xar1X7LgqoQb/SjGSShCUX5nnsidSDhmmoJCMu2o0iAdp68OsueyYTjRsEEROsnQNmU8i/WO06jzfVv3aReoNFu3M+w3KYu8rFU5zsWmzFs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197639; h=Content-Type: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=CnvxXx4Sq6TeQbn0N5jnN92TmTyGAUWeEQWfXH5uujI=; b=S9f5B/kkPINIBUFac3z8qinKz6Rl9215xhc6O2sQRfzvD/rOXkuc/C5+U1C/8F7EIPTTxCBVev8sPzY/OHDW/2+AVbi8JQJu1vXpnDDZDvjSGjSoEG881y34Q9z+vvia3uLrB29M0+DkpEkE3M/Z6UXh5yRedgIMZjnsMGi8III= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197639295713.0170098135131; Sat, 9 Jan 2021 05:07:19 -0800 (PST) Received: from localhost ([::1]:34856 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDxd-0007Gf-Ir for importer@patchew.org; Sat, 09 Jan 2021 08:07:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55388) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpc-0006NI-FQ; Sat, 09 Jan 2021 07:59:00 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpa-0003dJ-2M; Sat, 09 Jan 2021 07:59:00 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:49 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:49 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R0brRba04PJN7gSt2tcVO6RDMDsjHGg3FiLfi6e5urqxrU+4f+hckJI/hIvy5oljLMrZkE7e56F0eP4s0Tt1gWiwJ8gXFZgIHoqvYkDw2V+eY0onbHRbd+HsMraGFcg6jNd17lALCBQj0iCwpbzeIIPYDA0LZ/DRVxWbKwn97QBslvL6c2+KWUwv/t+9PCaIMakrTT91QzYQIdWZVYbklEqgLfQSEvbp2Ws+1ArH8ID1/w1ImMWQgimSZ2SjlPGO/CivWSrxj5DkUNQGYi71pUzNv5xJlejpT1Piuk3AruAWvc+TXh4OPPq7CO6/UQWrqXNAnQErVS7wBfIYRvPX2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CnvxXx4Sq6TeQbn0N5jnN92TmTyGAUWeEQWfXH5uujI=; b=YBE73nozYuj3li8+i37A3fAO2Rf26AyBLxkgdCn1y1dYsP4fazuOg9j5hy4XeFpy+jxAdEbijlPKj8ivDLnBsSxQTpY2B99Lx5PPJSIhsEr9fYodgHJOBLThkjZYWuXgT0s2nXa2xzhEX2qHJvFbYbFLn/6vu7R9YvJvBTt0Lf8kk/E8j9NFZaM/zE7EMayNE81NVTYAzlaMOGvy9HoF1xgbYUm2RGHaTrX2kYTys0YxNuMk2w+bdqMVWp+NZngBgoA5jWgX7v0s7VvoG20zaxCb2g1CRzB4uesPfrQFBTri/eJIINlOehh3GPGHH1nBCN0/JJXAyi69Gx5CnEzm0Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CnvxXx4Sq6TeQbn0N5jnN92TmTyGAUWeEQWfXH5uujI=; b=DtwLtv4zpUHXqb1Q8VT/Bgfpmrg91nXwruzJWrGVZ5AZZnVz4Pnfc8AX3qtETFR8j0Q1y6aCkrX0Dk3993kdJ/gvt2VVrjvOcrnLeCxE+EZTzEPOSVz8vtV3aZPAONctKo4S9FjXvOWzuPAdO5S0tV3MyHRrjDy6L5KjT3hEbXI= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 07/14] blockjob: return status from block_job_set_speed() Date: Sat, 9 Jan 2021 15:58:04 +0300 Message-Id: <20210109125811.209870-8-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f3ceda92-ebad-40ed-8529-08d8b49e4ec3 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4303; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QfotyQLI1mikNRmdOvmlsTUgHbuOqCg0yU5bAKwGMR4MeTTnsaBNv1Dh45lY6WOoNIGbuvpAyg2ogc3htWYC6PT2+cq7SOd1VRkT0dGnPVFeLcqTh+jEPNcA55/bDDCRfEDGJVup1ruATYPop9GRx3pnYIk/zd4mfkz73IIEOifQ5QyrmtNUrWcU4tird4Gq+CvkP0XtjmERogWngyvnqPK5G7bWGvsEP2PFwqeJ0OXshVagtNsqIaFi0OjphkAq35/DAKES4toJC+SYIudYCfRZ2i1uMrvY4g+9ORNqjTOLO5DdfKiMUwZApVVbKu1CAkuFBbf+CPXJAdqcOf56Gigy2b7FNGk87eGY1F63UGaDehamrjAnGrtFKme6EgpaeANZfXsByz8tkmcPb2RxOQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?OI6Qs18sIAHoN0kI9K5aE73omKLakMUx7otEe7xlvU3NC7Ar4oipnRqWCA4/?= =?us-ascii?Q?jKnCoK050k6aDBAi24Lxfi4EzstbB/SIgFObB9nmYn/fBTbzOHida6YbKFxS?= =?us-ascii?Q?FC7oq5Yfk2cy3bYBNvVZdFgqYuCHL3823Ye6lZUp9szO+eq1mdhIzuqeJ/vs?= =?us-ascii?Q?NNUIsPmBRtOXxK0hYXsR146fFraspf89aZC6YjWYIzstIetj89Gd+edS7NJz?= =?us-ascii?Q?eQEJa+UBxOhI1JLSy1wZLO2fmDPYE3tbAzJSqt++9uKNRxrW0Jof5+D8UW2c?= =?us-ascii?Q?ipGhY31PUB7V3TTWJZDdOaLtIaKu9mwZ3YuacMcSuTeiJZPC3X2twj1Br6wM?= =?us-ascii?Q?fy1w5NaQY79rSklhGxtvJNyoUIF6zzuqqkPnTLBaeIyiG4Df86YyoPUk1XN1?= =?us-ascii?Q?Gx/EYKzPsPOwQehKTvI3pUEwmi6cU58AtEi1DC1quGyUGu0uXoF7Juj8PZn7?= =?us-ascii?Q?qGvL+8N0ULEUeF1PX9juYKrBzznMUagvS5irUPlwIW3hKx7cKQrEkvjdoim3?= =?us-ascii?Q?h212j+QWwUUJqfT5GlUF2XcIAbOVU27doBPAenzCVafrSyu87SIAOm25opmq?= =?us-ascii?Q?T1EGo09TdTCF41Pn7aHeGqEJdWHGA6oPtna7Eq28/6P6qA7KmlpdBs/U6I1J?= =?us-ascii?Q?Y0MNuxgNN8Q6eK/gigXBXBKJysBjZdLQdZsIRO+Hb39ZtbREBqozM+Qye9rV?= =?us-ascii?Q?ivmvzIe4bGfuVX1J2MPSJtYMeG2fxjgX/um8DOSsJtfL7E4Y/psylUq1j4bV?= =?us-ascii?Q?6aV6q05eYYaFBFDiFdp1HHT/hKxscbVSH7dc+jvwQdk1YSnwtrofGkM989pH?= =?us-ascii?Q?Y6GAlRtyGFGqJJ0tNvimDVcptunwBfmgSEJGsmRmATY7JIYQULTY6m1/FHl2?= =?us-ascii?Q?fSXo0JUQmF15XTfptuv4jOmlZzDnZHPR8KCYZq/7SyApwWrLW5L43g1P1Mlp?= =?us-ascii?Q?PYAADf2IApWOKBcj2Euv2JRgSeGe3zkJUYnG8itcvCG2YQGzpa/WPNq6XCM0?= =?us-ascii?Q?aZHD?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:49.1965 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: f3ceda92-ebad-40ed-8529-08d8b49e4ec3 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hGoH54XMv+u3BMxLcSUHTVK5GevEXz5IFVkYXYENxWe4SzrHxL3sdUANH7vs7CQwfZGPEfZfEXenY5+kUhBw1Yo0WnJ++z0FmJI9+FIylv0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Better to return status together with setting errp. It allows to avoid error propagation in the caller. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- include/block/blockjob.h | 2 +- blockjob.c | 18 ++++++++---------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/include/block/blockjob.h b/include/block/blockjob.h index 35faa3aa26..d200f33c10 100644 --- a/include/block/blockjob.h +++ b/include/block/blockjob.h @@ -139,7 +139,7 @@ bool block_job_has_bdrv(BlockJob *job, BlockDriverState= *bs); * Set a rate-limiting parameter for the job; the actual meaning may * vary depending on the job type. */ -void block_job_set_speed(BlockJob *job, int64_t speed, Error **errp); +bool block_job_set_speed(BlockJob *job, int64_t speed, Error **errp); =20 /** * block_job_query: diff --git a/blockjob.c b/blockjob.c index 98ac8af982..bba96a89ba 100644 --- a/blockjob.c +++ b/blockjob.c @@ -254,28 +254,30 @@ static bool job_timer_pending(Job *job) return timer_pending(&job->sleep_timer); } =20 -void block_job_set_speed(BlockJob *job, int64_t speed, Error **errp) +bool block_job_set_speed(BlockJob *job, int64_t speed, Error **errp) { int64_t old_speed =3D job->speed; =20 - if (job_apply_verb(&job->job, JOB_VERB_SET_SPEED, errp)) { - return; + if (job_apply_verb(&job->job, JOB_VERB_SET_SPEED, errp) < 0) { + return false; } if (speed < 0) { error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "speed", "a non-negative value"); - return; + return false; } =20 ratelimit_set_speed(&job->limit, speed, BLOCK_JOB_SLICE_TIME); =20 job->speed =3D speed; if (speed && speed <=3D old_speed) { - return; + return true; } =20 /* kick only if a timer is pending */ job_enter_cond(&job->job, job_timer_pending); + + return true; } =20 int64_t block_job_ratelimit_get_delay(BlockJob *job, uint64_t n) @@ -448,12 +450,8 @@ void *block_job_create(const char *job_id, const Block= JobDriver *driver, =20 /* Only set speed when necessary to avoid NotSupported error */ if (speed !=3D 0) { - Error *local_err =3D NULL; - - block_job_set_speed(job, speed, &local_err); - if (local_err) { + if (!block_job_set_speed(job, speed, errp)) { job_early_fail(&job->job); - error_propagate(errp, local_err); return NULL; } } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197809; cv=pass; d=zohomail.com; s=zohoarc; b=AGo5/gQqnelPHnX6xymlQ/CtMIR5VBVkZ/KZnk1T8nGSWXBUzXhCSXewb/LoppPUbe9ZDOsy1UXtuHnOJJtJovxSdT+HVODHuq21E2yP+3lDbRYh38iWob911Jtc0JHsce8VuxbO7IcgPkclTLbOUPtJkuX8MlQG7e3s2yjtzeU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197809; h=Content-Type: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=BtXtmU3gsHioLdQCRsEBvSafeoo8uPxfzTrrrmdARlU=; b=J587zbiD9p8KeDdbEZvQeu1NNW5VRCM/PiTDpI7+xoSofo8Ng76PXreym8MXKpPzLwlvmMCw+/r4wfqRBmSf+oQk0+zmno/lHXi62hmlBEpBCbrD47namzzaATcEb5H7pBpAxik0P+JGbeb7PGErlaIdD4eETaY5uqtNQDJ58bw= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197809672972.1450474856931; Sat, 9 Jan 2021 05:10:09 -0800 (PST) Received: from localhost ([::1]:41830 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyE0O-0001tx-9p for importer@patchew.org; Sat, 09 Jan 2021 08:10:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55396) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpd-0006Q8-DX; Sat, 09 Jan 2021 07:59:01 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpb-0003fN-IK; Sat, 09 Jan 2021 07:59:01 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:50 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:50 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KhXIkpAQApGBe3+Bo8BkowCrj9ha8a3KKHYNZj+Qta9CrKN0KAnEh3WrQmlCu7ksWsAAPAsZeyPvAOpk5jVKwLQ/WW2eMxZjbxNECPLXZyVuqmTveBXy27Abj/GoAKoGJfGQZPIufWdr4pQxNpyu6UIetatkTR6dg0rTp9hF6LA2QtPSXJesvhhOxGSPQBIv9yuL9FgHeVk5n3rjDQk3T5yYol6UAWfrVW/8DWkLsweeA8ulmU5T7wbk35oNpZDZ6wRI96i2owXmA4JpCGMyqKLWcDOP/suCpzNw6zWTqgdnpJqFdJR7/VW4ISyjOAWnhAeoyPTwXCN2vcwCZVp9Qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BtXtmU3gsHioLdQCRsEBvSafeoo8uPxfzTrrrmdARlU=; b=YKTWejemtiriqfqIkfac4s+S3qZGUwOVjV19zjP0wtmgAsyWaDBNVRmHlO9E8MsEZBPJkO/89Exfv9Q72FCgY5T8xvr9O4FC0ODMf/Vl+SKEo4jVB/heRWmljPD38Qefu/HHc0sB+m9nhATCZF+Gvzy4N3GFpQR20iyox7OYzhJ4z8m3I++7xACqVbcORwi1MzwzxxCoXz18vVTGy4sJC+ZevwaEm/Io9DQjZA0/eU9f9kwuVFEhbxC5EG7sUuUusOlOuRZmX5ZEzGvYuc6j9d+XpoVxzua8fkOHxxSet0CTeA+442h6k7sEyUE2jySG+gBOi28SJ6okFuz9jWXOeA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BtXtmU3gsHioLdQCRsEBvSafeoo8uPxfzTrrrmdARlU=; b=jH22kF4vgalIj/t86eu0MCjdemjQRifEJ8aZpWNhG2MW2LhUkGEtzV0znLMF8es91upAWc+IF4L3a7o2U7nuHdkySaoZkdymXS0QjITk9bD+RjUwQBj98hGPp4cF7M7m9TouwgVL/E33WWRYVgZz7InhqVrfURtU+UVZGhZmIKI= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 08/14] block/qcow2: qcow2_get_specific_info(): drop error propagation Date: Sat, 9 Jan 2021 15:58:05 +0300 Message-Id: <20210109125811.209870-9-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d2c5fa29-2bac-4a46-e3f4-08d8b49e4f86 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:298; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8N9ItBW1oz/8/xWn/hVFlDj4yghUPrkhhnMoK9HJyIGLahj8PVvLRTG9O0XZDGQkSHIdZ2BnB6y3b4eGBBjnHcKpChYAhNWi+yoFt7Nfwq7P9kWJ9nPOlcqV8oEePgkFPeYS6nf8qOsOq3fis6r/XJ452WeLLnbHO9nTgKu+uq0W293+vW1eDeuhrf64GXy8lnxZDzSMX3xNLytyh+L1KYt4LxZuG2BbiWIOe8bl1ELcnLZ+EVt1VpV+B08Pl6YbVkO+3s3zg1wTQuGJamv12521A7dcmHMZGiLJ1zjlCXcDPCQdRFzfSsWeAHr3CVNWqKSLgMeddFghrZUvvtRC+TrneEEJ0jRw05kBORIq94J93ddtwYnwf3NSsIhVM7EpFPohfk8W1+gnbsQ9lXSBBA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(19627235002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?a82F2RWSp3ZDlJYzT4aYmqTBQuhoYsKe+dFr717WAv5IQDPLh4Zii41vabKQ?= =?us-ascii?Q?Wc9YEbgV/9eDcoBNTKyAHf8SWJ+ZmVcRR1mcpdW6KdVJDnE/JCvdE7n/hCF7?= =?us-ascii?Q?juUjbNrHiN/wFmvP9MsE2F6g72TZZfvK+Hm8gvdd4Tw7GBZn2o8Vm+eQqPvb?= =?us-ascii?Q?lWV3yUDqk7U9gXfvS5TIxP0LW5kCXmRB60UAAosS/9nKStSjdyWjxx5E+nUV?= =?us-ascii?Q?1G0bGCY7I5zDgMKsUGqPxl5RIaYFJsnlsiasLiso/b8C+h0l1Nvvn8BA+n/M?= =?us-ascii?Q?WxsLN2LFyaFitYOZCOmZ+ZQWV+KAJ5NyawnS+66w0IZDAq0S2KJ2yIU4nKwm?= =?us-ascii?Q?uMJMMgWR2TdlJ6bPHGE6GsUJZLfPWiSwFIp5LeMfRHGp7t9/sC6tfwc7hsxn?= =?us-ascii?Q?KhheNTxDWqw6su5zqE1KNPO5m/XaIGTB/Q9DbAo+e8fL9kwMQg2vZQSrmguL?= =?us-ascii?Q?Olws4pBUplE3rr3ObD9pNgTbS0vqddBJX3J4WD7jbVa7lDNpDyJgRU1YUUSO?= =?us-ascii?Q?1jZWoPNCNoob2qqpvGYTsbrircvSifi1I23c6AMm+CLH/4MFp0Cv3DiWlaZt?= =?us-ascii?Q?zKnrMJ6dUCSgyefG3GYs4EqahhoyN/ZaKZDNs/QThS5oXRR/yNZ7vXGSvPZu?= =?us-ascii?Q?5xVczY2+NfS91RnHAQ9zgwyt6maG9ZfgHPWywL3EFH6uDI7RGsKHIHbq7nae?= =?us-ascii?Q?TTIh1PwwJTYz6y8//vxkmvPLe11nP7Z5F886YZnThkBLrm/xW8rDeuf2Ukqs?= =?us-ascii?Q?nBxwluLUpvIEqvQEeDqp7f85QwuUkw0NJFfOLVD/dMQwewFIlbzrFAitryem?= =?us-ascii?Q?SBCKAws2ruy5bury4EnKthiy6uUVtP+PCU7cl662RawFiILjHkSeAn97Upjn?= =?us-ascii?Q?DKqhr3o30pZ57uLLIhj3HcT587HK5oTm3nqVrWc3Ff3XDWtQZ2EpV0wDaxe5?= =?us-ascii?Q?Lj+wfeDN2e35qiSrASZYKSWibechKFagyHhreASUZAnzjQ9eFdOjXNoI1BQM?= =?us-ascii?Q?Hn/3?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:50.4709 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: d2c5fa29-2bac-4a46-e3f4-08d8b49e4f86 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yiA5Kt/c+eX8eIBcgtZaAvFPVRuzP3xIZfEzJItEtJp62U00RcNcPWfwwmhwJ6PpKB03/TPCLcIhEvUMcaJ/lWO2Q/fzkZC9k2qnTKy4iss= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Don't use error propagation in qcow2_get_specific_info(). For this refactor qcow2_get_bitmap_info_list, its current interface is rather weird. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block/qcow2.h | 4 ++-- block/qcow2-bitmap.c | 28 ++++++++++++++-------------- block/qcow2.c | 10 +++------- 3 files changed, 19 insertions(+), 23 deletions(-) diff --git a/block/qcow2.h b/block/qcow2.h index 0678073b74..a6bf2881bb 100644 --- a/block/qcow2.h +++ b/block/qcow2.h @@ -979,8 +979,8 @@ int qcow2_check_bitmaps_refcounts(BlockDriverState *bs,= BdrvCheckResult *res, void **refcount_table, int64_t *refcount_table_size); bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, Error **errp); -Qcow2BitmapInfoList *qcow2_get_bitmap_info_list(BlockDriverState *bs, - Error **errp); +bool qcow2_get_bitmap_info_list(BlockDriverState *bs, + Qcow2BitmapInfoList **info_list, Error **e= rrp); int qcow2_reopen_bitmaps_rw(BlockDriverState *bs, Error **errp); int qcow2_truncate_bitmaps_check(BlockDriverState *bs, Error **errp); void qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs, diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c index d7a31a8ddc..55cd52ab96 100644 --- a/block/qcow2-bitmap.c +++ b/block/qcow2-bitmap.c @@ -1093,30 +1093,30 @@ static Qcow2BitmapInfoFlagsList *get_bitmap_info_fl= ags(uint32_t flags) /* * qcow2_get_bitmap_info_list() * Returns a list of QCOW2 bitmap details. - * In case of no bitmaps, the function returns NULL and - * the @errp parameter is not set. - * When bitmap information can not be obtained, the function returns - * NULL and the @errp parameter is set. + * On success return true with info_list set (note, that if there are no + * bitmaps, info_list is set to NULL). + * On failure return false with errp set. */ -Qcow2BitmapInfoList *qcow2_get_bitmap_info_list(BlockDriverState *bs, - Error **errp) +bool qcow2_get_bitmap_info_list(BlockDriverState *bs, + Qcow2BitmapInfoList **info_list, Error **e= rrp) { BDRVQcow2State *s =3D bs->opaque; Qcow2BitmapList *bm_list; Qcow2Bitmap *bm; - Qcow2BitmapInfoList *list =3D NULL; - Qcow2BitmapInfoList **plist =3D &list; =20 if (s->nb_bitmaps =3D=3D 0) { - return NULL; + *info_list =3D NULL; + return true; } =20 bm_list =3D bitmap_list_load(bs, s->bitmap_directory_offset, s->bitmap_directory_size, errp); - if (bm_list =3D=3D NULL) { - return NULL; + if (!bm_list) { + return false; } =20 + *info_list =3D NULL; + QSIMPLEQ_FOREACH(bm, bm_list, entry) { Qcow2BitmapInfo *info =3D g_new0(Qcow2BitmapInfo, 1); Qcow2BitmapInfoList *obj =3D g_new0(Qcow2BitmapInfoList, 1); @@ -1124,13 +1124,13 @@ Qcow2BitmapInfoList *qcow2_get_bitmap_info_list(Blo= ckDriverState *bs, info->name =3D g_strdup(bm->name); info->flags =3D get_bitmap_info_flags(bm->flags & ~BME_RESERVED_FL= AGS); obj->value =3D info; - *plist =3D obj; - plist =3D &obj->next; + *info_list =3D obj; + info_list =3D &obj->next; } =20 bitmap_list_free(bm_list); =20 - return list; + return true; } =20 int qcow2_reopen_bitmaps_rw(BlockDriverState *bs, Error **errp) diff --git a/block/qcow2.c b/block/qcow2.c index e8dd42d73b..1e83c6cebe 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -5063,12 +5063,10 @@ static ImageInfoSpecific *qcow2_get_specific_info(B= lockDriverState *bs, BDRVQcow2State *s =3D bs->opaque; ImageInfoSpecific *spec_info; QCryptoBlockInfo *encrypt_info =3D NULL; - Error *local_err =3D NULL; =20 if (s->crypto !=3D NULL) { - encrypt_info =3D qcrypto_block_get_info(s->crypto, &local_err); - if (local_err) { - error_propagate(errp, local_err); + encrypt_info =3D qcrypto_block_get_info(s->crypto, errp); + if (!encrypt_info) { return NULL; } } @@ -5085,9 +5083,7 @@ static ImageInfoSpecific *qcow2_get_specific_info(Blo= ckDriverState *bs, }; } else if (s->qcow_version =3D=3D 3) { Qcow2BitmapInfoList *bitmaps; - bitmaps =3D qcow2_get_bitmap_info_list(bs, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (!qcow2_get_bitmap_info_list(bs, &bitmaps, errp)) { qapi_free_ImageInfoSpecific(spec_info); qapi_free_QCryptoBlockInfo(encrypt_info); return NULL; --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197334; cv=pass; d=zohomail.com; s=zohoarc; b=Aocyi79QJ4/2B2T0dDSmr8I9nQpkX2w4Auzf9ycehA8Y+u07ZilPU/ENGVkEHJUao7iF7UE7gk0QHQTdSktQfik57sLGhEoZybLZpmi5/yTm7oljtWag3WW69amKn2XiqLziIll5GVcrQxWqMtmBfzILqMbmjViOmEmJnB3Uu+k= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197334; h=Content-Type: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=8zeKglbOSbkoq0KTpzCbKUOHNoM3e4XBjXK1pjimCmI=; b=S3yr6HWpQZqaluXw1TOmQVZMtH5SAUwobzU3X7L1L0Pl4zfOY+t+Csnk0rUATRDtP+u4NqOy2KvIR+cRiZGjy65zzj36Ujt4FAmutxP/fqnExQf+ov3658IG8kjesgM/DXaGQstwSEgkvHT/D/lxX5gY58cbqKrTKGMg8io0s5U= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 161019733475837.44199725474198; Sat, 9 Jan 2021 05:02:14 -0800 (PST) Received: from localhost ([::1]:48096 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDsj-0000Gv-Dw for importer@patchew.org; Sat, 09 Jan 2021 08:02:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55414) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpf-0006Uf-1F; Sat, 09 Jan 2021 07:59:03 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpd-0003dJ-6F; Sat, 09 Jan 2021 07:59:02 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:51 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:51 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:50 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TQIKLMOAF7X7xhz1rWU0Rv/547OmjijI0MiRImqaVWaLuMgXqLGPzW1TJ+t5uuqKyVykvlk8hdKxNXdEvcCbHthfQUxzyGcDzdYfnZsQ2sUfagLJx6tqUUf57fA73A/cIiQXhlMnY+xPzlN6i9IpuCcbXBWDtapCS5qU4XB4y8f6YABZXFSYX3qivNQFj+FjnB8gw+grK6v10v8uixFAPlSgjEUMntvr70c3plsXQF21Jt+ZyP1r3Gvh0aFff1OFTfZWkCE7kCIdFdnYc4ezZXpQJ71aUAa6rXNwr58zWilGkSWJoENtHw60JaMcJPXcxN2YwQO1qXrvD/z6E4eCwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8zeKglbOSbkoq0KTpzCbKUOHNoM3e4XBjXK1pjimCmI=; b=mvxKlF/unsz5NIYkB02EUp3xhviBZNaJkQlkeS/MJeIMAYxxwO1NgmmT2k+E8Qikzp/6Q9hf9e9Kpez9t+rv+Nyl7zqneS2KeE6KxdVKj73x4EhI/i+ifhvwmQJN2EjCf0/mJz0qjqZWcjIt1yvzUICeeB20fa9si4ixIkM2P3TvrRMIsgU1ERfMbcU1QeAa1+LYnfa3VmiYlk7RdsukGaKHPJiqO6+ZdByNUh5jin8IP2q4QpdzRHWy64Yi+MydzlYexgn2GxqWS67RnN/r9zbzzPUUH/zJSouk0w6gzWJVozSDWfyI6SODD7G42EkgeSYTgCkATVK5fVyYiH/WMw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8zeKglbOSbkoq0KTpzCbKUOHNoM3e4XBjXK1pjimCmI=; b=CHXDa6f8+ySf94XC4w5dmpj55x9yAM4XUfY22Io9t7hleJJabLuOHe+FXXzfe6+VK826z+9MorepN6zUeF+J3fLQPY0raqv6c/JT/bRlmE9kA+F0R/U2kQ2C6OJLq5UBliBREECOMn8Y+Vy/WtnzraXOc829V1JCSeE0MLt69s4= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 09/14] block/qcow2-bitmap: improve qcow2_load_dirty_bitmaps() interface Date: Sat, 9 Jan 2021 15:58:06 +0300 Message-Id: <20210109125811.209870-10-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b85fb0eb-4353-4b05-7310-08d8b49e5041 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1051; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: i3jAWHe87/Ngy7b5kkghG4i2olRT067NIYLAgS1trUFXhysa8tJKZKQSTCcVENSdV34XdYyvK+P2zCu3n4/ZLeZ4azv21lFQlFlg4r8P9YLfmTr4SyLTA5TUHEtA+RIP56nfnzaWbSNTf6irfJs8gsQ99Tn9bhSCdZ8GIOLfX34Ve1Xcgbl7O2s6UwAyVBksZWfAjHA6MvM6x34lY7qrpXCbAFKEvpu1a1b0IaI++a3veHlMkBu+cn9K1YDdW9xUPdn/FYcxNAO01f+YdR00F4EeapvCwTS6coRHBMy34gx8A9wbOkT51odWYGF2wl3hGCz8ImaWMsW/78LbXOU7amfUKNhAo2sStirJK4HOG1nV//SXwisQn8ofHntZgRzE5k8KPBSXTwTRUH+HdFRlUJrCEJWEDIzo9GVJ9zsDzQLYzd+5Ua6FX9ud5hRUTTEM X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(19627235002)(36756003)(6512007)(6486002)(86362001)(14143004); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?b6WUEoDY51H0QgR21B4dM3jlJqpORwR/2PhH8nAe+7qJXrlMPxNL7cHmau+w?= =?us-ascii?Q?agic5UgkDm1TNRbGkWkzp2BQb1hadtcX+84WjgBza8hPlqMO0B6VLiBNoS9A?= =?us-ascii?Q?3T1efjgGlRuXx7H291Te9dJWY87fCt+QJuNsBmI2RinjDgkpX4mXAZ890vLk?= =?us-ascii?Q?H3ZmtRj9xAacinxXtW9vAkMjSOET5hWGNfTu5GS/emr172v9IfLT/x4zmmCA?= =?us-ascii?Q?KhgWQqUK1j7ODN4nV8w86uxY8D797WNcF4tgjfu2WPIYulfuud3DNuhPQRR+?= =?us-ascii?Q?Ft1BDBJwkFJSOmvKHXbPo6G7reXPyYmfyY6omHyNMSesQgK5UygHLSYw/CrI?= =?us-ascii?Q?zE2a3IQA15KyRylV9pvCPCcPVZ4l1sy44Sdk3HQNUwd9CguRxvOykNHvZOs0?= =?us-ascii?Q?jCbD7rgcg7K7v9NHPD0zzpxqvLlFUd9s3L5vZ6ayhxqzCs10uxbkkQQQgEy9?= =?us-ascii?Q?qgBViZQSr1Y8Vy1N9zUcQkzv9OH5vhKTKH+7/MMleBqcds3hzr9fYzO2pofT?= =?us-ascii?Q?gQ7tgrqmU+0Xy5Qj+h4UE+NXzGAVno/3eSDqPEFFXwnhIDxQ1zJ7o+ci3yHa?= =?us-ascii?Q?P5fgTI/SV7YT+ae5xFJOsJaRzY3Xavo9B7n48rvbOICdEBK+8pggmgRgRE+O?= =?us-ascii?Q?pAqyV/bIzDIw1SKOGpPN+O/UFXXQtewGAcR1j7LvKAHur2dV/TbFiW8Bf450?= =?us-ascii?Q?PKKTzChqN0CxcI2eSaCuOqrsQAZxjNCbCRjhvMaZSgIUeizgKbIoE7RMi4DI?= =?us-ascii?Q?AhRy35JwtTD6+RXDVDrlD+eEeds5GMyejHJpucMyMTN3F/mHF58VpLNBKSo5?= =?us-ascii?Q?N/LKQl5/HPt6sYG+NBnIuCrAd5YJIGaz77uVs3rlQ6TN1qNOzMMOS5cg3lCw?= =?us-ascii?Q?NmY7lTsqVKl1Haf3cwm3jIgZ4PkaIKrsJcKXS+BQl7+2WJUHaeMsSeYNn8ZZ?= =?us-ascii?Q?IxNjkijTg95gXKNoBw8vnms4ls40RmBaUx/COnwZXgtP12RYygzghlL5xAST?= =?us-ascii?Q?qFQL?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:51.6298 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: b85fb0eb-4353-4b05-7310-08d8b49e5041 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UVBYcR6Ckq8dHwjKcYq9sPpmes5vBvjY8Lcu4rzZeihhAKRtDV3MliCtEltACghyqcQBHZAw1u3xTezwbYHnSydTDXQnj8qqyCbjYSybENw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" It's recommended for bool functions with errp to return true on success and false on failure. Non-standard interfaces don't help to understand the code. The change is also needed to reduce error propagation. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia Reviewed-by: Greg Kurz --- block/qcow2.h | 3 ++- block/qcow2-bitmap.c | 26 +++++++++++++++----------- block/qcow2.c | 6 ++---- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/block/qcow2.h b/block/qcow2.h index a6bf2881bb..d19c883206 100644 --- a/block/qcow2.h +++ b/block/qcow2.h @@ -978,7 +978,8 @@ void qcow2_cache_discard(Qcow2Cache *c, void *table); int qcow2_check_bitmaps_refcounts(BlockDriverState *bs, BdrvCheckResult *r= es, void **refcount_table, int64_t *refcount_table_size); -bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, Error **errp); +bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, bool *header_updated, + Error **errp); bool qcow2_get_bitmap_info_list(BlockDriverState *bs, Qcow2BitmapInfoList **info_list, Error **e= rrp); int qcow2_reopen_bitmaps_rw(BlockDriverState *bs, Error **errp); diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c index 55cd52ab96..ca01f08bac 100644 --- a/block/qcow2-bitmap.c +++ b/block/qcow2-bitmap.c @@ -962,25 +962,27 @@ static void set_readonly_helper(gpointer bitmap, gpoi= nter value) bdrv_dirty_bitmap_set_readonly(bitmap, (bool)value); } =20 -/* qcow2_load_dirty_bitmaps() - * Return value is a hint for caller: true means that the Qcow2 header was - * updated. (false doesn't mean that the header should be updated by the - * caller, it just means that updating was not needed or the image cannot = be - * written to). - * On failure the function returns false. +/* + * Return true on success, false on failure. + * If header_updated is not NULL then it is set appropriately regardless of + * the return value. */ -bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, Error **errp) +bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, bool *header_updated, + Error **errp) { BDRVQcow2State *s =3D bs->opaque; Qcow2BitmapList *bm_list; Qcow2Bitmap *bm; GSList *created_dirty_bitmaps =3D NULL; - bool header_updated =3D false; bool needs_update =3D false; =20 + if (header_updated) { + *header_updated =3D false; + } + if (s->nb_bitmaps =3D=3D 0) { /* No bitmaps - nothing to do */ - return false; + return true; } =20 bm_list =3D bitmap_list_load(bs, s->bitmap_directory_offset, @@ -1036,7 +1038,9 @@ bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, E= rror **errp) error_setg_errno(errp, -ret, "Can't update bitmap directory"); goto fail; } - header_updated =3D true; + if (header_updated) { + *header_updated =3D true; + } } =20 if (!can_write(bs)) { @@ -1047,7 +1051,7 @@ bool qcow2_load_dirty_bitmaps(BlockDriverState *bs, E= rror **errp) g_slist_free(created_dirty_bitmaps); bitmap_list_free(bm_list); =20 - return header_updated; + return true; =20 fail: g_slist_foreach(created_dirty_bitmaps, release_dirty_bitmap_helper, bs= ); diff --git a/block/qcow2.c b/block/qcow2.c index 1e83c6cebe..20d67bd9c7 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1296,7 +1296,6 @@ static int coroutine_fn qcow2_do_open(BlockDriverStat= e *bs, QDict *options, unsigned int len, i; int ret =3D 0; QCowHeader header; - Error *local_err =3D NULL; uint64_t ext_end; uint64_t l1_vm_state_index; bool update_header =3D false; @@ -1784,9 +1783,8 @@ static int coroutine_fn qcow2_do_open(BlockDriverStat= e *bs, QDict *options, =20 if (!(bdrv_get_flags(bs) & BDRV_O_INACTIVE)) { /* It's case 1, 2 or 3.2. Or 3.1 which is BUG in management layer.= */ - bool header_updated =3D qcow2_load_dirty_bitmaps(bs, &local_err); - if (local_err !=3D NULL) { - error_propagate(errp, local_err); + bool header_updated; + if (!qcow2_load_dirty_bitmaps(bs, &header_updated, errp)) { ret =3D -EINVAL; goto fail; } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610198044; cv=pass; d=zohomail.com; s=zohoarc; b=grT2CMmjnskUD7w7wSFO9oM5h6KlETUxGcnelVl+fTnSkf/zDMaRSRhrUffm6r2aHUJbHqINlNub7fWA8DB/2tJCgkDmJWOks2imaZLPyDvnREYJO9umhMt9G0QwWairQUdcMvsoxgPIHTkb6Yqjmt3cmwV2D5gXJQuO65A872c= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610198044; h=Content-Type: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=ruW3MvB1R2DDEHV/DdJHcY9oGj/RsSlhNyxfOvw8t9s=; b=bPif+uGlnIQRR1dSppJ1gnbYJKbr2BisioHpegEzwRSpktp7gb6K8+ydyGHvMuOHLhSDgdYHPJJ/gVDDZnSYhoMiQsw5EOjEtl+eyIpxJ/3cwXbSYjpYVqa9zgRFpqYlmL8SIF90LRUn5r0T0Taa2x4FSHSvhauqbxXdAcnEykQ= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610198044788491.19164946653655; Sat, 9 Jan 2021 05:14:04 -0800 (PST) Received: from localhost ([::1]:47096 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyE4A-0004JT-Ve for importer@patchew.org; Sat, 09 Jan 2021 08:14:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55426) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpf-0006Wx-TN; Sat, 09 Jan 2021 07:59:03 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpe-0003fN-48; Sat, 09 Jan 2021 07:59:03 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:52 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:52 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j7BUpe9nJdpJ0uDN1WDjh8SE+5XIFSF0Gdg40ArnTPWAN4vosI8+oAxv90hJLChHUHeiyZpmn8fmotLsS+ZOZJ+lzgmoFHJA+NHGwKpCz9Xhd1FUu+mHgPsNc66UK2RNXsu3DGm9nOqlZ807AVZM81rafmN+aLNvRwgKOvXeNQhbrKHGLcIKxUEFVb4uNEakiopeNbffKzVFnY/IVpLRpghOBGtWS148JA+KrPcf+pBeU7R+SRVEEGuU2RZJK10Vftd9HiPppKq0MCEWnYAsMuPwDXmaeuweJbVRi6dTIx5/Fb8Qs79+F7zApuKL4xBDoMA0xDLZyNkea9pwW+nI5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ruW3MvB1R2DDEHV/DdJHcY9oGj/RsSlhNyxfOvw8t9s=; b=RGt3HwmoDqoB/XUoCIyJRUhj3KsQttDorspI3VBZflCfRvU+Xl7ohPMFbjXzTPtF/kHi5l+8PkCyOH2ZQmK5FP0Q8MIIwmmTzU0DUgSdz4XzXdp0DfE00+94F5eWryCkvQz8JXfY0JHip3lXeCcH2kTD5iOhIm1Fv852IZEdoxfiMHiWDljfYCa3VSXLMTGx+IneguslMxQI6kgEJvUqUKWzp+gTcsoP6QOCxwqwZf9oH0Hsp3QkRJOYiJCACBWqtS+Nuu3doLXkAIH45RW0iaSe7V8Er8h2Vb9zm+huKUvxZ5OERzYrYEyVC7WpGaju/X7yIbu727Mul9tZM6ixcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ruW3MvB1R2DDEHV/DdJHcY9oGj/RsSlhNyxfOvw8t9s=; b=dboxVRGnx8I1eI8TEMlhsSYwNwvLyJHZN0xhxSrW9YbeBHPdZaGVlrHaV14LxNeTHbjBM02fh0Tx+4QgDfbzd5x93J/6LxopzDeKQ60Zj5+lgj2KdNAkYrqambas/Oao8lrou6SDcQoiAX9+Ia1QljApp8V4pNpnllclB1MCcPE= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 10/14] block/qcow2-bitmap: return status from qcow2_store_persistent_dirty_bitmaps Date: Sat, 9 Jan 2021 15:58:07 +0300 Message-Id: <20210109125811.209870-11-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7801ee92-7c3f-4366-4fee-08d8b49e50fc X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:246; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Qfq/dYl1EqRkFj0RnX0outnHsQ83rYOVhC+bsYGgeG5bpS3uZ4s7huL19ZIopxTUt59im+slo+hAddRLacQDUJe2JwVSMaZ3P06RMtTK/FizinKZHUq/yEKUV3SG0stHcFVlsbuJaUvyLxNT2IQAaLutRev57r9nCjm5xTM95n6txwQVnSWvumSUgURzOLiGbF3trsrvFLe88obdh7auRkX1VVzd2ugyrrRI5JsmTAx/R0KxVHIpp1gb0RjDLK6GZHGbav8q4qeqemczIhhhq7gQLg4j9zLogT43gYTxwI2niZ/HUbZoHVYrsJFYO5eeGqwiqRALAvrFfGA0I71r7vC2l/gDLmrlAZVsN0WXjurNSe/fuaZiBZznM73tYyAxeO/MB44+Rapj+4GRPowyED1IrGawh1tgbqiPgal98uENuGzLfrVyBPV9ou3usNzf X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(19627235002)(36756003)(6512007)(6486002)(86362001)(14143004); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?MYxhgXuqd8aymdD1yp2LyGG8KYn5Z9YNJFUtzDUcrMxAURAXe/9OJy+UIdew?= =?us-ascii?Q?Shv/JKGiBimdPlEnJnj+v0BRx79FlO1oQa5r69UTH5D5cG3vQmkqhDZSoFhy?= =?us-ascii?Q?hIeOHe6sNFQtx8BKezoK3rtMBevAOLS5MQMh9gkuG/8Wki+auAao5FhRSBra?= =?us-ascii?Q?CWMGvTb2UT3YQDQJPnU8D5QLvNQ3UgsBQpBuuUMOio1xLfrlf/auhH5BD+Lw?= =?us-ascii?Q?crDf+59sTLuBlaQsN8jeH3YXX2y2LZNDkNQQVUupv2MJxH6dPLOrNk5QAvaN?= =?us-ascii?Q?Z3/AoznV68hIZWXf3d7kPTBbowdkCIUi9Jqe9mQxlWB/b2WyDJSEFoAEBZ8m?= =?us-ascii?Q?OugjDyzh6yKUJ6Jcd1wubLbHx2sCfb8z3F3bSAGWIDh6bcidTL4pS8VFbGaF?= =?us-ascii?Q?qtP9jdjS86OsL0acdSC+GfCWQ7wzwruYtmbqt6RHDSqKejCeEnlYv5QIHDhj?= =?us-ascii?Q?OTzG2ysfqgbUgXS73kQToHfiz/qBZKf0eQOSVSIqE+bnbmutQXeLhOLJj4Xm?= =?us-ascii?Q?QywOoJJtFzith/IBp/J+O9QnGrOr0jQLfwlT/K8SaHEPIZ+OwkukNoJuDbzg?= =?us-ascii?Q?fo3E4IaQMQBh9C2Fr81jSyjgh7gonR3Fqvo4JjXiVdcZsF3aZ2DtBOY8SlhQ?= =?us-ascii?Q?XM5pk742X+coVMgGjyAG8xvgXILDJwE+b7ncpvLdraa8oons3To4iSOVmm6S?= =?us-ascii?Q?ZfG88xQB3zLnxMcK2diSpJupVTsXn43nFTgV5kX9u5SyU+ICa92mkS5L9GvU?= =?us-ascii?Q?QHzQUu2pjmxxtfjHCDntCyTgOKTpNMxxMMNMILoa6txZbdh6w0JNqN/difz/?= =?us-ascii?Q?sSc/1RydWh+kXULYFE159bf5i7sYAF1qlF66XBIoZj9uwqtCrePJR2UEh84M?= =?us-ascii?Q?Uyh7DuGqCiH0QF24xTKpfYFx0yQbDGhAgwFz0KVuhE1S9SgGnralPZ5lcVME?= =?us-ascii?Q?ozoik7CCgSpOE4u410eFbh95fZJvgKTqn7i+E/Wzohxvjp5QH5qF3nr8ql7t?= =?us-ascii?Q?zbjV?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:52.8892 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 7801ee92-7c3f-4366-4fee-08d8b49e50fc X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: zwI2+48nSmyB3FMcwb+ID2QKC8IGlLmg6Rk+tyovh1+ljaTsDfFZh9kMAhQdE40XHokZlNt7FHSuUMELZpY/7QWCM0GYCcGManP4qm5IrpM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" It's better to return status together with setting errp. It makes possible to avoid error propagation. While being here, put ERRP_GUARD() to fix error_prepend(errp, ...) usage inside qcow2_store_persistent_dirty_bitmaps() (see the comment above ERRP_GUARD() definition in include/qapi/error.h) Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block/qcow2.h | 2 +- block/qcow2-bitmap.c | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/block/qcow2.h b/block/qcow2.h index d19c883206..0fe5f74ed3 100644 --- a/block/qcow2.h +++ b/block/qcow2.h @@ -984,7 +984,7 @@ bool qcow2_get_bitmap_info_list(BlockDriverState *bs, Qcow2BitmapInfoList **info_list, Error **e= rrp); int qcow2_reopen_bitmaps_rw(BlockDriverState *bs, Error **errp); int qcow2_truncate_bitmaps_check(BlockDriverState *bs, Error **errp); -void qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs, +bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs, bool release_stored, Error **err= p); int qcow2_reopen_bitmaps_ro(BlockDriverState *bs, Error **errp); bool qcow2_co_can_store_new_dirty_bitmap(BlockDriverState *bs, diff --git a/block/qcow2-bitmap.c b/block/qcow2-bitmap.c index ca01f08bac..9eccaab7f8 100644 --- a/block/qcow2-bitmap.c +++ b/block/qcow2-bitmap.c @@ -1536,9 +1536,10 @@ out: * readonly to begin with, and whether we opened directly or reopened to t= hat * state shouldn't matter for the state we get afterward. */ -void qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs, +bool qcow2_store_persistent_dirty_bitmaps(BlockDriverState *bs, bool release_stored, Error **err= p) { + ERRP_GUARD(); BdrvDirtyBitmap *bitmap; BDRVQcow2State *s =3D bs->opaque; uint32_t new_nb_bitmaps =3D s->nb_bitmaps; @@ -1558,7 +1559,7 @@ void qcow2_store_persistent_dirty_bitmaps(BlockDriver= State *bs, bm_list =3D bitmap_list_load(bs, s->bitmap_directory_offset, s->bitmap_directory_size, errp); if (bm_list =3D=3D NULL) { - return; + return false; } } =20 @@ -1673,7 +1674,7 @@ success: } =20 bitmap_list_free(bm_list); - return; + return true; =20 fail: QSIMPLEQ_FOREACH(bm, bm_list, entry) { @@ -1691,16 +1692,14 @@ fail: } =20 bitmap_list_free(bm_list); + return false; } =20 int qcow2_reopen_bitmaps_ro(BlockDriverState *bs, Error **errp) { BdrvDirtyBitmap *bitmap; - Error *local_err =3D NULL; =20 - qcow2_store_persistent_dirty_bitmaps(bs, false, &local_err); - if (local_err !=3D NULL) { - error_propagate(errp, local_err); + if (!qcow2_store_persistent_dirty_bitmaps(bs, false, errp)) { return -EINVAL; } =20 --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197708; cv=pass; d=zohomail.com; s=zohoarc; b=Kqu1q+4KQtsVhyW7H7DOA2ustoit6937ccQqaHtpWjcVbIAWQOOs4cysIluBPNL02e9oH/mqhMbJNhETLTOXGR/eQ3fhDPLx90ODj2aQmFaVkvwB7vzWTX+uj0jwh8/jz7x28JmT4r0RdKV1K5DXXriLH+2ADiEHhTLxj8zEVdg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197708; h=Content-Type: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=83GlCXkaxacMXgNIB425cxfYzkCiaetQsIeCxDT5l3w=; b=bbyTCIzE6A5Eb4hHsH7S8mhroEGYR4PQc8P1LSe+vsv1GXPHM/NcBaJKYQR9za7mE8Wc7StFDuAzgqfPe6/DleFuTlkQYNemUON0n1UvcNH9k/rYplhFAPkBvlezYLy1EY33oVMoygEObC+nmTtZAGX1Fdp2xUwOYmji1roJN/Y= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197708338560.4872643102183; Sat, 9 Jan 2021 05:08:28 -0800 (PST) Received: from localhost ([::1]:37362 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDyk-0008VJ-U6 for importer@patchew.org; Sat, 09 Jan 2021 08:08:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55446) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDph-0006b6-HL; Sat, 09 Jan 2021 07:59:05 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpf-0003dJ-N0; Sat, 09 Jan 2021 07:59:05 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:54 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:54 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jFiOS7QY4wme4vQ74wU5EPmxaBzSbfUqVqyrbok7lUh3YnW2p17QKopBoULuiVuJK8L/3jzTstcWzsWgzTTv1qbDgnPAErbBl5o0LHqTpFGv73oJU09vfXeQ+NJgXI/DiFEzM6uJ1kEZOFdqNfxfv5rhQujPx0wPvoFCVcUQCryeq+uG7aPRD9nFKgBbN+lOhwpwZCTQDOBUqpxPCWD9RZkDySm14uUSMKEeOCDMUHMB4Z6WOfnJmRHGJl4kmHT2A1G+o6iUJL43n51wQVYTsbxI0bjVIX7t0gRrUvqeCPNZ19OXvD0T1hSpB2zZUKGEwzIoaQtXN7cYr085UXjgpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=83GlCXkaxacMXgNIB425cxfYzkCiaetQsIeCxDT5l3w=; b=dQjP1hoZEC1WmtPSrvN+KJ7HEmpHJj1PyvWOpZVxSS0cnrH5FYgjS6GclKkJMvfGttHSbwScgMye7ECcPVEGQPaoCuZaGrHKmgdyvIhR1EHEtpvMiq6VAOD2rJ56hYstgtUQJiDVf2Jwe8nBeXojxfH95349MlwjKoHRg2YKqKvpmcJdcJ0oQRpeKlRaEvWCDpCtwo+q3D/AqdixK6PMYmBfuGx3rI9zauuYMqh4N1k4TfPiNu2Wsf0Hu1KCZHuNGwCuhmZXc3d9BEQOkx1DEf4WC5yBteNdUZfBOGdrHzxwAJSlu2qNEoQX8wWzp76Io3+TEmSDhhhBKn/ePvMU8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=83GlCXkaxacMXgNIB425cxfYzkCiaetQsIeCxDT5l3w=; b=KuPZAqUvvzZWnY+daG+UbHeBWCv8Qzh6anle+FsPUd/VBUWH48n5LLbEgpBCW2IhRBcSun8eFGsJ/vcJ8TveMqbjNluuFsbYsLOmUJGNQ3BiT49asLPEDm6XVv7o1LfqZFdIMZP8oiNQibeMtHJ51u1VUEIRbU1MfdJFbxvct/Y= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 11/14] block/qcow2: read_cache_sizes: return status value Date: Sat, 9 Jan 2021 15:58:08 +0300 Message-Id: <20210109125811.209870-12-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 49af73c3-b3db-4548-fb99-08d8b49e51a7 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:3826; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZUDKCT6DgoHN73XYAE9vZrCs1Ms93IeQ5xOv9qA+O3Q/wETYolE0JQ0HY1We2piHacB7FbVa1spMBkeKYqG+f86W7edQ7Tp9h3jKNN+jllwQ/xLZCs4ChHChnkCA2z/6eIsdvAqeN9cvLgpI7MnSuUUc6r2HST/T2kPuJoiV7s8TNp+mz/gQbdn95yN+RTS+7EZOWP+x6n7wuhPoA7Im95BKK/0T3L6wowuCW1NZar7WHwxORjez+Zh593Cl5lTrRPHvK7zLyVkmAb+CDvGUzyFbCXzb5tDGOgloWmZm6UvFelKHyYf13U/e3NW611Ng9pAYZHRMVEd0uIWLK20FgR0EJPklbrmqIdAgCCDPnbVc2mSM27n+3kI3yeqzevmK/+Q6VMsxkqy0X0cx9tHkBA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?BvcWWE/Euy1zJ+rrA1skWsqpdsP1KplR+JthFER3NjHx8dKyU1JTCBAUFVsz?= =?us-ascii?Q?qMcmyP/GbGUloD4vaAD9QGCGLYG2QK2vZtf97YHGsts03+P6tUQuF8egl3by?= =?us-ascii?Q?Yn2hQTORDIq5fKTG6wp/YLNYElMPLDtHlMqVk1jgiTaSOhlRDr+dcvW/ECfN?= =?us-ascii?Q?aLAUyFmSQDnR/Ny3XW3H52YQ2dy8tHVy2xqAKzifvdj+O9LC+grNqYiT3tNP?= =?us-ascii?Q?kWssIYj3f1dOJzFazYdHCnsq4VEiVSFEJkLN008UNGCNlPH5f2CnQggMNDaq?= =?us-ascii?Q?WDT3l1XNAMDwtowwawNf9zgYlhX+K3CBZsaYS0NvajIEwpfBktn8TLOye3TI?= =?us-ascii?Q?X39In5buG3wD6qFNifCMAQiFCZZnKPD+O+fTaO007EtJJevLobUABB2Q6DvP?= =?us-ascii?Q?yHKCeFgSjL+oRP7TMkM4JKEFVUMSxFtca7+bn4aV8fmOg874IS7STWgwbysJ?= =?us-ascii?Q?FvQBwL39/pafrUMFRkuPSI/oAY/dlndaDiuoOnI6Qw5WBQGW1hPYb391FDvt?= =?us-ascii?Q?7mNPwQTg0fUbPkWE1nCyN6ywGsWpX6V+XwD+CpGVeSnfdjCt5yKUwNpD1rMy?= =?us-ascii?Q?r/ae0tjfbODbi76aRtMKvAazz9p4eJmjNUtflXpZeAv2ZB0jxJN6/rZhmdnU?= =?us-ascii?Q?Tu/SIQY9smWhVXTyq3u6TIayIsh50B7PTlOaAdf06HBn6uyaN+BxEXZ26Os9?= =?us-ascii?Q?hWyuKG5oJwPguLlu0lWWcl3R4At8Ow2LhCNfVAcc6TXJb1gyKIYaf0Gh6cs+?= =?us-ascii?Q?8dTz79btggivifxp42OzWPBX6USL4Sr3HgbPmz3HhQw8nAzh0ymNH6Xwoc8w?= =?us-ascii?Q?r4JF/vSX6hTIo4FIKvJCv3H8tMP4kM6jmEHs8asUkZ1cIOQHcoYX/cPQ3OaS?= =?us-ascii?Q?2ln6vzWWAqJf/OWiGzSzZbvsAQ6y6NWpF64SFgFWJ2kcfPG44Me0XKMFl+9F?= =?us-ascii?Q?S7+px2aMEqIN9LDh7XcK41QFhfTtfRfQZTrWVYgqx1Vf11bkOEMAOhV+pPFW?= =?us-ascii?Q?bgjs?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:54.0432 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 49af73c3-b3db-4548-fb99-08d8b49e51a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: B34v6DvwNAgafPY0DivFW6+WK3WO1Zti93mQeKvXnGQyl4WF1DjpUswAJGgdFP/t98JXoOkNsPBMClN5kE419uvy6EDbHGrjIVzPXgv2Sn8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" It's better to return status together with setting errp. It allows to reduce error propagation. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Greg Kurz Reviewed-by: Alberto Garcia --- block/qcow2.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/block/qcow2.c b/block/qcow2.c index 20d67bd9c7..2e0e050997 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -868,7 +868,7 @@ static void qcow2_attach_aio_context(BlockDriverState *= bs, cache_clean_timer_init(bs, new_context); } =20 -static void read_cache_sizes(BlockDriverState *bs, QemuOpts *opts, +static bool read_cache_sizes(BlockDriverState *bs, QemuOpts *opts, uint64_t *l2_cache_size, uint64_t *l2_cache_entry_size, uint64_t *refcount_cache_size, Error **errp) @@ -906,16 +906,16 @@ static void read_cache_sizes(BlockDriverState *bs, Qe= muOpts *opts, error_setg(errp, QCOW2_OPT_CACHE_SIZE ", " QCOW2_OPT_L2_CACHE_= SIZE " and " QCOW2_OPT_REFCOUNT_CACHE_SIZE " may not be = set " "at the same time"); - return; + return false; } else if (l2_cache_size_set && (l2_cache_max_setting > combined_cache_size)) { error_setg(errp, QCOW2_OPT_L2_CACHE_SIZE " may not exceed " QCOW2_OPT_CACHE_SIZE); - return; + return false; } else if (*refcount_cache_size > combined_cache_size) { error_setg(errp, QCOW2_OPT_REFCOUNT_CACHE_SIZE " may not excee= d " QCOW2_OPT_CACHE_SIZE); - return; + return false; } =20 if (l2_cache_size_set) { @@ -954,8 +954,10 @@ static void read_cache_sizes(BlockDriverState *bs, Qem= uOpts *opts, error_setg(errp, "L2 cache entry size must be a power of two " "between %d and the cluster size (%d)", 1 << MIN_CLUSTER_BITS, s->cluster_size); - return; + return false; } + + return true; } =20 typedef struct Qcow2ReopenState { @@ -982,7 +984,6 @@ static int qcow2_update_options_prepare(BlockDriverStat= e *bs, int i; const char *encryptfmt; QDict *encryptopts =3D NULL; - Error *local_err =3D NULL; int ret; =20 qdict_extract_subqdict(options, &encryptopts, "encrypt."); @@ -995,10 +996,8 @@ static int qcow2_update_options_prepare(BlockDriverSta= te *bs, } =20 /* get L2 table/refcount block cache size from command line options */ - read_cache_sizes(bs, opts, &l2_cache_size, &l2_cache_entry_size, - &refcount_cache_size, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (!read_cache_sizes(bs, opts, &l2_cache_size, &l2_cache_entry_size, + &refcount_cache_size, errp)) { ret =3D -EINVAL; goto fail; } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197821; cv=pass; d=zohomail.com; s=zohoarc; b=ibYhvQdKJUIO2Vv7VD3DAPlRnthm9+PLt/eBBvMy+bky4svI0YjJSyXlMrGcwjk2kcfI4bDqVgtEq7FATja2AQ8LdzY08jN+whXmUjiJ6wmJdJ4O1RIlUvprYwppLM73RbL7yhIJqTr+lVQM4CiwyfvN/9OosdABORm7f8CSdj8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197821; h=Content-Type: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=+FU1664aVX+pnGTs5I3ebsQYqWxMt5W4q4y1UON+dME=; b=Npy3Bf9L89C432a4X10AuNX/6fn6cH83t9sRhA/LSfyBHSir9Yldf/795KK0Wrw4uT/BYnLjoAdOyZlkWAouCmyq1pX00XNeiyjlo1WpTvgCLOPkmHf7JWZdwAP4vOLz2uphWzhmKQCwYOu9E0EjBQwKLiy+z8Aeqf5BOjQsdMI= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197821291396.9419537189399; Sat, 9 Jan 2021 05:10:21 -0800 (PST) Received: from localhost ([::1]:42612 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyE0a-0002EW-1E for importer@patchew.org; Sat, 09 Jan 2021 08:10:20 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55456) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpi-0006dn-EA; Sat, 09 Jan 2021 07:59:06 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpg-0003fN-Lg; Sat, 09 Jan 2021 07:59:06 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:55 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:55 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JJ3xoJDT0r7wgGZ/o7hLBY8+yyMOVHZ6sFQdn3vvqftTJQls+l6eLlfqmiZKrsOzBhb10sHqrgO2Jh/C7bmWQA1oaGcIBPkqmcNsnPdpad4gJAGIJAC0h3NbuGUiSbRNVgpQQ203pLKLdACupKpagesbeIJcj8k231+7tqRDwnTPiSqFqte8npyujNVAbCTfgIfgkjyqdn/nJWxR92P1XWwMU7mwCOpijIQuLda+4qyGAVao3VDYlg9UzVSS8YrrjLZTcm4golBU/dcC1d86LBersviCMwpYC2Y+x+Qldx6oBlJFgJYb4+BJoB6w+3yu7/eImUkKHkLRByWVmkXqKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+FU1664aVX+pnGTs5I3ebsQYqWxMt5W4q4y1UON+dME=; b=d5IrgpDvP13smLYPoLtxlFwe69V132IKER+H4sPdbzu1UhINaPvIqnpkTIbN/wjM8sn4uKSrhA/wXLLg84TVlaMaLXvvs4O2fILmtay+hS7Lyc0LCqY5IJJk2rCKnYoUelj+94UU0D7+fHcFfZbQ+GNmHd9FWvt3I+VHBmxbZAbUYGPc7pL/hBieLURJFAUxI9g5xXgeC55lUS4WO7eK+cg84X7kYKyUx/FGwVen5c9gSvU/yE5+XjgcsG9E7cvF/cqv5g724XNtcmPR5udYCgqDZCm0jUGLeu/nLu9S2WF/F/Lz1N1TttDtmLqvbzZysUrnhbnn+/QxyeIbZq2fvQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+FU1664aVX+pnGTs5I3ebsQYqWxMt5W4q4y1UON+dME=; b=WDwn28sv/Pcg9C/cumkMYAUVo1D3sW7mGOPSKtvo7uP/hTg0H1YXgA5zTsXbB2+2wXxzPuFbYBMStXVZGQcYTIrCxiy9EZBzR9yOJ+eWBB2lVf838NGOC9ChxhTDbsKGUYRG7kem0kJOFRRmJzFZC07iVGpi5fVf50LCVSS8X28= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 12/14] block/qcow2: simplify qcow2_co_invalidate_cache() Date: Sat, 9 Jan 2021 15:58:09 +0300 Message-Id: <20210109125811.209870-13-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 43bd7bc1-abfa-4652-397b-08d8b49e525d X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:862; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TrTVJq/zwhKeQIK3bIzmzKNRYxIR94LweFzpbMUGmZsQcZqnMBauKmNSIiyJeEU8kpUSn9y9Qcw42tBsTAm5PznJ3ZBOKuXS2dkj++ZWo5J1UrjZ8CEDPzBypiLgo3m1XbzBRCHe0y/wZwThEgNagYE94Vh+6m/TbgM+DokvqCl+KcGqZksY1/siygC3DHCMp7RMWfem3YLJ0VoWJvyuLXSl3Wb/BAL0WbnwdmHJVTbFkQTfpLTkW+mlZ+l/gH1n1ZBlyNI90ueUvRsmnm2aptihrWBL8nnNlP+/3mWnP0s5afgVcA19IQqss5EPFVBXf5XTc9PCkp51Thcz8AujaYy/YRGpC/zJhWsXGcfaOD2L+VHbcd7I4XAqQjpVGv36gbwoZDU77Gv23JhE/UPnVw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?cR+mpwC+Mb1d8rgzC0RlrUgBkGuKF6hwkgpZXWrTWtmM9OFmYanc9YI/NFde?= =?us-ascii?Q?D0xqTFHWdBosK/iUD4dlvYEBTyBbd7qwAsiww0at2aOKDc7hfpWg9mLeDlRv?= =?us-ascii?Q?/8ZR1/4jDjyztvzBN3hz4BOzDF3PPrtAgjkRmV+6hs0HfqjlRBTxS+3eJ4iE?= =?us-ascii?Q?1R0mqsYLvS4J6TD115LNAE/BmvgkD4/EWBQNd9vPRZPZ/Sm1pTGeJRupjh1Z?= =?us-ascii?Q?JFZB4bUU1f7tFMr7wexMms4BEM2QStBZG3dZVicH4KiuSPZouPxZT3xn8pcl?= =?us-ascii?Q?KOJlo5yNPbcz0bI6eoIl15Z4DsL5KM5/jmxXRpjfJ86nQJBoZBpkU1iWzS81?= =?us-ascii?Q?lad8eO5A1b++2IL7TVrSosUm9mqurL23oXue4KHKPN1v81wFbTAdT42J2lJ1?= =?us-ascii?Q?UM9XlApany4JX1F+OuUCK1Z6h4YhCh9sr9QBvzn52QIwmjrDG+6kqyk3PST8?= =?us-ascii?Q?aJqMEqHoLtCLd0GhRnJPpw6FIk1D7ECGDl3cYB9TAlvFS6cRCQprWrOMGNAv?= =?us-ascii?Q?+NNtvrpTmKfWuLYf5mVwuDsz0zgR3UOACEx6P+yNzG6RDyzoNjGQrC+mIeOi?= =?us-ascii?Q?5VVWy7PHz6d/IHcckguaE6tU1JQ9CILhF9Keo/hrpxvgEiOWwgQfR+eBs1k5?= =?us-ascii?Q?wsmbKzRUJ7aoXhxVLv1cXP6us0lJUVOxuJC834Co6grGPI0UpZRT+PAuZi4n?= =?us-ascii?Q?G2l8n6h7gIHbgXZef14YGWbRSYUMOrMP7FHSheLIACFSfzViIH2P0zPlV7z4?= =?us-ascii?Q?w/8EMx/Zbz+wQDIpETS3t413v33m9FKIPrA2iObgDHn/3KvkHuLshLYEGu6o?= =?us-ascii?Q?JTJpQkyiOM4++foq9jF4Jkn8NkWlW9rFUGAxK15Bf87zjAW7QhZszyq3IslF?= =?us-ascii?Q?pg+w/aMtWNOVns9+bNE+kYbe5kfzINWNt5xBIGIWmsLnEAXI+vM0PmTf9FIb?= =?us-ascii?Q?BEGeKVyR1KoEM+67w7Vz93sN8OcVv8rhEmvdaiPkt4D94/KWh83HhSGvkEdt?= =?us-ascii?Q?mHwf?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:55.1862 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 43bd7bc1-abfa-4652-397b-08d8b49e525d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Zz3CPB+49E31Yc1rXuxCljFDsLHk6ULi0K2q8zK8WuzXZSr4bJ3iamJOqDmixtZyT6h6dpIw3cqN8XgLxbGNl99xRrxaNBkUBdKyZld0Ffw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" qcow2_do_open correctly sets errp on each failure path. So, we can simplify code in qcow2_co_invalidate_cache() and drop explicit error propagation. Add ERRP_GUARD() as mandated by the documentation in include/qapi/error.h so that error_prepend() is actually called even if errp is &error_fatal. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia Reviewed-by: Greg Kurz --- block/qcow2.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/block/qcow2.c b/block/qcow2.c index 2e0e050997..436bcf0a97 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -2715,11 +2715,11 @@ static void qcow2_close(BlockDriverState *bs) static void coroutine_fn qcow2_co_invalidate_cache(BlockDriverState *bs, Error **errp) { + ERRP_GUARD(); BDRVQcow2State *s =3D bs->opaque; int flags =3D s->flags; QCryptoBlock *crypto =3D NULL; QDict *options; - Error *local_err =3D NULL; int ret; =20 /* @@ -2737,16 +2737,11 @@ static void coroutine_fn qcow2_co_invalidate_cache(= BlockDriverState *bs, =20 flags &=3D ~BDRV_O_INACTIVE; qemu_co_mutex_lock(&s->lock); - ret =3D qcow2_do_open(bs, options, flags, &local_err); + ret =3D qcow2_do_open(bs, options, flags, errp); qemu_co_mutex_unlock(&s->lock); qobject_unref(options); - if (local_err) { - error_propagate_prepend(errp, local_err, - "Could not reopen qcow2 layer: "); - bs->drv =3D NULL; - return; - } else if (ret < 0) { - error_setg_errno(errp, -ret, "Could not reopen qcow2 layer"); + if (ret < 0) { + error_prepend(errp, "Could not reopen qcow2 layer: "); bs->drv =3D NULL; return; } --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610197548; cv=pass; d=zohomail.com; s=zohoarc; b=bIvcpejTSvdJDf/UWqtZXpt/uBb/2xw6+Yv6vSDrCgvHveHoE5gVzsbyD/rxckqcVTCCk85tnW8RfUc/O0sMjKKQdGZIc7LZcbq9xPu1VmNLrBZjEnXRs4gVxKGqkdh7Gw4znxtxuN2Y6xKQ9wYBCyBaTRzX9gKa9achop4UC7U= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610197548; h=Content-Type: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=k+xzsmZcPlMdMXmrJb9brCQ9omaWf0j/VELf2b5FLE8=; b=QUuZ/ngw8kL/Q93IfQZ9ROxRSMejoNbJjl+mXCwClOgu0halHUjtIcMx3kYLno+iXIO0mKzFbPMWGt5jltydpMCfxWcWPpwpQEa3ip7JAEk0MUSX+HztDHtXHT/hsbTU12KHTpkc2ZdlCR6z34Kf3KS6nqsfa/QqeSZ0HOh9m2w= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610197548543108.41768362088806; Sat, 9 Jan 2021 05:05:48 -0800 (PST) Received: from localhost ([::1]:57058 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyDwB-0004c5-09 for importer@patchew.org; Sat, 09 Jan 2021 08:05:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55476) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpk-0006ib-56; Sat, 09 Jan 2021 07:59:08 -0500 Received: from mail-eopbgr60103.outbound.protection.outlook.com ([40.107.6.103]:49158 helo=EUR04-DB3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpi-0003dJ-33; Sat, 09 Jan 2021 07:59:07 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:56 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:56 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:55 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dopjuMw22/mr0wP9mZFaSxrBZz1nGyaynTHVsmp5ExfC226StPtp0xwM9eTYkjfcVN6TFIthoDt8F0DFYVdQurqPivB2F+EiJ8JgU2v7tP8wbuRy0jBvFjlGWczJPDd4SixMGPHYyyyQ8OXrin7g7TQgfO5lCe6es75CleJqrXIj4U6SdOapuENJbRoo8nNEe8FDgcnECvq4TJSbt1PtHLl9uJ0a/eMffT68XaNJHeVBPE3H0WbnyaD8RMpuYjjrVoIs0kTzuSQjRjeruCgpzIJg7RkVpj2KFqRREPfZDw81Mhgyw76UjLy/G4RG4FOnD9RZ2MHMEHaH4uJy0rnlIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k+xzsmZcPlMdMXmrJb9brCQ9omaWf0j/VELf2b5FLE8=; b=SS8CV0zKdp3s+u4HL5P8MOFcqlLnvhiE+MvF1XffGBaJOj4LTZnFOuICmXYqjvZYc/NcGIPFN/CH3cUElOeoZ2wNPas1pQvAr0A09Y2H5+mxFufCZ2aXEcBx9KEo4Gy0ZTX5e2h/gm93pHXn5Fu2l/nx+c43WBgNifocjllKFOhDL9aLkFShVs/QXimMasj0s/DSeoClOQ9JTHcvMhN/QrWmypjvkoLWN521cVFS+NhZqGkThHIP511Gl4hNgCbEyWdnnpIco+Vr87fuRI2dlUZ8Hh7SYHPD8xfErMyv86xJ/NVSGLeJZVUFogV/uEsYz2HCqwqchzKIoaqx0k/4sw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k+xzsmZcPlMdMXmrJb9brCQ9omaWf0j/VELf2b5FLE8=; b=RESzDbpc8hkj4HSFiJazUt2x/LqNF5Wa00RsJrutH1nUghDUfMFSL4xPvPgSLibB1A46roUJHSyXNRPIi59pg9PG1+ALgVrP9sKnSzKEfet4g26mPLu1QWcD1XyK0sRPSn/PR1LuYikzaqothFwgkIDT68xHNqplfY33ldofpEE= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 13/14] block/qed: bdrv_qed_do_open: deal with errp Date: Sat, 9 Jan 2021 15:58:10 +0300 Message-Id: <20210109125811.209870-14-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fbd23eb6-d9c3-403c-fecd-08d8b49e5300 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:826; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: GWf7xQ4rhC0PV6OQVV4rZ1NRerPuo5SXyHxWrFs2IiK0hp9kn8rvfqkKhOKqQfOO5+u92DHVfE9uwS1mWNuENwhTg/loAlfMseqmh4ITzQ91O2L2o6rY10YE4eqm3A3cpa9EeA/Vb+7fGXJjDLqBwCicFXn4g6EIHO/m5kpAIWYB3GPTlbLiMgkgybdAhGIFtyLANvMe0GFcDBMUv29Gu39ojy2mvhofIBG6JpEk2TLBEn314XQDOidX1/l7uq0YNdJvZAfQbaqTqKXb0bnnhzfbEW5Iju4V5MjHIoggv0kFAES4nhHpWhm2pDMO7Rcz3ehySYGxr7FYXUdCI2RMgcSj0bwDh6LeZXBTniPXxHuu+0NHRk1Md5WaLRulS8DrWh0yZ/gTU0TByPASVNMnlQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?cVH6wnI8HWSrZpY2RVfjR4gFjBrXyZ9ACRw8hAHMgsuhF88RJ2da68+bbUSh?= =?us-ascii?Q?WruE0dCEWX+cgXVVflUMnvQey4vNbetlolROzI5NmCNucpYwTb9A13ycSbJU?= =?us-ascii?Q?u+pnzE2P1Pue+TqMxEk9H4YUVBTWgEYHxuoxF8E6nnc01auxl5I6EEmz+ev7?= =?us-ascii?Q?5RdMQk0GxuYhwJ9CYhgd1UF1QeGlPSnOte9m5DQOobpBrLeNzeRKc1ZiJim6?= =?us-ascii?Q?Ty+uvFAWpsHJz/4RXQFUSHgb2ythUnK9Inh3vGlQ8sZLs8Txhefd5cRtsina?= =?us-ascii?Q?bSxbspLg1y4Y3+P0tppPUJ+kloV3YnAFJ8AMtiF+DBz/TkU6V7noADoZj3W5?= =?us-ascii?Q?fdDwHxDEBTHyrtYoEsJbQQ+zkJfRuI9eyXbQhXSPlB/ay0JavtCBrB/dAHwW?= =?us-ascii?Q?IOdkbHd12v+uVNoDsRVR6gYKZFUUAOxLjc+Vagvw3f60+Dcwll6mns11YBQ/?= =?us-ascii?Q?9p3+yxSP2XzuGVCed+hwu1N12SGj8q0KU40Ap/lBLRAkx9dMGOCy8Fvd3XAQ?= =?us-ascii?Q?wkuzmYkqKo1O4QQJrFriekMtgSJKOUkmL12L+FdnRZaAkwjpicjr1DoUvNeF?= =?us-ascii?Q?I8qD+CLHYh9xeX+kwDc6GbaNT3T8yA9pUxTzxN+YqYgOG2UvCwrGDOYQs810?= =?us-ascii?Q?EGyYqxcb+d1DfVGeyysjjxZx+edcX3DM2sUDMVjDTNciC5JNiqkplrtb1soc?= =?us-ascii?Q?UbMz4t7Q060Mh1np4hVn3ZPD5qQ32KSA1w8uZikioHfEaW4v3/dfNC1R/GxP?= =?us-ascii?Q?BhoZU5LVpcpqSGeJN4fp/n0bvUTm3xUyBzY5bOotasR6at+rYOobrQmZ6wZ1?= =?us-ascii?Q?fYt7WYYFeylzRPV3o1p0FShChOkMK+CS3ihn6Y5LdC/lkPw6aPoxn3wEKhLe?= =?us-ascii?Q?SefDKs332ZzLnewMcr3ojoXZ244eo/Mr9wVbNQDyEEey0uwm35F7hj7rG9o3?= =?us-ascii?Q?85pjWX7hkDfy8TLuqBaiaM/CZcKH4a63p08mgn3Jy1xAr9iLXg/iEuf9YW1s?= =?us-ascii?Q?ODar?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:56.3023 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: fbd23eb6-d9c3-403c-fecd-08d8b49e5300 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Pa7iUEdBHgan/GIM4qsfwrwtmH4O+6UpZKaTLBRgpe7G2eb82tAME/iGVlB5cxzwJGMTOc5NlqJPqjTxgl7++/c6c2oEANHjyy1Wl67uwNk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.6.103; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-DB3-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, Greg Kurz , stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Set errp always on failure. Generic bdrv_open_driver supports driver functions which can return negative value and forget to set errp. That's a strange thing.. Let's improve bdrv_qed_do_open to not behave this way. This allows to simplify code in bdrv_qed_co_invalidate_cache(). Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia Reviewed-by: Greg Kurz --- block/qed.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/block/qed.c b/block/qed.c index b27e7546ca..f45c640513 100644 --- a/block/qed.c +++ b/block/qed.c @@ -393,6 +393,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, =20 ret =3D bdrv_pread(bs->file, 0, &le_header, sizeof(le_header)); if (ret < 0) { + error_setg(errp, "Failed to read QED header"); return ret; } qed_header_le_to_cpu(&le_header, &s->header); @@ -408,25 +409,30 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverS= tate *bs, QDict *options, return -ENOTSUP; } if (!qed_is_cluster_size_valid(s->header.cluster_size)) { + error_setg(errp, "QED cluster size is invalid"); return -EINVAL; } =20 /* Round down file size to the last cluster */ file_size =3D bdrv_getlength(bs->file->bs); if (file_size < 0) { + error_setg(errp, "Failed to get file length"); return file_size; } s->file_size =3D qed_start_of_cluster(s, file_size); =20 if (!qed_is_table_size_valid(s->header.table_size)) { + error_setg(errp, "QED table size is invalid"); return -EINVAL; } if (!qed_is_image_size_valid(s->header.image_size, s->header.cluster_size, s->header.table_size)) { + error_setg(errp, "QED image size is invalid"); return -EINVAL; } if (!qed_check_table_offset(s, s->header.l1_table_offset)) { + error_setg(errp, "QED table offset is invalid"); return -EINVAL; } =20 @@ -438,6 +444,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, =20 /* Header size calculation must not overflow uint32_t */ if (s->header.header_size > UINT32_MAX / s->header.cluster_size) { + error_setg(errp, "QED header size is too large"); return -EINVAL; } =20 @@ -445,6 +452,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, if ((uint64_t)s->header.backing_filename_offset + s->header.backing_filename_size > s->header.cluster_size * s->header.header_size) { + error_setg(errp, "QED backing filename offset is invalid"); return -EINVAL; } =20 @@ -453,6 +461,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, bs->auto_backing_file, sizeof(bs->auto_backing_file)); if (ret < 0) { + error_setg(errp, "Failed to read backing filename"); return ret; } pstrcpy(bs->backing_file, sizeof(bs->backing_file), @@ -475,6 +484,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, =20 ret =3D qed_write_header_sync(s); if (ret) { + error_setg(errp, "Failed to update header"); return ret; } =20 @@ -487,6 +497,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, =20 ret =3D qed_read_l1_table_sync(s); if (ret) { + error_setg(errp, "Failed to read L1 table"); goto out; } =20 @@ -503,6 +514,7 @@ static int coroutine_fn bdrv_qed_do_open(BlockDriverSta= te *bs, QDict *options, =20 ret =3D qed_check(s, &result, true); if (ret) { + error_setg(errp, "Image corrupted"); goto out; } } @@ -1537,22 +1549,16 @@ static void coroutine_fn bdrv_qed_co_invalidate_cac= he(BlockDriverState *bs, Error **errp) { BDRVQEDState *s =3D bs->opaque; - Error *local_err =3D NULL; int ret; =20 bdrv_qed_close(bs); =20 bdrv_qed_init_state(bs); qemu_co_mutex_lock(&s->table_lock); - ret =3D bdrv_qed_do_open(bs, NULL, bs->open_flags, &local_err); + ret =3D bdrv_qed_do_open(bs, NULL, bs->open_flags, errp); qemu_co_mutex_unlock(&s->table_lock); - if (local_err) { - error_propagate_prepend(errp, local_err, - "Could not reopen qed layer: "); - return; - } else if (ret < 0) { - error_setg_errno(errp, -ret, "Could not reopen qed layer"); - return; + if (ret < 0) { + error_prepend(errp, "Could not reopen qed layer: "); } } =20 --=20 2.29.2 From nobody Sun Feb 8 20:53:50 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1610198298; cv=pass; d=zohomail.com; s=zohoarc; b=hmfzgifpayZorZC81owFBTVHDGbOESFYZXqlrFMssR099gjjlxtCqjNx9OPZjGtMnYF5QmdRxuRbPvtcAEkAZt0hFQxEmotQxHwAUruxbZ7/JVD2iyoEm0TT4fJ+2ayDJFvmT40nnUFlmzzpOp27o/CV+DFjHlK7V6CT3dlnw+A= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1610198298; h=Content-Type: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=yOQ1n15CcLFovwO48l7ZtnH79uFXHXo3GiY0wq61Ka0=; b=ZuxVnHSSFFr1fDzZEDVUFq/K1cz12WOHRo4xa+P+TuJTKdfx7EH1OG/NiWYv02L09xZnrw6Yfi0zZcqoLM4nKoGwSskvIEfduNzzWU4keFFRlDN8kYEgSZotPlY6kb2oWjIAq4hfMenfmRsO5zOk61A4d1mBOgBquQMk6ywwfdk= ARC-Authentication-Results: i=2; 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; arc=pass (i=1dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1610198298371323.6054390058131; Sat, 9 Jan 2021 05:18:18 -0800 (PST) Received: from localhost ([::1]:49458 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kyE8H-0005ZM-2Z for importer@patchew.org; Sat, 09 Jan 2021 08:18:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:55478) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpk-0006kT-NK; Sat, 09 Jan 2021 07:59:08 -0500 Received: from mail-am6eur05on2129.outbound.protection.outlook.com ([40.107.22.129]:46432 helo=EUR05-AM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kyDpj-0003fN-30; Sat, 09 Jan 2021 07:59:08 -0500 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) by AM5PR0802MB2418.eurprd08.prod.outlook.com (2603:10a6:203:9f::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Sat, 9 Jan 2021 12:58:57 +0000 Received: from AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8]) by AM7PR08MB5494.eurprd08.prod.outlook.com ([fe80::214a:3545:368c:7ae8%7]) with mapi id 15.20.3742.011; Sat, 9 Jan 2021 12:58:57 +0000 Received: from kvm.sw.ru (185.215.60.119) by AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6 via Frontend Transport; Sat, 9 Jan 2021 12:58:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YDCFK2L4OfD149lbXxSVgAd+hQ2iazAfv9L/r1IZ/RFfk8PnlizjAT2CEdgMwKw019TQlVrfbn957tHFk1wClPqohRlsXJyQFBFNIQVm9M2+ftaca1SFNl5HMQG0GIlmgARaijqCJEmChYAzEskUKTpvDweQnmUg7wP9lnhzQG+9QMLdLpclvkEqR86F27oSKNIaV1On2Ej91dMTOQH/+gOUXm1gMCqjcItRAA/p3uD0msxGK+ofpW5QZonAxvOSYpC7zWRrzdGAN4KX/HqZL6KdRRcOBjjpJBIFRpEoC4mNN/q426Rcu+480yz9cjhyMSfLWI4sVxLxtSkZ+/WukA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yOQ1n15CcLFovwO48l7ZtnH79uFXHXo3GiY0wq61Ka0=; b=WJQ6CweUvv1ADK/ikCUn7WEQquwP5V3rB66oQPmKlmF/65jg5JSM8OTYX5TW6gb/IYqlT3L1jvoQU5glz937X0EMNicK4UA+qSPfpDgDHdPW2sNiO/lOVXQN0PEJk+LZHKMxw9i+fAGx+PqsqdoQ/37ag1GyMsld0jmm8LztEuBsX+sDBDwHin8jAg27gF+kX/c5BXPxKlXT5YI8N+81vJAiaId5e6aPxfu4u6FiVTRgd3ov5Nl3XvxACTByDLz7EGYIvcy/TIV3oF77GD//4jCyZfkX8Cm/TL1UvMxObEy4I4OHcqEQtELuMTW14aYcqCiaz4yYKVzh2yoDJM7UkA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yOQ1n15CcLFovwO48l7ZtnH79uFXHXo3GiY0wq61Ka0=; b=sFcTzUTkiMxuaj1yMeh1QGGDwTr1pUxFr33ILps3NSXG3IFXDNZF3qLyVLpg/jYlSBr1nxIowKAxzpvmyXuBz+XYMyKaS1Jj7gTwPFtKjq34AMy9B/T6JY59yZa6CfOmeGOZ44AH9eOLHj3lyhcE3H6zFsRpaGQs0cXgGrwlirE= Authentication-Results: nongnu.org; dkim=none (message not signed) header.d=none;nongnu.org; dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Subject: [PATCH v5 14/14] block/qcow2: refactor qcow2_update_options_prepare error paths Date: Sat, 9 Jan 2021 15:58:11 +0300 Message-Id: <20210109125811.209870-15-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210109125811.209870-1-vsementsov@virtuozzo.com> References: <20210109125811.209870-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-Originating-IP: [185.215.60.119] X-ClientProxiedBy: AM0PR04CA0053.eurprd04.prod.outlook.com (2603:10a6:208:1::30) To AM7PR08MB5494.eurprd08.prod.outlook.com (2603:10a6:20b:dc::15) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0c56a4b9-b56f-4a04-ebe4-08d8b49e53bc X-MS-TrafficTypeDiagnostic: AM5PR0802MB2418: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:92; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6HWI+szJ3PfrErlYI2mDF9ofdR8vu/67bGQL5NeH+51fRn1eeUQ66j8P69U4Eju29yq0Zbg0YwJTjw3JoTGiD8LFnHWMlQOGRfAiJg6t6SltmM8ReH9nmRUKWdfLDcaDv0hedWu5KBqn31hWLbk6oXiXHgiQhierGg86l2P8jJbGcFpYsdusgHvSaUCSTcekT6S0rihXGZq2G5kQWmuzRD9D4P6daIee5DCt7ZVhJVcJ6kItNABgvPhqmWnPM6ZrNKyzZfznMDIlKakyqayCo09O6zNJhfM+u4t8m2HuAkcxWYStFpdIIV6jVkbHVHzG+ioGO0Nde/FnlELACBbETdtXCcaXwKpizPeINDXvGBBVSYf7oJFnZlo/u5TPypGSarf05MgVwYx6xyowdyYpKA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM7PR08MB5494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(136003)(346002)(396003)(376002)(39840400004)(956004)(2616005)(66946007)(478600001)(8676002)(5660300002)(66476007)(66556008)(6916009)(83380400001)(52116002)(2906002)(6666004)(8936002)(1076003)(6506007)(316002)(26005)(4326008)(186003)(16526019)(7416002)(36756003)(6512007)(6486002)(86362001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?EXyF+7gU8dh3McFyewZKWStvHirWCyaOwCilUMDrEpWlCxW4do4cb2KXrXia?= =?us-ascii?Q?nYn7MzroiN1zj5Tu43BjIQeQXyPUX/0O0ROEsqZ8k4a725bh4A1qNtMO2LFx?= =?us-ascii?Q?OsVKsj73D39LnzQMwpRuvOYXJcgq4e8o6arWzvYHceHr8iljjNPMXcH0W6Vf?= =?us-ascii?Q?sBK0AEFD+NG1vzaBAXw0jG0LvqPR4pQWAWAIcdC6KTl635hySBu6bADlEQ+u?= =?us-ascii?Q?1qL9OC+GcDFVIrW7fChxliFkwKjmV+jmImazXubRaoKT1fQr5Ct0JJUURGY/?= =?us-ascii?Q?M8qYNeyQBnRifn89uPTzxwS9ow9+dpyNkr36y0wOy1L0fK9zgW5Dd3nhsTow?= =?us-ascii?Q?GENO4yunc9uYxA40gPys2jncWdDOyEOfGlVyUg3Sr3LFP0YCB5uCjLKxY7AW?= =?us-ascii?Q?C3SBCHBkSeOZDBnZdGZidmkJWG4jYJmPg8tnC8YQqt5KU6dfJexvfwys2UCe?= =?us-ascii?Q?+kO2nYIoe1GEBTL166bbe5/WZGOcSseucr7Gny3ATNrtQKzBNEJCY2tlYIl/?= =?us-ascii?Q?w+s8gr2Z/3CmwYC1nod2gtI8AyLTkARTc9Yx6+iOLs559fznxQ+hJI93DhJg?= =?us-ascii?Q?XbUSse98ML4Yv6m1YWKz/+Px5ZANrDNNaTt5VxroOs8hEZjO5T8Xa/qoiQ6C?= =?us-ascii?Q?zFMIENbmhsZY5IxXE6odSy2jj5gbz9zzNYnogXIJZ2rk/dg3TGOH9IICWI2X?= =?us-ascii?Q?69PcQmXt1GdxAM5lvDcpmgpe44HAl091/vQ3eivUafTkyqFTFto7jSZcRB4g?= =?us-ascii?Q?aOYLxHNnUYMUv3M4wExC1CR6W7KSffLG9G6C0ZrQy6rp2caFSpFhV82MAxh2?= =?us-ascii?Q?usy61yhzDhJKx9CyAskhjag8wSyEnlFXVAoZU80krF3tQXYgo0Sspw61CXvT?= =?us-ascii?Q?UNDa1EWwjEouN8sO0xJ3XwF6rMx2BDMUv2v8FOmv6w3xMoqcrCkPyjXPgCSB?= =?us-ascii?Q?cckklGeUSSqcTK692w8H0nJb59K323nG1RUtjkY+crGScYNApC1dWYATnCFN?= =?us-ascii?Q?zvxy?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: AM7PR08MB5494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2021 12:58:57.4652 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: 0c56a4b9-b56f-4a04-ebe4-08d8b49e53bc X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qdjSKL8GhINCfevQxq8QtSdGxKiEGqtHyeMgTA8CSruhmZBNVWP9bvvRUDouhOv9fsX7qk5T/PlbSZ85FJO9J7+ZWXCY71SfkYw7byJvLtc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2418 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=40.107.22.129; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-AM6-obe.outbound.protection.outlook.com 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, MSGID_FROM_MTA_HEADER=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, vsementsov@virtuozzo.com, berto@igalia.com, pavel.dovgaluk@ispras.ru, qemu-devel@nongnu.org, armbru@redhat.com, stefanha@redhat.com, pbonzini@redhat.com, mreitz@redhat.com, jsnow@redhat.com, ari@tuxera.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) Content-Type: text/plain; charset="utf-8" Keep setting ret close to setting errp and don't merge different error paths into one. This way it's more obvious that we don't return error without setting errp. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia --- block/qcow2.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/block/qcow2.c b/block/qcow2.c index 436bcf0a97..0aa6ae1e1f 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -1158,6 +1158,10 @@ static int qcow2_update_options_prepare(BlockDriverS= tate *bs, } qdict_put_str(encryptopts, "format", "qcow"); r->crypto_opts =3D block_crypto_open_opts_init(encryptopts, errp); + if (!r->crypto_opts) { + ret =3D -EINVAL; + goto fail; + } break; =20 case QCOW_CRYPT_LUKS: @@ -1170,14 +1174,15 @@ static int qcow2_update_options_prepare(BlockDriver= State *bs, } qdict_put_str(encryptopts, "format", "luks"); r->crypto_opts =3D block_crypto_open_opts_init(encryptopts, errp); + if (!r->crypto_opts) { + ret =3D -EINVAL; + goto fail; + } break; =20 default: error_setg(errp, "Unsupported encryption method %d", s->crypt_method_header); - break; - } - if (s->crypt_method_header !=3D QCOW_CRYPT_NONE && !r->crypto_opts) { ret =3D -EINVAL; goto fail; } --=20 2.29.2