From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409846; cv=pass; d=zohomail.com; s=zohoarc; b=ltFexK9EUzApxB/jdwgXJ6hWcEtXlVYtbjbFthKUBF6AXxYfvedtVfEXQpnCYB1gsjT7AGAffwtEDlpDyMNbWaBSAxiaSgp4+M2EeiRMIK47irqSfa1lS+YOw/E3NQrHosfWTM8JDzj3H5RTCI4EhdrfSrYNIuTvlO8uvGxMEmU= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409846; 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=+C3PYtNkL2c5qo5udAhGEo97xa6gl21J40zzQUCEELc=; b=SqtEcAq18+hYyIdyt+PgV/mwHZ+YfeoVtZukpY3QPrLWSYQN34JFmOKyblerhLy0xPyQTAncLxg72+p+lYIO5qdMI8pKxmYn2pahRvwqQWpTD9AFPnnxwhcvV5uvCblpzXeTYTLdVuDMe6W5faJPURZUNZFZ/Wp8SL4VYw1Bke8= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409846606464.59401290792687; Mon, 13 Dec 2021 07:37:26 -0800 (PST) Received: from localhost ([::1]:45662 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnOH-00044B-Ep for importer@patchew.org; Mon, 13 Dec 2021 10:37:25 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33830) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK0-0003ne-8K; Mon, 13 Dec 2021 10:33:00 -0500 Received: from [2a01:111:f400:7d00::703] (port=2464 helo=EUR05-VI1-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 1mwnJv-0000jw-NG; Mon, 13 Dec 2021 10:32:59 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM5PR0802MB2516.eurprd08.prod.outlook.com (2603:10a6:203:a1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:51 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RRe3f1nZB2IoM1bBB/uHoMZCeqABHpBcu3tABYVR0V5DqfI3pYGezYTsGM+t7AeXP0FiS3JTzPOmbUPdQ1y4ayPATOfGSmjnYQMvU0dYPwQuqjU7fhWiED9LgCAn8l/dQyrHA9zcoIQw+RWKrsI5IB4YfEbWGNBA5ba6EOAkCJqTa4tLAzouVDo2zOhVHqhKGbHiamYL43pyVQXLNG+bg+/Ydx3vVE/Ww/lYa1BlItyhxl4MkwhEMRLzH2b0smnCkkJ/j99Y/3j4OeBm6iNQvW3aRuXfsJBxTYNsUkVg8uc41n9NAIz3lu3mocv5c5R0clikzRh2ml3tAhqsnGm3uA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+C3PYtNkL2c5qo5udAhGEo97xa6gl21J40zzQUCEELc=; b=msNnmBIObKHZcMTrcYMano+KHWQTbLILWZ6jxkFPJuDYZK/k812uHX42uY1kbrXzrWY7wn8iMU17QfleP1SMnFMJ+MIw1ZgsBtQU04LlX3m+2LkiNc36KDx7iBUfG+1PomlNu575ex2MNNyb6EBdOEBsp7vMx7EH1ciY+1el01BtqBzqY9aHTGaq9b4EYqeDb8D80eTRJxUCLUJBXd8mP1GRWbVzmWb0SefuaIdY5ZJlxhQCA4o2E9mWmQtZCPfBs+ze3+nu/+ZMGdW8h6Wm4d2r3uBtABsQs00bXxH0zq4bWcHQu7ieck6KQk6uV/hny+22FUvzS727eZeCp8YLvQ== 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=+C3PYtNkL2c5qo5udAhGEo97xa6gl21J40zzQUCEELc=; b=R97L/z+7Ewq2VLiQ/aaUpNf1qbqfGiCLYUPnmk0m49zmlDX/jg7/oDOy3tCEbYWZkyFedubcSMENEAuWaVZ2Lrs2ISqmms1a6YIkmxMxwZuBiIs9xYHfw31MtqrujVq5bmJHbqr+KhZ9Uh9HNDgTsT4geOjsdpQvsHgHL0UtI9g= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 1/7] nbd: allow reconnect on open, with corresponding new options Date: Mon, 13 Dec 2021 16:32:34 +0100 Message-Id: <20211213153240.480103-2-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ac1dd801-ebfe-4424-b6ca-08d9be4dd2aa X-MS-TrafficTypeDiagnostic: AM5PR0802MB2516:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:126; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bM1OoFFikkyaLsO6fWlMC0qoplVCKI02eLBkFbLHH5A5fZwiuPc4nq5hxv1vyTPcTepH1aH7XugtFRoG/OOuvrb2ZGQVdonbQN2ILZ3DIzFhLEjfMHtthxWnfCtsDFwLkfddHmzOEe0psn9n98j3xiiXhexlIXT720/q3dNHREDxPBnSMg7uc+Mmpg4R8OwY7S1mDQe8+QyXxafExq96DRUZAF2bTr6mmZxxFMhz9j39R1irnmgn8jVkUQ3G7du6OLBcPE/wTCrSsHuozU0ULRyL1sgyOeoff8r1CqCVkBVpw15rXkAJud2kiCjrmtEjA9hA1STjyR1aUi1gbkXkP5CXPGw/dIKQ6pwzW5p5pBlu1p/owUGZUaHuRaa5sKbnuaelvLB9KVtsFd5eo5e/pF9VKTnp8AfhFdd2sLmyCPNlYJmHu85n+JcOlm59fIB0fKPH6Q1BHVnn2NK0tUbftzisVnTudePSD+g7WrT5NI/8EcJhRcRvoGsUsC09AF+8qcMW2IB0PEY/uJ8G7CelZQJHcvQR3RXeQ/dkgnOHabxecLKtizcHYLqv/JuAN1AOngQTc+HPyJSulUQRIH0qQUUlB5ChDl+zkvG+LEN7oLbGmu682iOaOuwlx8WD759WqSoTMV4f4ohD1383VuILGKVa7Qb7DzPJz4khd5xS95iWbfkzu17XpjnhgOZOkRV9rQfNm59OuisUIuxLyoOdZA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(38350700002)(38100700002)(8936002)(6486002)(66556008)(26005)(66946007)(186003)(2906002)(4326008)(2616005)(66476007)(1076003)(316002)(6506007)(6916009)(52116002)(83380400001)(8676002)(36756003)(86362001)(6666004)(6512007)(508600001)(5660300002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?WSAJFoF2yqWrgfC0QTZ8K5rlCf4cp7uWzUoaY4HXr0tEZpjx1YsQjCq7F86h?= =?us-ascii?Q?Fk0QK5wDJAmtD53armXyR2xIvIq5Jj0jo7lBY/kQBbCYsd+wiucrYkf1EVl0?= =?us-ascii?Q?3uWgqVjX1/KqLDphcfMrOIddT0OET3r2CwVAmDFMCb0Sjehc93qqSX9L9VrZ?= =?us-ascii?Q?1vmBRhciHjT0MJ4w5HVVvtPoYavjh+WfXTkHiX1jWlZhbKR+mrKeqJICn0dI?= =?us-ascii?Q?D7/hoP250TZhTCoFxzNbMW/Mfz5+W4D1woiRg4mcZvDVxMDdJradGy7dkRpt?= =?us-ascii?Q?MFp3kBuU6rvXBtF5Glga72PQpdfrUIWj6OqXTLOwwBgU8NN35JYMVVcDwwQ9?= =?us-ascii?Q?UZY1dnZcj4Ud/EFEXic1KNmSXVykrH+SqCa8Bp+/yNk9+AJaNvB8G3GUHlUk?= =?us-ascii?Q?0Vw2ZTaKW+xAW80UxPFARzx3R+DPSMhKBOiqBIIJBFvem6QXUQYCd/qcj6en?= =?us-ascii?Q?u6lJwvFBIN/1T7RplbxqH2j7DE/iDgu8rCP8FvHG0dodjzImhAurISCRRCsb?= =?us-ascii?Q?0NMLCU0pqu4Ahi6HuOtvbiFBktfLqkyI7IQgOBvKHfH3u6rrOwg+NJRiXwxE?= =?us-ascii?Q?pCK6bkRPych3OdEoc1LOJgAfMWZNOLBcXUdJZV52kLdMVWFrqTDXdafZ7v+t?= =?us-ascii?Q?yaIXAxTRWIQuyypz2S05yRwBqCY5YkBDLukKNS0At9xlBXh1pXMF8QeX9m+9?= =?us-ascii?Q?CK7+1mkhAXObiVS4dOzHB5t7nHAyn2hsYQtnDJzLOIlwC3i6pSzg5SIo8pTf?= =?us-ascii?Q?JpslhG0PSO4n/8IaEvfRjj01yuOBTsb2vq4rOeL1N4dAm6fJOlKxhEjPW1Ga?= =?us-ascii?Q?lYfVXrBzZzRgXfJVsL2cyghZjLwsNwuslfkkBguLudWu7kuVMVYXBV3kUmhq?= =?us-ascii?Q?zO0FZyfItMsKXPmcoVLH6v1UZ2MhozFmn8o56PeFrHkP1h67Erav1gaXmUx+?= =?us-ascii?Q?pY+8IKpn33GotMmCyMtkfDmik7tYglvIW8BTAZ8TfkxUVYNGKbjbYhHERb3N?= =?us-ascii?Q?070UuOEqq/xE3kEuuKs5ygUKRj7EMuWsX6Rquel7vMuOzKin74CBeIBYyybr?= =?us-ascii?Q?xhyN0fNf3WGVCelxTNIQT6PUNfz/9+3dj9O1Xv8tWt9VGzGcFhQDe+KJ5brR?= =?us-ascii?Q?oIimrEuXwaaQzbhQxWSOm7BG7QaSlAiu6Gh5jUDj/XhI+yb/9dpmsviXotl1?= =?us-ascii?Q?+xwb2E/gEMoX8tpi924pwug7htznQcn+yTqT8VYHnkvP0eUsYLCMI7fa7yUV?= =?us-ascii?Q?H38ffxvL3OuZRElAoSFM0i3VO8/2S8BB7Zt2++jQHef313Me0k26tGrygnX6?= =?us-ascii?Q?wwHYqKQPmmrC7dhTc3TYCDJtaSA313UiUzXf8erY63vKtqh24Mg85fimDY1c?= =?us-ascii?Q?PW2Pb+yyrgrb8zq+scz5I6bHHzFkof9BxIJceDCWd8//T8UGks3QBPrVuMoa?= =?us-ascii?Q?E8Wv7XMZXrtQ9VKrT+Fo4VvP7/u761oEoUXfaF46Cj6s0lHhTU76yqXsDVNX?= =?us-ascii?Q?78heaentDwQXmrrZh6yCvTnObhyCocTAw4D9mSBqTyFD1DF33NJMtaaxH53q?= =?us-ascii?Q?7pj+9CkftugTg+c8IngCzNWNua+c0PiHs9pf+id1cFMbP7ZB84OA4ZnjLMEz?= =?us-ascii?Q?YI7jaaIHHu9D8mjFsZLczIVdASRWyGkGKiKAF0UbaxneKNpg5a5A3EZId9M0?= =?us-ascii?Q?FnGH+vlrAjhYYasC8wO/MH5l9yk=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: ac1dd801-ebfe-4424-b6ca-08d9be4dd2aa X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:50.6784 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ukGP53mpY1QLp5kdIpAJY/fryZqwt4b4IyZ0xYWLhive31Ujt6BJiRdLpKvHGH0BsAXdO9Efo1OlJsfKBOOggOO+zrkyYbJoWAX3SNKsgs8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2516 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a01:111:f400:7d00::703 (failed) 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=2a01:111:f400:7d00::703; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-VI1-obe.outbound.protection.outlook.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409847316100001 Content-Type: text/plain; charset="utf-8" It is useful when start of vm and start of nbd server are not simple to sync. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- qapi/block-core.json | 9 ++++++++- block/nbd.c | 45 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 52 insertions(+), 2 deletions(-) diff --git a/qapi/block-core.json b/qapi/block-core.json index 1d3dd9cb48..8cf82417a6 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -4096,6 +4096,12 @@ # future requests before a successful reconnect will # immediately fail. Default 0 (Since 4.2) # +# @open-timeout: In seconds. If zero, the nbd driver tries the connection +# only once, and fails to open if the connection fails. +# If non-zero, the nbd driver will repeat connection attemp= ts +# until successful or until @open-timeout seconds have elap= sed. +# Default 0 (Since 6.2) +# # Features: # @unstable: Member @x-dirty-bitmap is experimental. # @@ -4106,7 +4112,8 @@ '*export': 'str', '*tls-creds': 'str', '*x-dirty-bitmap': { 'type': 'str', 'features': [ 'unstable' ]= }, - '*reconnect-delay': 'uint32' } } + '*reconnect-delay': 'uint32', + '*open-timeout': 'uint32' } } =20 ## # @BlockdevOptionsRaw: diff --git a/block/nbd.c b/block/nbd.c index 5ef462db1b..63dbfa807d 100644 --- a/block/nbd.c +++ b/block/nbd.c @@ -80,6 +80,7 @@ typedef struct BDRVNBDState { NBDClientState state; =20 QEMUTimer *reconnect_delay_timer; + QEMUTimer *open_timer; =20 NBDClientRequest requests[MAX_NBD_REQUESTS]; NBDReply reply; @@ -87,6 +88,7 @@ typedef struct BDRVNBDState { =20 /* Connection parameters */ uint32_t reconnect_delay; + uint32_t open_timeout; SocketAddress *saddr; char *export, *tlscredsid; QCryptoTLSCreds *tlscreds; @@ -218,6 +220,32 @@ static void nbd_teardown_connection(BlockDriverState *= bs) s->state =3D NBD_CLIENT_QUIT; } =20 +static void open_timer_del(BDRVNBDState *s) +{ + if (s->open_timer) { + timer_free(s->open_timer); + s->open_timer =3D NULL; + } +} + +static void open_timer_cb(void *opaque) +{ + BDRVNBDState *s =3D opaque; + + nbd_co_establish_connection_cancel(s->conn); + open_timer_del(s); +} + +static void open_timer_init(BDRVNBDState *s, uint64_t expire_time_ns) +{ + assert(!s->open_timer); + s->open_timer =3D aio_timer_new(bdrv_get_aio_context(s->bs), + QEMU_CLOCK_REALTIME, + SCALE_NS, + open_timer_cb, s); + timer_mod(s->open_timer, expire_time_ns); +} + static bool nbd_client_connecting(BDRVNBDState *s) { NBDClientState state =3D qatomic_load_acquire(&s->state); @@ -1742,6 +1770,15 @@ static QemuOptsList nbd_runtime_opts =3D { "future requests before a successful reconnect will " "immediately fail. Default 0", }, + { + .name =3D "open-timeout", + .type =3D QEMU_OPT_NUMBER, + .help =3D "In seconds. If zero, the nbd driver tries the conne= ction " + "only once, and fails to open if the connection fails.= " + "If non-zero, the nbd driver will repeat connection " + "attempts until successful or until @open-timeout seco= nds " + "have elapsed. Default 0", + }, { /* end of list */ } }, }; @@ -1797,6 +1834,7 @@ static int nbd_process_options(BlockDriverState *bs, = QDict *options, } =20 s->reconnect_delay =3D qemu_opt_get_number(opts, "reconnect-delay", 0); + s->open_timeout =3D qemu_opt_get_number(opts, "open-timeout", 0); =20 ret =3D 0; =20 @@ -1828,7 +1866,12 @@ static int nbd_open(BlockDriverState *bs, QDict *opt= ions, int flags, s->conn =3D nbd_client_connection_new(s->saddr, true, s->export, s->x_dirty_bitmap, s->tlscreds); =20 - /* TODO: Configurable retry-until-timeout behaviour. */ + if (s->open_timeout) { + nbd_client_connection_enable_retry(s->conn); + open_timer_init(s, qemu_clock_get_ns(QEMU_CLOCK_REALTIME) + + s->open_timeout * NANOSECONDS_PER_SECOND); + } + s->state =3D NBD_CLIENT_CONNECTING_WAIT; ret =3D nbd_do_establish_connection(bs, errp); if (ret < 0) { --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639410067; cv=pass; d=zohomail.com; s=zohoarc; b=MsC3W4I8GGzmkmiN8AbIbUtIDBy88MV1ra2gBTvSgnWpoU3+72sXyO/S42Or/06m1CCPyLDuty7SWUDyHpJ2vLzPSAkgWuGlTnyjnN9/NsaESJLhg1vbzPEy5rbLklcZ0jGvxKLQEOS/exo5FvgdSfpLu53Cii3pu7Wpu/3zpZk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639410067; 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=tc0+E9eGSwi101ON3B9m0vzebc/w4yXDSCrhG9Lhck8=; b=WvGOMqMgYnMaRcRaYkzsArGDNy8eKofrmz2DBCr3WaNU4TpKLsR85L4bkudyq+LECxEIFxNpRw7wO0Pudra3dSWlQm/qLMv+XYld/0gA6m1a7dsgyeqt1dM/70hbWxWcpgmJqQjcwItCCZlDrTtAEGX7wpKnN3zAF6OgWyvWqe8= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639410067843910.4222503865476; Mon, 13 Dec 2021 07:41:07 -0800 (PST) Received: from localhost ([::1]:55218 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnRp-00020N-VW for importer@patchew.org; Mon, 13 Dec 2021 10:41:06 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33906) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK4-0003tC-PJ; Mon, 13 Dec 2021 10:33:04 -0500 Received: from [2a01:111:f400:7d00::703] (port=2464 helo=EUR05-VI1-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 1mwnK2-0000jw-Lx; Mon, 13 Dec 2021 10:33:04 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM5PR0802MB2516.eurprd08.prod.outlook.com (2603:10a6:203:a1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:51 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:51 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UJh0wDZdH525BccWb1bcfeW6LBgeqvv78b41oSJpWoHsyZtzSL13Gho9Qn8IHzc2T2XNrk+4tVD8oa+u+dFDFjVOEQK81uUu2S3ang6rfzpO1ybce2Z4DrpkV2AYXlUVRdW5h1C8xKX78iDHd1pO+pmLQw4e2N66UEe7vrcfJAetu7peQ1ORZVhcdG/4WRz0GFC0A7DOWS8I55dqUO7a7J15848I5GyAHaML//9rJVvkhvetrdseWrI8vEAbxVjga0uLECb9OOERNuYlFCL9stBFW4ZATqW2b+AtOGFulxTeBagSHDBsQK1fRIm9Zg2ny6bvQNBjNrxmifURyQjDpA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tc0+E9eGSwi101ON3B9m0vzebc/w4yXDSCrhG9Lhck8=; b=fQn1c4gtYB3cW/5TGzrdIV/5G5QK5/qSTRHoCEP24uJyE+ZmjNOHoVVeyWXf4Hqub+cb9qUqtNH0Kuo4eU0lgA+GY6S1lPo04jI0S0wmLRl0pqb1NBlipmwSADnnZx0s9gOeNmXUUJpHBVg3WDhELmIqt09Y+Ke66wBhTMXkyUWh0Ln3MUipen8QGO7rKoKVM+5NqiKHXgdUWfHDxLP5N7VX7nMGdOlvp+/rJoMcODGs3goxS59F8qPgiEGTGTOjW2pmjHsUiciDbnC13f47bU+OMfNLltRaEY/4FPwT110sHCOD3GJEJs9FoToSNbs5dPPXtB3GG3lITq7LZCugog== 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=tc0+E9eGSwi101ON3B9m0vzebc/w4yXDSCrhG9Lhck8=; b=l9WBNM3Dubjusrwg02kMPfiWcdYXJwp9lD+NBiuUyzIKkEtDAFuQveww0h8rpGklfwr5TzGjnPEdulTM3oGnXLoeFrBhxf09rkl0130t3jx7tKPduyuTpfBxm/6n0KfIwsR4Kq5/QmMCO5Us8dSSmbyTeh6x7BGXK0ZEc1vWVJs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 2/7] nbd/client-connection: nbd_co_establish_connection(): return real error Date: Mon, 13 Dec 2021 16:32:35 +0100 Message-Id: <20211213153240.480103-3-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0ae83c78-21f0-4756-1b49-08d9be4dd305 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2516:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: I+CzGFs21Klr23008bEtQ6XQ4rjlQo0FgiYn+nBCG9el7rNULNPe/OlckhROKVXhVdGwbSSYntsGOowsq2PSpQvx1/9feZoXjKbVKc6H1vBQlTvwduVDHlx9qKPuFAFzCo3oK9Nxg5sutWGx7fAkvTheX6C+o0319657MJNL/Oxkq7S75cV1mQa/QazKXkbJ582bqgcWaOh9QuGkSZ/aQTr/dLbJL36cy8V0xMLqLWb+VxUwPrD7WyCfTUvCHpR4T393MTYJdofnqLbPf8mJSlrLqJlwr4GvKf9B2S56q1PJc8W63XjB+SqdsBBuGpq4s8Q3G9t2Wx0BaiJDo3kNUY62QGCVelv4/g+1Rp0SIIrqY9rqMi8ZTTAPITF9TJw8IgYMySQspZtrodtlGZ7yv0mtsqrPFsc2zkEhzqxCg7ykZ3gkiX4ed8yxT/kqgPN/aiuG63riq/YdnVg41Sjgb6BTSqfgvsy44d7KZt380OeV5iE2QCNNGxFZWsZTcdP2N/FpRrhyy5abfimpaR6Ep0v7BXVFAPFhQ7TUyNZVDk9F/Ow7Cke5tyCKn6yLkGzM2zaczCHKsnu9JkcthMai2iXqZgTB7fxQvcrbaMpeiORuxG8GesDcKOjT3TFhiUU9BjTuiOr+j9XVkdFaBygy0DctKuelA0pzg7EXFO8mf+W+yhjFGGxRzVUTfNnsj6i2fcPgiMnQa/fuiPquwON3Aw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(38350700002)(38100700002)(8936002)(6486002)(66556008)(26005)(66946007)(186003)(2906002)(4326008)(2616005)(66476007)(1076003)(316002)(6506007)(6916009)(52116002)(83380400001)(8676002)(36756003)(86362001)(6666004)(6512007)(508600001)(5660300002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5TJTxogWsG8jCrNo54XM+Yy70Jc+D9yAB6bSqCRsaEIAR/DP3eNhavJUvEAu?= =?us-ascii?Q?XAO1JNO3qkhRG1g+I6IJP919RftpsXSjCmlZFAYubx4Kv5MwxZWNZZ9+H5Aj?= =?us-ascii?Q?70Fc9UU2MpwbP/VErRkrpUDZI7WBvSdKR9Pbdj1aQfuaeYlgKHy5ZyElswgT?= =?us-ascii?Q?NgbMz8Bzk+xGRY3K6WUQ9NOJNbvy1Yv9Ox5dfPw4q4RxhdH+GrvBmX7Sb/ll?= =?us-ascii?Q?6cZ+gQq4ZLmBsppX+er9pVLYQna1xj3phOaMKwJSaReru2oQsQzkSav1Tws2?= =?us-ascii?Q?TRAYsxhP45d2zmDEZBgTfxyLKhTAkTctGYiVOzFrHOd49WWWlFK6HvrtBS7X?= =?us-ascii?Q?plR+oCSbVRDos3Ac63i9hgG3ClUtwmS7ZcHLHRZ+u1T52MhLi94zpWrj9Roj?= =?us-ascii?Q?kUpNxd8cnRMj6RSgqjBcSqSMnPHqUMZ/mDVFSKYAcLs7TI3qISQfF2TbrY+l?= =?us-ascii?Q?TC2QgVk+fqvti4jE8gVRXccDzZ10NCCCKEuPg8lt9t8kC4mTFLrDE32xEZUS?= =?us-ascii?Q?T2198DtF1zVeAe+yqdgP1R6u0hf+AvEExwke0MCkJrk2RqeiqM8UJaXNGjLz?= =?us-ascii?Q?OTwhF0VgjHAqi2pErKkmtokA3ZxVR2KAyqtnWQEOrOQE8aeZK90+FjOYPyGK?= =?us-ascii?Q?oOacNw71LO7JhBm7fgftzwTyEfieopak8B+ID6R9uXBuEJTAz4I4WygX5YTH?= =?us-ascii?Q?ALPlC16KimFFrLhE8fbMbv9QZBxVBLyw220BuUtAohph6K2Y3hVW1VqpTxcT?= =?us-ascii?Q?TGe4rC2gfNQR2tQ+V7yGjvz2beoLOV56Mz45c0DCy+jh0+cCIkXdgj/2RXzF?= =?us-ascii?Q?TQ+M4pvCivwvMXfr30YT8MLEavsnErZbby2ra9mJnpEbIl2V25worQc75DbO?= =?us-ascii?Q?wRHMVduefjMsqrpAUcEMd/XEXjOGb970VGYC3HOXU+Eg82LTmgfUvE9xgN/O?= =?us-ascii?Q?NoYCDxo3fSLUhAK/BOza9PpDXaK+j2D9579LsMdnr/7DT8OUqZIMqoiuvlsM?= =?us-ascii?Q?fGkGJ0QehELTZU1oTBgdXVBOI4WVHpX6/P0ooM0xuM/hcwi73AuO5SyiDizA?= =?us-ascii?Q?ir0uRYbY0ZL+5Cw9xaEZWm7lKTvGRMyNWoCSMKfLZcWip/5GUKLY5UWWjkG/?= =?us-ascii?Q?SkDkUbG3UWFAf7O8Goycxp0d7LxAOf/iz9DgqSPI2TcsXwaBZBW3nMjkXWJ0?= =?us-ascii?Q?b7HmzlH5x84pv50nWlhR4Kef4VcFZzZEMHCsRDfqxHKNpzYSbGFKCQImYSh9?= =?us-ascii?Q?PbK8nxFWgUO+9eaUXprTyFU2K3p8IdbnI8mc16GTcefifyb+KG5f6xhTGKoR?= =?us-ascii?Q?WvUFvrUdxhzESfvzRN74/ktWcBtqT47r6EVL+TD4xu9fA67ViJdf2QY9db+v?= =?us-ascii?Q?AVLsOAeWiF77wQLgm28JQAQZTnrlkcQwAYzknYw//Jpi4+iiBgnRb35cg+Sy?= =?us-ascii?Q?4mAsvILWNwDJ2YTm8nUfCS5aDGl0OTygFGQHjssPFcw7qMtSKtP9B6lTwX/H?= =?us-ascii?Q?rOvdoWp+kRxp8Sme9TrDyHqI9HZGuTsnLxzqxUA6YEsBEe3GjTu8wETY7uY3?= =?us-ascii?Q?BX78FziZyQhc8j2mWqzIpkagThitWhu1lWuiDo44P9QIF0FspJ6Icg+a4vJ/?= =?us-ascii?Q?lPP9+XDynQTXBwqJl2HUwuS/AizHW97Zr9/uhRMUclLdjej3l/vKs2qwuWsR?= =?us-ascii?Q?eWwGSXHHkv7ityYEEBAxVUIVcyY=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0ae83c78-21f0-4756-1b49-08d9be4dd305 X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:51.4460 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9Tl6b5/+xVoTpP73BdItwMHol7IgD4Tlv2FzURVJkFDptE4B3o4UQK4fEkh6L3GMCpN86LkSWbGZpTy/4tl2bzx//2bJdlzq2fmYBZzdMUw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2516 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a01:111:f400:7d00::703 (failed) 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=2a01:111:f400:7d00::703; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-VI1-obe.outbound.protection.outlook.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639410068736100001 Content-Type: text/plain; charset="utf-8" The only caller of nbd_do_establish_connection() that uses errp is nbd_open(). The only way to cancel this call is through open_timer timeout. And for this case, user will be more interested in description of last failed connect rather than in "Connection attempt cancelled by other operation". So, let's change behavior on cancel to return previous failure error if available. Do the same for non-blocking failure case. In this case we still don't have a caller that is interested in errp. But let's be consistent. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- nbd/client-connection.c | 52 +++++++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 17 deletions(-) diff --git a/nbd/client-connection.c b/nbd/client-connection.c index 695f855754..722998c985 100644 --- a/nbd/client-connection.c +++ b/nbd/client-connection.c @@ -39,16 +39,18 @@ struct NBDClientConnection { =20 QemuMutex mutex; =20 - /* - * @sioc and @err represent a connection attempt. While running - * is true, they are only used by the connection thread, and mutex - * locking is not needed. Once the thread finishes, - * nbd_co_establish_connection then steals these pointers while - * under the mutex. - */ NBDExportInfo updated_info; + /* + * @sioc represents a successful result. While thread is running, @sio= c is + * used only by thread and not protected by mutex. When thread is not + * running, @sioc is stolen by nbd_co_establish_connection() under mut= ex. + */ QIOChannelSocket *sioc; QIOChannel *ioc; + /* + * @err represents previous attempt. It may be copied by + * nbd_co_establish_connection() when it reports failure. + */ Error *err; =20 /* All further fields are accessed only under mutex */ @@ -170,18 +172,18 @@ static void *connect_thread_func(void *opaque) =20 qemu_mutex_lock(&conn->mutex); while (!conn->detached) { + Error *local_err =3D NULL; + assert(!conn->sioc); conn->sioc =3D qio_channel_socket_new(); =20 qemu_mutex_unlock(&conn->mutex); =20 - error_free(conn->err); - conn->err =3D NULL; conn->updated_info =3D conn->initial_info; =20 ret =3D nbd_connect(conn->sioc, conn->saddr, conn->do_negotiation ? &conn->updated_info : NUL= L, - conn->tlscreds, &conn->ioc, &conn->err); + conn->tlscreds, &conn->ioc, &local_err); =20 /* * conn->updated_info will finally be returned to the user. Clear = the @@ -194,6 +196,10 @@ static void *connect_thread_func(void *opaque) =20 qemu_mutex_lock(&conn->mutex); =20 + error_free(conn->err); + conn->err =3D NULL; + error_propagate(&conn->err, local_err); + if (ret < 0) { object_unref(OBJECT(conn->sioc)); conn->sioc =3D NULL; @@ -311,14 +317,17 @@ nbd_co_establish_connection(NBDClientConnection *conn= , NBDExportInfo *info, } =20 conn->running =3D true; - error_free(conn->err); - conn->err =3D NULL; qemu_thread_create(&thread, "nbd-connect", connect_thread_func, conn, QEMU_THREAD_DETA= CHED); } =20 if (!blocking) { - error_setg(errp, "No connection at the moment"); + if (conn->err) { + error_propagate(errp, error_copy(conn->err)); + } else { + error_setg(errp, "No connection at the moment"); + } + return NULL; } =20 @@ -339,14 +348,23 @@ nbd_co_establish_connection(NBDClientConnection *conn= , NBDExportInfo *info, * attempt as failed, but leave the connection thread running, * to reuse it for the next connection attempt. */ - error_setg(errp, "Connection attempt cancelled by other operat= ion"); + if (conn->err) { + error_propagate(errp, error_copy(conn->err)); + } else { + error_setg(errp, + "Connection attempt cancelled by other operatio= n"); + } + return NULL; } else { - error_propagate(errp, conn->err); - conn->err =3D NULL; - if (!conn->sioc) { + /* Thread finished. There must be either error or sioc */ + assert(!conn->err !=3D !conn->sioc); + + if (conn->err) { + error_propagate(errp, error_copy(conn->err)); return NULL; } + if (conn->do_negotiation) { memcpy(info, &conn->updated_info, sizeof(*info)); if (conn->ioc) { --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409674; cv=pass; d=zohomail.com; s=zohoarc; b=ltwrniyIYLY5bR22BdNH/EdnY1pBLZe/SA0vvUVrBpu4cRr+p1p2Hj5U9GD7DCd+bVzyqwaNOldwuF2nEXOlLOq4Wn4lPZGKeiJEwmhbx9rnH/8yW3me29gvTrnZQgUJHTr3d5Mq6i3ViqBC7doMt+Cfc9FHpxnwrqinHl9QJKc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409674; 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=8/XQBzvuOj+2z0KHJakJs/0955lq43qqA+KruNrLMnk=; b=FD0s1xpPfZgdf58LEa8X1mlItm2MnAe5w9C+7f1Ijg9u4qtsAH1vH/XvYD9KcAgZUqAEYRd0UBfDIFmO0ZPGfk1aWX0TF9Hg/p8G5DdUeIga6/vtktAHlKSJLtzKPA5qBiC4MkNCM6wzqHRA4M7nvoF/wJZta6vQkmQENKueKto= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409674640901.8334529457188; Mon, 13 Dec 2021 07:34:34 -0800 (PST) Received: from localhost ([::1]:37448 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnLV-0006wJ-AZ for importer@patchew.org; Mon, 13 Dec 2021 10:34:33 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33948) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK8-00043X-Hx; Mon, 13 Dec 2021 10:33:08 -0500 Received: from [2a01:111:f400:7d00::703] (port=2464 helo=EUR05-VI1-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 1mwnK7-0000jw-3o; Mon, 13 Dec 2021 10:33:08 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM5PR0802MB2516.eurprd08.prod.outlook.com (2603:10a6:203:a1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:52 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VqUT18VsPFh/E134FX6glcgo9hoKLlzXZJDM3o/hYRG2FiM9pweQ1QL3JcLgcO8CilbColbll49efzEtqtu4utc8YAUNK5ZQ/s5Ej1c1Eo1IMOWQSbTqiQaSxo4ET3lzDzSxXeJAMUWX/hvIPeLbxU5YT6F+S23CayzOWpiaxdlxGfz+FICg0vbCLKBBGOjSvKD3Njcm4AJqJElhgSjrXwF1xQku5+a1TATsrzVS3sXF737X069jopS/IIW3PzEORTD7NHt52yDjlkC7b23Hr+1GFP/jtQWLrbaJWeUj5tfXcd8eo/a8ojMsk0L+pbDs52YUcu49G5c6TIW7iR5m3A== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=8/XQBzvuOj+2z0KHJakJs/0955lq43qqA+KruNrLMnk=; b=AcSsWkj9GE2OIFZoFo91QJUJSTi9ampfa0rGEiOo9GFs0/81NGJE/W+6msr+gOjB5anWO6RtwuQM34D3cTH8bkk0xmagPYmvAAQURFg7paCZMc5M3k9pPta3mczAmh+0fAw5QXzxcDBsoGj3yII6r7d+5Ofg6K/tKsOroYVHaag3n1Yl/fzfX2toLvkutdwA5un87Dkzq0UqF1yhVzH/QdD8BVy583Uhh4dD8FfQHn7vAFGsNZjKXHO03oDnhWM2/+Rc+hcQbB6wHreaJtvw5uldKhL76TGzYn+ENLrbxGR3Unq/3ObIQBOc/cu1VO+IenAxH+RhsaBOLAT+MmT90Q== 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=8/XQBzvuOj+2z0KHJakJs/0955lq43qqA+KruNrLMnk=; b=mPGLZkObrbCSVNjfigK/yT1xAy2ILqCcOVrqyBsR3HhHftUyS7+Sc31qcurMnK9oIjaO3dCpDgyK8XdVxdkspqeT9qBbw7sZK6ciFS+kd15LFjY/OAPb2S86/tZq9eZNOv+w6Qn3Q3tzMBsEKRre+eriYDoctUIk/XLpzpARZXM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 3/7] nbd/client-connection: improve error message of cancelled attempt Date: Mon, 13 Dec 2021 16:32:36 +0100 Message-Id: <20211213153240.480103-4-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d8e64cd7-d85c-42b1-4ea7-08d9be4dd350 X-MS-TrafficTypeDiagnostic: AM5PR0802MB2516:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7691; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: h/CnGle0on6pjvQD8YPM86Zlgg5qzjow/Xwlksy2FuuGkno2lvlY1jqidgjBP5SwP7tatIv0KDeUos9LWra8Ykq025H6A9a4WWIQXsVaaKJdxxMUFlE5QoDHSc1XbDgRjuMnIgoa36ydOn1oJdfAibd1uqs3T/8kJP5CY5HGDdBlJh2fgOsDYvKF+KLz+koUmS+hglJ5ID0KKXFB7Gp4sOZ2WPDoSXV85lq+EwzM5PZmVEDCCQTSRq8zS5ZytDeURmbUI7EgnbUgEDHtqX15Ds4MeBVIDitEqgH3NbZS6tU+taunIa3QkiQcdjYELIecG3O6LKRrlJ8APDvt1tWSVdMpT/1Qbq8J5nL4sxI19Bawre7OxoP14SOr4QFL+slYxpDX6vcG5HyEdujnBkJXg78vMoESlFuR6rXDTlLSbzzGullBePbQElMXMPvsqLE050//JNhGoKSPv4Gmo12p4WkXvDVDz39I26ykW3QEOx/lBHLHPkNG2iySU+b1XoJSsAJaRtTrfSnrvQ9uTb0BRqWh8bGQOOAn2UR2J8JRRZHEzOrY/GAs/YjzPYHpcAQysHf9HPiXdECjkQq3+ttMWEKGdErOqNXNqED9YdYcROiOHpABjzmrGbnkYEeQORVqsmgn91wdXGw6trz7KNqDYdaeuTjg5HD4QIuXWoIAEY8FNZBe1YojDq9udrZGpEZ0MJh4Sbko5Ji0BsNthxmtkw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(38350700002)(38100700002)(8936002)(6486002)(66556008)(26005)(66946007)(186003)(2906002)(4326008)(2616005)(66476007)(1076003)(316002)(6506007)(6916009)(15650500001)(52116002)(83380400001)(8676002)(36756003)(86362001)(6666004)(6512007)(508600001)(5660300002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?bGgDFJCU+TGI5RewRqG2ekfo9ptUigXBsK0xYhCzsftGZIpzecQM3mD4+2Kr?= =?us-ascii?Q?VeUtMpnVfmdlItwipwK5kYxKR3LlYu2e2YaiaXxMpiBNr946TT0YxTDYwtfj?= =?us-ascii?Q?aMlx0i4lTNL9fiijHJT6OTGPJDRKVNLd4zDv2y115lKXQs/n/hhd12oB2tID?= =?us-ascii?Q?XU5Q7tE7muMGtfXjBuJ1bMFongzGnlioW+RosOgbAJ8RLsmZ7TRzShyTVWtr?= =?us-ascii?Q?CPHVl6/CLlX9MDnj8LBt7BFgjloepfTA3uXbsxjionTjtDYWcAPRWqdbDe14?= =?us-ascii?Q?qnqImg8JrhtmnUpzpnTexmEMlMQHUIsaOP0AdIur4OWegBv8E/4KciusunOC?= =?us-ascii?Q?uupYJgkrnTz+DDZ8A62eiL2SsJPeGfEdWj3yO9BsFAi4RvtaOtLFNTfWNe2w?= =?us-ascii?Q?EE9k1IAa64tBUMgRaOzqIp7s/HPy69aJMCl3dIYo4XCMkKjVfFWA4Pomc8+p?= =?us-ascii?Q?3P4MibTmU10Kni/pst66gmJLf2Yg6vs3Y4mo/TQkemw6o2rQlYQb9LalBX+6?= =?us-ascii?Q?0tJ0wE15w3LbFccf570OuqAA8nQkuQLe0X+2g34/om3kD9U/TXBGfrxom3m2?= =?us-ascii?Q?0C3vZ8qGsJ+ywJd6BXMk0A8pIZM/RvJ43bws2XcQbcpiQu7yb5C2OnGpaved?= =?us-ascii?Q?gYesEYzuHNvgEoKtZkTbs37COUlPVwxWiTBNB8ak6LAxglajahxOedclSMio?= =?us-ascii?Q?bouShXCLwR5GD01zei8ksidBsCkiIEtwxU63/DclixSrc9LzUEQZIebDCD8Z?= =?us-ascii?Q?Xmql/2SWycvKT9FpDn9wtIW8IgY3nLa7RYdbryYC+pzjGpocfOxquktN0xAF?= =?us-ascii?Q?wItmxq3rc8Rj+0InbrWizp5MKc2kQhce0mWXQo/mQ7RnpnqMtBtz0aKdeeXZ?= =?us-ascii?Q?+jS6NOQaiWmXxenxW4G1wLUYtHwn7XTNgKLreMCIJry3lp8SkT+aGH/TlkVb?= =?us-ascii?Q?TAksre6fQXH9kgsWEu41kz8Vw4v1yxyQzway+BNcguT2o+bHElXSsA7MBT/f?= =?us-ascii?Q?VpI/fh48jy57lmn6XbUJmi/COPeJUv6ixqLF35QV/rpprAY5F6m6DRtK3k7T?= =?us-ascii?Q?F3jYOTSEaYZ4LpwUYqmAQK6wyRJYuwK2ZrNikJ0ee5ZG/DY0GATBqo7NyLup?= =?us-ascii?Q?gjsTocLvU+zKaeQ9VTetjRlaUbM8lX9cBmp0w9nskeVmoCZds+gTFoM4LV8g?= =?us-ascii?Q?DJCfdFvnVo9VTB4NwYYq3geC7V0CecL1NnnCbPmE8EXoG6A7ks1IrNXoI6/G?= =?us-ascii?Q?yrJw07M/h6T2AFyVSrh/mgCLcJs0h212I3edz5pMq+jFVhY7tPbcSRKJSdhS?= =?us-ascii?Q?PkGpEEyNb31Q7QtRUJ2fRJ4a6QQQIoDQnU0/vXDsxLPAUvtjo/rYglM34MXQ?= =?us-ascii?Q?ve49K8M7LQ/7surWOO/ronfZjf0Qdo4CSCRQVXBAKWSCK7X+ggelitS3C+wN?= =?us-ascii?Q?JpX3aYNR8a7G5P7u6YqCOMR2FdGUn8+Fy3ebu2hBp8VN72L24vQKomqanh7j?= =?us-ascii?Q?yjyW0SindSrdLSBS93oW3H+QFXUZSkGJpG07VLtjReigtSFbmK/htGcY/zUw?= =?us-ascii?Q?OmVzPnRQ9mSa/2wdF4gTiM+1UQ3Yn+Sa2vO3+DM0TufKqP0j+bFzTgUPoZ9+?= =?us-ascii?Q?RdGlyd2rCyHJ/NcxtnO85hgTtbVPA6gkhwujsmM9j0Ax0/FzxHa94LOO9o56?= =?us-ascii?Q?JtgsIqIk4wF6WDZIVM+TuY9JX78=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: d8e64cd7-d85c-42b1-4ea7-08d9be4dd350 X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:51.7915 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Yr2QVugQXngw3QYf3iWeNNbv8PQylcjGQYlZJwB9oOeeu6sWGAup1SYRbnjNCjyjMKeu2y1W7B1QlcOrhtyDDTKv7yWINOI6M6jRLqCPxuQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2516 X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a01:111:f400:7d00::703 (failed) 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=2a01:111:f400:7d00::703; envelope-from=vsementsov@virtuozzo.com; helo=EUR05-VI1-obe.outbound.protection.outlook.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409677374100001 Content-Type: text/plain; charset="utf-8" Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Eric Blake --- nbd/client-connection.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/nbd/client-connection.c b/nbd/client-connection.c index 722998c985..2bda42641d 100644 --- a/nbd/client-connection.c +++ b/nbd/client-connection.c @@ -351,8 +351,15 @@ nbd_co_establish_connection(NBDClientConnection *conn,= NBDExportInfo *info, if (conn->err) { error_propagate(errp, error_copy(conn->err)); } else { - error_setg(errp, - "Connection attempt cancelled by other operatio= n"); + /* + * The only possible case here is cancelling by open_timer + * during nbd_open(). So, the error message is for that ca= se. + * If we have more use cases, we can refactor + * nbd_co_establish_connection_cancel() to take an additio= nal + * parameter cancel_reason, that would be passed than to t= he + * caller of cancelled nbd_co_establish_connection(). + */ + error_setg(errp, "Connection attempt cancelled by timeout"= ); } =20 return NULL; --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409669; cv=pass; d=zohomail.com; s=zohoarc; b=BnuhA8Tk7arVdg9ljLrUDEazP1WRuQ9PkQEAUBh3ENSoE7DqbbsqLO9FN+H8oD3btV75lWJBvZEquo0z43iQrqNIcSKiicKYIWKtdxRtJNYMnzGXO5rtqeDEXWejakTcImtuis98KkI1Cy+XKKhf/OX6p/tWYbr4X6qlDc2jwf4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409669; 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=YxPPo46eTn5K9PmHFCg7qcVFcE1tVwI2AHLT5ZumT70=; b=NJBLrSN11H/QO7AkgsnpVgkdRinnNaSmjcyH6kiWzVX5l/kIiVIuTwFHT4m/Wrhx/PJ84NfM1OPKwygWoLe0f60CkvGwNMcZtKLEpa/vYQZZUcqPXoxGsdQxTfqoYpW/gLB01KLuwv0BsykBpsmaVcb8HFkg2+NzwVVuxTzn9kY= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409668716547.0136565614741; Mon, 13 Dec 2021 07:34:28 -0800 (PST) Received: from localhost ([::1]:36850 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnLP-0006YN-D4 for importer@patchew.org; Mon, 13 Dec 2021 10:34:27 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33822) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK0-0003mo-03; Mon, 13 Dec 2021 10:33:00 -0500 Received: from mail-eopbgr70120.outbound.protection.outlook.com ([40.107.7.120]:48667 helo=EUR04-HE1-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 1mwnJw-0000k5-0x; Mon, 13 Dec 2021 10:32:58 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM6PR08MB5094.eurprd08.prod.outlook.com (2603:10a6:20b:e4::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:52 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=li0A4bIxjhLViIh/4LdPgJOyE4QEqclLwWbaAGk6XUpJ/I8GdDllWSrclmbCIFg8aIqtLFoUDekFq0+s5qsICJbNPv3tzFCrLLsQqbzQTgezlcFZ1rANDi1Fw5Job5Xs21WWKtl7ojfeDCRfxCA4Bo/sITwKTtdJfC4jy0QVjtIC31k38/CLQ0otqSweiIBqp3tqhdl0kL/Vg481u8QGLrsinx4yVCt3/YGLqPt184KAHjv8DJmgLwJKhrgOXpRE0CLpUGA0DLwWTeayb4bp+keaYwY5zZKggUAsEFwWiNNh8067gdH+bOR3MQvDzSjNTW4ur5O4yqMy907+CdaFkA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YxPPo46eTn5K9PmHFCg7qcVFcE1tVwI2AHLT5ZumT70=; b=kFcIL+ggvddPpjVH5yuDewt4Yqeuqe+DHI/ugGjmz917qaZiCjm1JOYRghM+U2WiFsZdXlUuIHbsALBH0DUjyDUrRVLoBm8qpDtCgk7kuu4ot86VVUVBnQzN3X46aUF+HXc3YvY/cA994WdWjvSGECPMt8dGfTq3Fl7A0KcuBR9z2z+Lvgbr+MCFZ/pRU0nEAAnJ36h4ogdNvBogUvyQoCbL28WTCYk79S4/P3yRhwWPzv10Lunv0pcqGuQ5AhYVe2hEA4N7P7hfRIyeW+TH0PDuyz2cFm0MGkiOkm3PcY8agVkgsFIoMMV3WPbSBe4xkOagDfDoLt+5bkScv3GIIw== 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=YxPPo46eTn5K9PmHFCg7qcVFcE1tVwI2AHLT5ZumT70=; b=R2rnkyEIqd+gf0+lqWx41WrIIQbjrGdccnQQVMI5rz/55xX6RF8AAnn7ZKgppExrdtNi3KSnZho2JU+TmuGTgBkc5eFgKSAOtkwuyyylOPm+Cj4htK3SYbQizXRO76+u+n/V/mH5Uk6BXIWmBzwqJc/ZZGrNPhS5X/Xt6RaHjvs= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 4/7] iotests.py: add qemu_tool_popen() Date: Mon, 13 Dec 2021 16:32:37 +0100 Message-Id: <20211213153240.480103-5-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c90e9b0d-19e9-433c-fa85-08d9be4dd3ac X-MS-TrafficTypeDiagnostic: AM6PR08MB5094:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2803; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9/yaINvJzUB8+2V/ii5SndGGpu77tLCCgiFHxZcZ1PNHfWVAmeoNjq5F8DMTNuYA+2Jx3YKp4cu6URgRRjIHiYAEsroqD+UIIgBni8/SVaokn2dLCX0uLxyPEIzuAKbZvSC8vvJdCc+fSn/a3Uwzs1vT9Px7Nrndb2Tq57i0wWevPcWrnJzTazfJHXDo6WQzi0dU+DFhE/pehzabuixw3ijImsfwmsYXfot3N5IPv3n3sAFAmO2LiUZaO1TNpLQIMLeb3yv4/BdwgwXMUW7yhHvrOrJbgrhj/d/543zop8oVac2gkcGlgQTOdo96CkGsewJH+Vs8KTtPjZtXmdl5DMz0pyVTr/kFU95o3WPHDhQern4HhvmagdOnp+TotcxYFK2Z2aegWNmSWbTu+7e4VA6jO+ZojqR5NedTyTcLi5l3HSofqt/6bH3GyjNU3FMr/60ebCIx/sZQtpAm75CAO8M4gbYnx2R2IM4Kvg+h7bwKzQ7gfaksaCsfsRYtlAsdvT08c9e1K5O4V6TLAKNFfHkalXIRZ53aN+bZkOphPKFL4CZcwUgR8CdZRB82D682cJcuFL83CVh0MgnUL6jLt5kLw2u7UieCCbVn+39XnkYspMeIn/zpmwOfiFv7f87jqas/7OJC+t6ETj95sfEdx1lyeW3IEbsst07dJ6o3UmDp2JC8fWDZyqGG504ZnWIm7jRIV5SqfMqV1+mhyowAKw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(186003)(38100700002)(8676002)(6666004)(2906002)(6916009)(8936002)(6512007)(36756003)(5660300002)(38350700002)(52116002)(83380400001)(26005)(1076003)(508600001)(316002)(2616005)(66476007)(66946007)(86362001)(6506007)(66556008)(4326008)(6486002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6aUW23vBBCtFi9l4acqOyhIj5lC2HuP+rnoRHyCxlzRYtjhNEsQLOG4GbBAR?= =?us-ascii?Q?Y30F7z1Tn3BDr4b1otmJfIA6U9eh5WviuhbKQJVGh/fg+SCWyoOkfE4K+rBV?= =?us-ascii?Q?MGJNxV5U94hmzIsSGjqfsWfwLEUU9k9pizFc0NBycBDBp2QxYhYr6dlHOcgV?= =?us-ascii?Q?YOwf12240TE6IsoWtREs6oi3Css56tLQLYaMICyQaLsc8gO7ndY7KczB8IJN?= =?us-ascii?Q?VaTAbqlfpsGQ4DrwOvtu0MCSI59aG5IU6wUxLKaD6grdVevkvWrOGtM6uuWW?= =?us-ascii?Q?GcakLK6m9sPNN2zdBdkn4sLp4Wm2hm2SVSkhJbqWXbQG+bNmtleOxDsFRhR0?= =?us-ascii?Q?qtMcQ4uz7goJVrghJlja3a6KO66ETRp4hPmvGkjd3/iyb/4Yguk0T2AH0zkV?= =?us-ascii?Q?5WogZAujFvcyuDUtFcegOZ65fMpexqV+eVp0lGfCCqfUCRzAoaswZILCTM5W?= =?us-ascii?Q?OMLEKCxdjoOfdwgvelD+y+tUYzlIP7THRbdBP3MOiLigGolXSgenz5gQJE7j?= =?us-ascii?Q?2kIH1tjT0W4QSQ+Mu+rDtwp+/6hJbuUDVJ1qoiz3AvgX3PqAAT70h9Fq6piM?= =?us-ascii?Q?GBurwKcEHEsK+vQ/Zjkut5vdp7w9aAbYZ8hHbr72lJjvM6iOlwZHzaA7hWsR?= =?us-ascii?Q?8rbL9LCm5LcH+NiLUOn3qst8M/urkjl+KBLWS1H0T4+IWscJU6Q5yT9z2MDV?= =?us-ascii?Q?xeF1CDXpn4N8titpVd8uFxAFa9ARYFMP8ODdTSbkUXHwlY44PZ+dnBAOo4TG?= =?us-ascii?Q?A4ezq88zdrdiKf4l3bwDpdQSNf/gNJDannGM48DkfFBhDuBLCIySxllk92vM?= =?us-ascii?Q?a7rZm+TbzjEZEbcp6FN9UxdMn4Q71fbeOQcTXG9zNfe0aTVOqTesox0Yg0+t?= =?us-ascii?Q?TNXlgXxpfmoJH9k3/seJLybC4sSagCIcoV4VrnIPLNAdEohB0RrrzhK84/Cu?= =?us-ascii?Q?9DKuz99THLxc+WEmNONXViLPhvQTG2PW1QBNxn46GOy9GysFGc+S1vWPRMEA?= =?us-ascii?Q?eX+2bMlpDa2yMa/0sSk+S0+KjKNfrjRgo5PNdcbAbNPnfCcwXHCDvp59lmI5?= =?us-ascii?Q?6c/IavUiY/8sAALtWi4RvNoLgXnsc+QlYLwVItsWQew0PrD9vQr8fQ+M6cr2?= =?us-ascii?Q?mqqkWlClCC2w9l37gJ0wA4f4lzc4RZ143YMrZFWnwAiA0FZCbcwVaKonYV78?= =?us-ascii?Q?2gKBQ+haSjft3M+IegkrPz6ZDOUX8m0RSp2epGn9LXtFHPm7Jz/M7Pg4ZY+J?= =?us-ascii?Q?e5G7d6ZMIj/mvt6z8QdqfB2mDSQjP+TTXnUd9eWt2U7lWlqayklcLGSL7uOK?= =?us-ascii?Q?VHsvfoY7zZ+bkRtdddYt3sy39+lV01Co32KyOCDbG2T9e9tOLPVa7R2yfz1a?= =?us-ascii?Q?bEVm7dyBIcYW96sbFXDIRABsfByxDmTgmMT2qOQmloHjUhNWZ9sJz7QWHJHF?= =?us-ascii?Q?lMgD0FpPnbIzEpWmNTmsfTGREaT8hlan11Hf1viHNQQ3gEZnTem64O7Dgm4P?= =?us-ascii?Q?IvqcJXLug8EtojCE7QvCWhI5WZNCT5OYJno1DSkErSdssMhzFWzICLTPYMvY?= =?us-ascii?Q?RzqXGSoPfA0ras878zsyyGvVSlRos7uThuZCZnTY+2o4bmPALppcVwUWGr1E?= =?us-ascii?Q?FA7GMln8UNni8/WYa8EBsiOaYjyH1rrFF5v59B9VmbB/pgxY3hb9EivtpzVr?= =?us-ascii?Q?M1hMuoerbAkdbtaFG5S790iLZb8=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: c90e9b0d-19e9-433c-fa85-08d9be4dd3ac X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:52.4416 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f7YN9kPC8SL2Byrgl6lFGPW/0zd+IL3/SqDLpDrjh56sr03hXgNlNDIU4t8CqtFC7cZ3aTx7GKpZ9bsjwIGflVppHzEkUHV1Ze8nmXmfOYw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB5094 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.7.120; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-HE1-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, 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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409671494100001 Content-Type: text/plain; charset="utf-8" Split qemu_tool_popen() from qemu_tool_pipe_and_status() to be used separately. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin --- tests/qemu-iotests/iotests.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 83bfedb902..7f9a8bf012 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -138,14 +138,21 @@ def unarchive_sample_image(sample, fname): shutil.copyfileobj(f_in, f_out) =20 =20 +def qemu_tool_popen(args: Sequence[str], + connect_stderr: bool =3D True) -> subprocess.Popen: + stderr =3D subprocess.STDOUT if connect_stderr else None + return subprocess.Popen(args, + stdout=3Dsubprocess.PIPE, + stderr=3Dstderr, + universal_newlines=3DTrue) + + def qemu_tool_pipe_and_status(tool: str, args: Sequence[str], connect_stderr: bool =3D True) -> Tuple[str,= int]: """ Run a tool and return both its output and its exit code """ - stderr =3D subprocess.STDOUT if connect_stderr else None - with subprocess.Popen(args, stdout=3Dsubprocess.PIPE, - stderr=3Dstderr, universal_newlines=3DTrue) as s= ubp: + with qemu_tool_popen(args, connect_stderr) as subp: output =3D subp.communicate()[0] if subp.returncode < 0: cmd =3D ' '.join(args) --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409928; cv=pass; d=zohomail.com; s=zohoarc; b=VpaLpbgO+dFAsEZVOJTmg01ZmbxGzeNzkkj2PNNpHDvEH85MJTt/iQ2fQ9TautTTuGPEFYv7bu8MUJa59UgBocj/GtQxnbIMKkMQJDSy7JIKY0EhbMc/DAxqg1KYGWrJjzKizGEYs+8u3tzV+3UahMCwaqdon+9KqsUQQp4kDNQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409928; 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=qZsdCQLyhlWBBsWDQY1VNDstcc8Wd6ATx01gxuhQ6Lw=; b=hZxelsTEZ48At+UPUlaWAptL+ogI5KfQdo+NqFkoBvZLosaXL0Zk7B2fkOSgvD8W62n4A1GnTCbDKQzxw7kWA1Hy26VEBI/H7Umba3+E+iMamqJ/sCe0ntOcoGCcvMNpZMm9Z/0zI3pFu+Y2tyWdyoJ0kUejhCImJt/aklAVAbk= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409928725385.04647021681365; Mon, 13 Dec 2021 07:38:48 -0800 (PST) Received: from localhost ([::1]:48272 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnPb-0005mo-Lb for importer@patchew.org; Mon, 13 Dec 2021 10:38:47 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33904) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK3-0003sD-Tq; Mon, 13 Dec 2021 10:33:03 -0500 Received: from mail-eopbgr70120.outbound.protection.outlook.com ([40.107.7.120]:48667 helo=EUR04-HE1-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 1mwnK0-0000k5-EB; Mon, 13 Dec 2021 10:33:03 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM6PR08MB5094.eurprd08.prod.outlook.com (2603:10a6:20b:e4::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:53 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A5Id8JKD3sn9Bl2mWoVmFk4nCnyJeUK4B1U+4/INa6ZQYfowyupSSlwwY2JZF2Z3cMy2O0/z3QSTysckeAN2t+WVKREGk6+FcIjSX3sWvdVReJZ5YTsZk4IQrO2ThNgGB7/tMx8QTpgYve9uK2glhaxGBEHJA8ujrbbCHguC+4k968VDPlnIl9TqdmDVtRx8r9rsTYq/wODUK3X5fGSt1GLR2sD2SLSmnJr1xNNw8PzzYiKNwUMBxF/g8/QjXJUdzSnjPVXidcuMHLV7WtYhsIG4fEWH2LiVi1JzkZ+XRBLmS4hBXV7tHjw6TfgrPaoo2Xj2kwjAckGIUJt4YHQIQA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=qZsdCQLyhlWBBsWDQY1VNDstcc8Wd6ATx01gxuhQ6Lw=; b=bDHqatG57xwAFu6FB1ReRBs5KgU1jRcMsG6zZaFY4EfyAIkYtzXTqIdsSNMpzq9q1g8CvyNZ5EJ8t1U6AC6MSK3qwCxq0ojoQRkNKVLxtzrnu2I7pPwnz2nnH5GKMpt7h8wEC/iFfp9YbY4WJllIZ/UfpFTLMHREmYh1oi7LlSzw4WYR7aH3FFVBfUwDVPD9vCr1r2oVaeeEYWXe4A1OiC29yDcXH1bdamosO3m+gSfV5MS0ZnxTHLC/WCFO6fAfIXH5i9XjJYrmCheHGZLj9RQCFgD9qiXwYex/720NaEB2pKSkBstsTutJPaWg7q2ms836HWLhh74RoS28KEdeMQ== 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=qZsdCQLyhlWBBsWDQY1VNDstcc8Wd6ATx01gxuhQ6Lw=; b=uT1i3jAUBaMY3eMxmZf5K+NGr94pqFwCWo4k+QmnUYn4C7R3Rq2CEI/pRXwryTOXPD60bJk/SdRIXo921EQ+QQAL+tNbsDG+JGWjL1eVe2l5R3YlfEl3CiVRHFg5tOcuwHbpPkF59lojL+Bh1bOWeMaD+WpSJ3J0lIEX9VI/CHw= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 5/7] For qemu_io* functions support --image-opts argument, which conflicts with -f argument from qemu_io_args. Date: Mon, 13 Dec 2021 16:32:38 +0100 Message-Id: <20211213153240.480103-6-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1c3dd365-5596-49a8-3446-08d9be4dd3f6 X-MS-TrafficTypeDiagnostic: AM6PR08MB5094:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5236; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: e7C+9Dt/hx9YFXyTurKydelyzMAipdJ7nUE94UvIrWw4t9oO1FQYo9RgIiKEXcXsVoOhvcjidGQEcVUhXKIR4MxU1rFV7FusKs8VwvEHNNNm0VDD049MgLA/VNk3Zx3uv6UVDY1OJH21gAsmALGNqhVFEpdUs8cdsgzTk+mVgAk7i5nCOWGhj3K65sj8cXdMCBqahh0+788vRFWAk1yYV5f50+Zt/8i/Kg7ltR0raePPAdme3yzNof4pu0nry6FEgHxSii2yeoghrfx1kwbsRtfwHs0ztePrb1swKxL0nh9vTUquJzm4Bl/cyFP5YnaEe5kpLu0dwqef+2+kLFcXfPtxU8MtM52q1JuJc10llF55QhfgxeH1bBUuE/efMY+IH3LiX7X3qlxdAaDadMNxaFmFnCma0cJSWM86gHlDVWNrF+ovRBDu0QV5gHU6USgGneDkGXuDupTe4nV0uz0bF7uYtym81RSJxoTO0ekcVGI5JpwuKO02d2MFh0lW36Sj1X4aUqjMoYJ55w3/xo8vSKdDC77KWlmi9ttgsCefnsOZuvOkbfLmIv0URwHNHZ+jJs/2owegsG8COq302FhTDscYekSbwPD1ld7v960noWS8V3q0alnOlFT1CSuOnyB3p67V5uoV6cTx8HnWJ0+qwz5ESht/YfzDP0j6aWLJGSIH/YnViDtOQuN98V9vV+FfAZVZY6Tfv0BCapYSkNDN7A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(186003)(38100700002)(8676002)(6666004)(2906002)(6916009)(8936002)(6512007)(36756003)(5660300002)(38350700002)(52116002)(83380400001)(26005)(1076003)(508600001)(316002)(2616005)(66476007)(66946007)(86362001)(6506007)(66556008)(4326008)(6486002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?6/702SaW6SFoAx0ch/EHA2bVFnM9cx65aIyKhMAzedpB6CI3iGIoBq3pBdVI?= =?us-ascii?Q?Pl2Z9VsHDpaXp4NmTmPwBMdd8hbS+FjIfZeEw0s1qmfwaibPeT6pWNHdlK8x?= =?us-ascii?Q?mkbbF/QmMS3jnal0+sFUM35+70bwltIaW+qWlPsSGLKNx/Qhh6e3fsmZE3FC?= =?us-ascii?Q?52MLg86OCg9wf5JOuScpk5vhg5YAmepzWpZsu9mE7n9rwBarpyBklPOhyyqu?= =?us-ascii?Q?QirE0/fxXfOAHycQfuFlv7+kM2QYF4yA5xPPSuyOqAqAjQwPVTNRWTjEX1RD?= =?us-ascii?Q?VvscL+k2N97lU+wi1SFlaBpy9i7sh5aPHnxqJYZsangDYtvyrXrtPqvz9U3Y?= =?us-ascii?Q?OfOLDk+E0E2lwqqETYffS9LGlXIOvSHe8vXBYkMU6BDIKuW5wHazsSxpH6eH?= =?us-ascii?Q?tZkstyl48EWS92EiwMNfStiJfZiUMfE3IbjKT1blVHM+gGZDl983L+w5K1Z9?= =?us-ascii?Q?xfMc4MM7bFL9c8Kx8emS/nT2jRt6TB2orlizv1IH5eMFZsT9JltoExTTy2YX?= =?us-ascii?Q?/dp2v8RcFEw10vlcxzN9iJ3lwEgl5nsXl4v7COBQZWJv2VdLZnZiSfe5b1tt?= =?us-ascii?Q?AbsWKZVtbKIRtX9ievxmSwf7s5/QXVkEou/fGXFYJrtEjN8OFfUnHdZYkMQH?= =?us-ascii?Q?SGq89qbI81LesSevSKNt4cnOmzFHQIe6FeIin/cifHYulLqLc0hDVe2pIx+e?= =?us-ascii?Q?G9JVin6Hz37d/wPxDE0VPOtL7xkPkwsAFxE4pVvs79yEyaMurL3yOY7ZhtFn?= =?us-ascii?Q?+U5j2afAEoD+Lv7GnEBOFwZe4nFSfMl+PWztEdb6Xjd+b9i/P85FFsv8Lzsy?= =?us-ascii?Q?OzQas85LHkB8vyqxheNEwhZ5ocWTnXtTXWSBOYY2nopUP3lbDx0CQi7CfZCC?= =?us-ascii?Q?1sGNsCmG8GLEveLktqa5Mt9vGAZIYGND6sSVPwtpk1NDLNS2nG/DdFs0Zfv6?= =?us-ascii?Q?Di34wOZBK3MI+l0lURuCAC3S5WJDwnGOUqW6rOxZYhWMxBMJQOuXcZSzPTHF?= =?us-ascii?Q?PFuS6qvV5DkAHc2ZGf/iq7ketbjwDSH5UohnU5IfvTJe4ueEh5VZ0dF92RXq?= =?us-ascii?Q?/itADMo0uUcr0amLVDArcwxDHmBSk3UEBDkPFLNfIO+NO3UpzpayeolBS0nu?= =?us-ascii?Q?gE/zAxh2xfz9jd2r9RC4d6EIoFwbQJRTeWJu+pEo6f6Ti3nFLxMNpn02G51F?= =?us-ascii?Q?7KVF4lSBrSQCN1W6bp1j7MBOSJYhI0DGaE852L1gr38Id2dSd2IewzhfNtNE?= =?us-ascii?Q?S8V7Af+xhI9leZvtfTGiUzJalSDpOB4zdT1Cpoki+/ZqhY9472wh/h3I340r?= =?us-ascii?Q?0r3lv+z3WdwUODqisHUXAWofar0964epDvkOpSwZnjzeY/mx869xTTzyMwXI?= =?us-ascii?Q?14tI0rjRFbq0vTKY38JxkxYZtkzkClNlki/zKbxodKJQvzyCu3JKqFYu4YmG?= =?us-ascii?Q?wN+XBjOoejQaCCuvEpv5yz44twGyQfHy13F26qoQ1I/bKF8Vc+LuopoEBs44?= =?us-ascii?Q?yvUc26kHTwMn9QRXVx4BMsrWl3lGcK3nDBIahSik5l/DLNtewxCXWqNiUqE6?= =?us-ascii?Q?PXXbKZPWoSX+h3cYcBJDNov7utJ+aYK/GYDXhGhmGbdWO9+rm30D8GoPaEHq?= =?us-ascii?Q?I1akwxqGOWjwVcMd1Qgmwt6U1Y6QbVq9Imyif6YOm3IR6/hMnAXIFu3ypWro?= =?us-ascii?Q?IXiX/Q=3D=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c3dd365-5596-49a8-3446-08d9be4dd3f6 X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:52.8657 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Sf0OGw4rBGM5sTsf1tncrFMK9JCPFdUghbVJqMI3S1T75fasOkFelVWqHYedrkqsLGzr1jKHsd08crrj3ajZzfClu57rLF0xHcq80YfHVT4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB5094 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.7.120; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-HE1-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, 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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409930209100001 Content-Type: text/plain; charset="utf-8" For QemuIoInteractive use new wrapper as well, which allows relying on default format. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin --- tests/qemu-iotests/iotests.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 7f9a8bf012..1ed3eb1058 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -240,10 +240,15 @@ def img_info_log(filename, filter_path=3DNone, imgopt= s=3DFalse, extra_args=3D()): filter_path =3D filename log(filter_img_info(output, filter_path)) =20 +def qemu_io_wrap_args(args: Sequence[str]) -> List[str]: + if '-f' in args or '--image-opts' in args: + return qemu_io_args_no_fmt + list(args) + else: + return qemu_io_args + list(args) + def qemu_io(*args): '''Run qemu-io and return the stdout data''' - args =3D qemu_io_args + list(args) - return qemu_tool_pipe_and_status('qemu-io', args)[0] + return qemu_tool_pipe_and_status('qemu-io', qemu_io_wrap_args(args))[0] =20 def qemu_io_log(*args): result =3D qemu_io(*args) @@ -252,12 +257,7 @@ def qemu_io_log(*args): =20 def qemu_io_silent(*args): '''Run qemu-io and return the exit code, suppressing stdout''' - if '-f' in args or '--image-opts' in args: - default_args =3D qemu_io_args_no_fmt - else: - default_args =3D qemu_io_args - - args =3D default_args + list(args) + args =3D qemu_io_wrap_args(args) result =3D subprocess.run(args, stdout=3Dsubprocess.DEVNULL, check=3DF= alse) if result.returncode < 0: sys.stderr.write('qemu-io received signal %i: %s\n' % @@ -266,14 +266,14 @@ def qemu_io_silent(*args): =20 def qemu_io_silent_check(*args): '''Run qemu-io and return the true if subprocess returned 0''' - args =3D qemu_io_args + list(args) + args =3D qemu_io_wrap_args(args) result =3D subprocess.run(args, stdout=3Dsubprocess.DEVNULL, stderr=3Dsubprocess.STDOUT, check=3DFalse) return result.returncode =3D=3D 0 =20 class QemuIoInteractive: def __init__(self, *args): - self.args =3D qemu_io_args_no_fmt + list(args) + self.args =3D qemu_io_wrap_args(args) # We need to keep the Popen objext around, and not # close it immediately. Therefore, disable the pylint check: # pylint: disable=3Dconsider-using-with --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409888; cv=pass; d=zohomail.com; s=zohoarc; b=LUGwmmDiq7zwedu5vtEFTyEMW0dBPFM6876N9DxBMuN5ZUkqKigcd7bSRhILuXN0cnpWOM/fZL1e7MdEI9Pf+E11Z+MKsR3lUskp0hvfCTea8uBkjyoFqPXsXqmPswCOJJGocUpkezodie1BZvL7dweMshq8Kt2Q0mGTOCJzJNY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409888; 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=3A+YTHe6zqjH9B9wOUGT6V2iqT1JrWgBg/j8U34/O6Q=; b=XDDkv4gIRFX+vQl6517JB3iCxjfZkbCSQ8W1Abk+mrKnzpnmnJsdROjvhbF4Psl/kGO7+UXgw1ONVKqStZQOfr83rZdQJNz5IfIHir/8GEdd6DUgRsjkhCDMaPe3QenONRIcfdKChooNP6G8tjr4wzBGjcwqqmHqeT2d+wUbQY0= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409888388622.2897545045062; Mon, 13 Dec 2021 07:38:08 -0800 (PST) Received: from localhost ([::1]:47552 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnOx-0005KN-Ck for importer@patchew.org; Mon, 13 Dec 2021 10:38:07 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33932) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK7-00040I-8e; Mon, 13 Dec 2021 10:33:07 -0500 Received: from mail-eopbgr70120.outbound.protection.outlook.com ([40.107.7.120]:48667 helo=EUR04-HE1-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 1mwnK4-0000k5-Ue; Mon, 13 Dec 2021 10:33:06 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM6PR08MB5094.eurprd08.prod.outlook.com (2603:10a6:20b:e4::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:53 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mvCfRfdIIwRX4d5MPt8Iuv5G8B2hv/lfJFMarzB4PH1cVVkrQntl+goTTNUs2YMBpfZ7eKRFli9VLrpXMIKUClV33Wi9cbjInMg+1HsoHQYQhme7ecWhpCs1YHqJ3/6oRDHI8LxjcgqNnZIBkhLMP6jqCijPA94hLOWW40zer26k6Dqtk1ElnTVC0c/uMjZc7EE3SnwQpIJodr2IhLmu5irbBM1qHbbtO37qwKE5u9DQ8x/hiJ1neSH3KJMXIClpnOzmiTPoDoGYlQGrNAwOfVBgdQhm6jxNvh+o8HGBRdBaTAR2pc8FGSHh5fCTL0Vq7RwvEad4p4nLJBRaOsg+jw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3A+YTHe6zqjH9B9wOUGT6V2iqT1JrWgBg/j8U34/O6Q=; b=BLJqFR4ZGwM0IjZGIKx+4b17JeuqvTRKNetHYaTgTRM083cURGRbGaPLJ1avrwvDrn2KIPdSpeWz7PC7kFnhmX8HacdW58oj5h8d3+lmc50xXFgQMSVl8zWsvGTfv4/+DHDV35Et5PVtwNYga6FgSxrLRWlVN4VEJ3PhIAuBeI99bo+iF/2dQ+bzj8Yoy2T70fkjgpEYRNe60Tk7xnEYYOJ9J4bdepW7UI+4WCJBCI4exrUkesLMsTKV01e5o5LBxfc4qu86mg8V4puCFG6mY+b3ecZleOnpJThf7Rrm/J3i2u05SYbx3Iz+BwNZm6RRgNzTg+hwFhUmIyj3MoePCA== 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=3A+YTHe6zqjH9B9wOUGT6V2iqT1JrWgBg/j8U34/O6Q=; b=EYf4a8JYhpc3zPWyt9FL8hyVYCq/iEkKIh2PkNwsHM2fy5zKfaB6hxpCPZuk+6LcOy8maPs/MRIZi2e/YiJ0/6y1EVuRa/pA2K3MI3OA9ZaiAm4SwEG5t3Zy0KTSOu6mvZ7WWYZFt+YfasKLXBEaRHg97hJeDpfVvr5M7nB2ecc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 6/7] Add qemu-io Popen constructor wrapper. To be used in the following new test commit. Date: Mon, 13 Dec 2021 16:32:39 +0100 Message-Id: <20211213153240.480103-7-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1e9a5bea-8a0c-495f-c9f0-08d9be4dd45f X-MS-TrafficTypeDiagnostic: AM6PR08MB5094:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:626; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ACrajAnFzzpVT3E1iBCtwitHCRmjkNbLBoAs8Lc5Z1W0f7D0BldMBO28Y/UjZ1z+aX713GrpWtsJ3asHPhT+yEI+ZiFEZ8u7Fb2exYPje55xr3XsOT99DzzpPiS/zRPfZyULp2knJZeWleubNl3CIce09F3BZi+zEr5Dx6WfwBkdnYJfHVkde8WIbcXDgINPz4EADkehq8SiRUJxl1urip547HOENUyEq+qZMQIyM5+wP/PkQcEQldCIQOInRMXJY9REkAPSRDaN2H84KQAuDGYlM6H742b1pz91BnbX8D+HNzLiGvwkee6fdhrgxprOSd8VYa61oXeJF+xIRL/alI88++wyqZR+TiJLNr84PceMwZto6Hy9bYDLGHPnNHRd9/9Z+Dh3tkzY8YAxg7NMPztWEksz0cec1E8C5qsOPm/O9nb9+L+getxSeuAvhkpO7ny5SiTKm+Xx6lMgLg9WyxatCB3FTAmkVht0LTf3oHS0KSJXyb+d9Wjvv3UY+M28gJ63Xn3fFIxx44veREPl3gV5hLd8A1ogJrgRVAs5YHuIi+v9Iv57KYqsf6utqER4Q0HhuANB9dz/qDxzamD/XPAL0sO/sQhryAtvpQhh+e9DpONMAT1g4QsYDrB2+gSjsVo25QNhKq8UhsLIBYf0m/XqRcL2gwEjjCcVthx3+Nd2/KFBfS5cNTu6HUcsrQhfCQHmtMBNXd+ga2jfIxQkdA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(186003)(38100700002)(8676002)(6666004)(2906002)(6916009)(8936002)(6512007)(36756003)(5660300002)(38350700002)(52116002)(26005)(1076003)(508600001)(316002)(2616005)(4744005)(66476007)(66946007)(86362001)(6506007)(66556008)(4326008)(6486002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?V5Kv9hmX+eBItospLHDJjnCajXnxrBFku3qnUjpK0nXeiarJHe5QhWbbUtcw?= =?us-ascii?Q?uLf2mKsCmH9vpS6LWR83SiP0hPSwNTtWYKNEOHnZpZOFTjRLK4nTu3+ZP3ZR?= =?us-ascii?Q?I/Ze9kGeqrJ9LGVzT6/cSPdPrmV7O4bLxh05uwwBBBXcrUJg0s6+hf52jNiS?= =?us-ascii?Q?kxyeJZ6j6TWKgHI9iImk3Cc3hZcII7UlmnySK50ZkpLrAugHj0u1nOggACs7?= =?us-ascii?Q?/yznGOAfObH7IKg8eFn8EhrIq9Z8yD6cdFNVCfj9W5pcMZXjKhd7mwgqTz9s?= =?us-ascii?Q?pWuIwDm6kmVjjt1TJzTc08363o5vMFvTa9hpJ2LQya50WynoWUV8YeS6LGvN?= =?us-ascii?Q?CtDGha/OdTFnB220JX/QF9qaa1xXRUsxJtn+MhXx3V12/hs9IX7xeTWqWePb?= =?us-ascii?Q?jwqnvlywd/QhK64YnUoTyb6HataQ4Y9R57/35ynW7suZwBkgnfmXHdM2jaqC?= =?us-ascii?Q?CDdYppb4irRtBI/FAg7LHhycSEePdIemCyeW6hY+3UsEoI15TMJSwkRWdXWq?= =?us-ascii?Q?F7MXMII5ns/ZlgHIIkh0VIWrLXB2sPMUSY+N6Z/Z2LugT5KSeZ5vnxGYfhlm?= =?us-ascii?Q?m+46jqL+57BNdPcNA/j4pec1A+2vlDT8R+lEN9ZFeJMSYUVUtgWEACdPumYo?= =?us-ascii?Q?YPOWTiNC68yNJGtZrERMD1bPikoBm8CwYUpMgCZeHBdAvr+/Svui0PwjNt2N?= =?us-ascii?Q?axIXT8yaE8pSdX8TxjPF/i1WT21duD/8+zkSSXiYyydiLNZQg9ne76vjfEML?= =?us-ascii?Q?3fd9rULzkoFeKKzpENWU1/YaPGkjLUQftMRsV3JlBf/HlErCu46Y3qaxKHfo?= =?us-ascii?Q?s4UdhDsLvYURzByaAz2/B505JkAu7onwEwJrUlkYZ9U30yO818nSvXnSOhqC?= =?us-ascii?Q?kabIBTXdk1yevwOoSbmQGcypA27icNvxIx94ywLooIMf11Bx9+1afgtsXkwv?= =?us-ascii?Q?ckXESgyCG57DdX7iVdM0G+afTtx3Hjg4AjIhmHhySk+bwpLZ/W0gRuEzllZR?= =?us-ascii?Q?JxcsFqFGeXTLa2jspYHy3X7hVBNRzT+jT+ro4wz8MrB69mOdUZNuBb/pHWJC?= =?us-ascii?Q?/8jfGP0Zzt9PUTJRD0UUBlipQTpOTpOw/0+1abNr7uIO883o0rOjmK89xCD/?= =?us-ascii?Q?jqflrdK//hWZOWDKCHaWMykb2B8kc0bmAGD4G7S798uu27viYmKjnS+WwuaG?= =?us-ascii?Q?fj89ZsN0I++5RCFvwpDAyqHhDZovRVmRSCBIyjQH2vJqOlgMd1VNOfHm5WFD?= =?us-ascii?Q?TacvnptndFxUYBlxt3HzqkrhiTWnHimY4BsOpmWmtCNNbYqyXVD33BkmuLZ4?= =?us-ascii?Q?r+FPebGcLPXdr7MY3JxqKplJ9POWruI8HAzwkTqxGFWtHjuj1iQeOWJtX/aY?= =?us-ascii?Q?AMnFMVKnbOr5Mm9K5vEhDKZnSbwBuVEZPWzWjGYJVOZCl5zS2vnPQBs1zVUL?= =?us-ascii?Q?HbHjPHPO2EQZyPbwvmOEEb7RV6Cvrf8/7xNryJ0rTy/XAG4XYVQTngGY6WXQ?= =?us-ascii?Q?WlF+edflkpyE/GZfz1SGAirEn0Z5nTbsEZYbvENPMddaAxhQHvpi28OPDz3P?= =?us-ascii?Q?CyLAvKtU9CZ7DFGL1UxLvOB1neyL2yl1ZdikbQNkNaXD+0/E0GYuBHuAWxbc?= =?us-ascii?Q?sFe7hKWzIBniwHrPje0jeBygGsJWfibD/u5DB92KAF+pUmJkmKc8Vlpsr5oR?= =?us-ascii?Q?lze8mw=3D=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1e9a5bea-8a0c-495f-c9f0-08d9be4dd45f X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:53.7031 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZOImG/49EamZy/f7XND9gvbPlz3r3zzril8Qgo4zE/hLcwaE1VNyq0RnC+aKwAyynBhqkTOT+LjEeUR88YYMaXCZbdmj1WjqHsq0QEsZ5KU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB5094 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.7.120; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-HE1-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, 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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409889910100001 Content-Type: text/plain; charset="utf-8" Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin --- tests/qemu-iotests/iotests.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py index 1ed3eb1058..69d380e137 100644 --- a/tests/qemu-iotests/iotests.py +++ b/tests/qemu-iotests/iotests.py @@ -246,6 +246,9 @@ def qemu_io_wrap_args(args: Sequence[str]) -> List[str]: else: return qemu_io_args + list(args) =20 +def qemu_io_popen(*args): + return qemu_tool_popen(qemu_io_wrap_args(args)) + def qemu_io(*args): '''Run qemu-io and return the stdout data''' return qemu_tool_pipe_and_status('qemu-io', qemu_io_wrap_args(args))[0] --=20 2.31.1 From nobody Sat May 18 12:05:13 2024 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1639409862; cv=pass; d=zohomail.com; s=zohoarc; b=Cuhg0wQwBDuPlYdyM5LmrxRF6SQGMntxVrGNZFCMLTtn2wVj8Sh1MS3B13JIcd4gUGKw9TNCMIrZCA2f+9UyQCJyHAWJAdrHzLJhAlOjB0Hhflp+izPn7kO3PeVfTKx5VWE9f2Oip2YYaJCWLlcyWLZBLdN8WjC9BennEVznbDk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1639409862; 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=YohgdZU7L2ULZ2isSszwdFxgEwRmjK4/Ve5RA8xyJkY=; b=D319KGF2phrbClOcPBbv1NhhkrtYFmP4LWr5MbcuN8oVFzydjjIUGj5PTZWPS3W/M8Fy0aBmjjR6y64GqlWfQkjNSwGGJPY9khg17I6eJkHJAJSQ+KjLjmEV1EzdDsfdx+Fv85n8PTORbT1M8sdqDxFoC+etrYcLxrL+jurJ3aY= 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=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1639409862256955.5515358125817; Mon, 13 Dec 2021 07:37:42 -0800 (PST) Received: from localhost ([::1]:46308 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwnOV-0004Uu-P4 for importer@patchew.org; Mon, 13 Dec 2021 10:37:39 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33964) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwnK9-00044j-NQ; Mon, 13 Dec 2021 10:33:10 -0500 Received: from mail-eopbgr70120.outbound.protection.outlook.com ([40.107.7.120]:48667 helo=EUR04-HE1-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 1mwnK7-0000k5-T5; Mon, 13 Dec 2021 10:33:09 -0500 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) by AM6PR08MB5094.eurprd08.prod.outlook.com (2603:10a6:20b:e4::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.12; Mon, 13 Dec 2021 15:32:54 +0000 Received: from AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5]) by AS8PR08MB6741.eurprd08.prod.outlook.com ([fe80::c80b:8f00:60b2:81c5%4]) with mapi id 15.20.4778.017; Mon, 13 Dec 2021 15:32:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BWVDd5eKQGUDDjaI6+tVI3JJEMHhfQVv6WHkvknTX9V/97TH/cLdyxG/oB31A52s/nmLhWtFBsCFMjVe1lv8L5Fo4vpA4QwRgyWsqMM1J+mS6wN8tLB+e12oXTPJBJUpFXkb7BW0yzwHn1Ue2Oyy6crUhcO0CpR4XVklz2xTHilHmxFrgqM/VdKd3qaC2qdm1Qc276T3+WE+M3EUAwTIevMBLCVSDz2pc+7/+cG1Gy0VIHSkalG4vpZJp7AoByI6kjGHc6QoCra6ShNz9P4N9ZrXg/74bCQrCKnxgGP5SU2dIcRQNUtp25fia1xw38a9O38ArTkZG7KwiQN2u3HA7w== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YohgdZU7L2ULZ2isSszwdFxgEwRmjK4/Ve5RA8xyJkY=; b=kxODDp/bq5CEOWGOKi6PJ12m7uCRo4eFe4F3xPyl6vk2srPT9XcoLf9FaqHI9o615QatobYZWmbFXxe3A/GiA+axZmiGTEQ4Et3X96Re+Rm57WzdChyWquXyntDXRL0n+ZyHRDwRhyBG/LPYPly/808+6hABVELblIO6Nu0i8GvPA34YNe4L9fsd5z+MGrpVgE735qodv/Rg2lzDFufIgSiqMsqyOtX/Jp7LHKBAH+VMPxdVWVgvStZVjERxZ+BhFwk5sImOV0qyixDommyIk4okpUyJpZqMnmhZUiQj3BaCbz4EtMeHX8Ze2N33cHqdzA0++tkxZCOQ/4qRampZtA== 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=YohgdZU7L2ULZ2isSszwdFxgEwRmjK4/Ve5RA8xyJkY=; b=b1KbZt15014sPHJzu69uSqkpD5wf9mv+ympy47ga09Mh27QhHC0Kyvjw2cArFKM1oKypXizYjr3S/GZqAHndWSA7U0kA/YHk4BiI3yMZxizbb1v9CZAvb8iQ4GycErLchRa+phzwyxAJGvn1HVLdh11pwNmqhLkVFfbhw74CwP0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-block@nongnu.org Cc: qemu-devel@nongnu.org, armbru@redhat.com, hreitz@redhat.com, kwolf@redhat.com, vsementsov@virtuozzo.com, eblake@redhat.com Subject: [PATCH v4 7/7] iotests: add nbd-reconnect-on-open test Date: Mon, 13 Dec 2021 16:32:40 +0100 Message-Id: <20211213153240.480103-8-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211213153240.480103-1-vsementsov@virtuozzo.com> References: <20211213153240.480103-1-vsementsov@virtuozzo.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM5PR0402CA0023.eurprd04.prod.outlook.com (2603:10a6:203:90::33) To AS8PR08MB6741.eurprd08.prod.outlook.com (2603:10a6:20b:353::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5b0853d6-c501-4f2f-8312-08d9be4dd4c4 X-MS-TrafficTypeDiagnostic: AM6PR08MB5094:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cHD6LKx+xcrQakJo2JmMMDCnLnH428EAfBUuFzfV31Hmkoy13Ct3HGUBNOlCN6xkHBJRFqP59a9VL/6SEahm/J3miNpamDzYY85crRjytpWUw9foWm3JTEBMtaJYr8VETdGWdQlm5WEwn4beu7JYyKvge7m5/iOsP/ouXzsTcDZwE6RQRWKdwUaJIA+I+QdHigDOfMeuG38+SXuGNyLf1LPc4p4fALGqNx2argwghl7ZB+64pezLZR3PTCvHBHpfAxxUddQTOZZOX4kmycpN9Ds7GunaZsaENksmLNHFrPxgT1mnPihtfsAQduaD8UhcPqQzv/dbiUgY/26E62wzuSXJuY8dzA22hc6JW8kiSk5SsusmaL+zRb/EcPF7AAGtLlABPvoTIti6Sw10YwguQuMxPbnGoUW6hZTbmm4QuwW8mqOpn/k0i6/nsHN4+7CLQCBfzGzI6wT9+QVmZ2oJ+UapZuTWwxYNlVdDgyEYlp2pMpFkM5Npqiww1taa1FeH1bD2y1lYWRTmrDG0LDV+vnux8X39dYnJfrXg8DelwboImmuXCV9WblAaqOtikhwU9gxCszONoph/JCh7cOrZejoKhMoppx3iMmVVe4eUOsJKJf7LgogLhQ7Yz79n0bvwcSapeWi3SQYEd5h+8qAtaZjW8pO2uvx8hpltqqg+2yR2pupvZqBkr5/jIxG3UbIS3cvGgeLqkZsLia8qI4pc/Yvw8gtK6bum6ta86BfimliY6opF1v7HB2duuMW7boY5Zi3FO/+HqJXutMiY46Ks4HBlau7TbyWq0iCzsGRO4w0bpysuEcE8aitFYhNHL6PhSxK5RVoqp+cTY037R8loUA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB6741.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(186003)(38100700002)(8676002)(6666004)(2906002)(6916009)(8936002)(6512007)(36756003)(5660300002)(38350700002)(52116002)(83380400001)(26005)(1076003)(508600001)(316002)(2616005)(66476007)(66946007)(86362001)(6506007)(66556008)(4326008)(6486002)(21314003)(2004002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?XZTc2suXXc/s4tSoQoERVWm+oD/0JaqSURLlVzYsU0E0E1LpjDLK1CY39O/Z?= =?us-ascii?Q?gt72EUm5aWXDht+OK/nzBQIulF1t2kVnC/OW67XJlzPxw5IJw+vcF8g6/HbS?= =?us-ascii?Q?EpNt1ZfhTFGleS2YwoPQosbc0cGwR44iKymH/Y6BpkgB/nAlX5bPnV0/VlvZ?= =?us-ascii?Q?HIA+KBohb0vhjLPU6XoWr9GikEZ7CupmGu8WhqSpzXPRLfLTA8lrxnHV0MJ4?= =?us-ascii?Q?RpT/4zAHOwraY6aEMqQ0hIelTKBq4zMtq/Uqo2Izv2N4Tuj8R7EVBW+PU7UH?= =?us-ascii?Q?CeW/gcFF1Qmf+xKZXKDbaWT3gIgKl9bGxmtY6lLx2My7ONG4RMUWXERzPzYh?= =?us-ascii?Q?/0QB3klxeiAjNijtMPeCrwjdQvsZ3L1bCpXEFfqd+lTHi6gwerqywwca15Gz?= =?us-ascii?Q?Qp/CmLJqZlmU+nyIxZadQKsJrMCpbTi8s5vVtTDjalHtStP4xmhRD5zOe190?= =?us-ascii?Q?cFSG+WBgFQziFGJ+hdzyxHldbIPlTEUV0eBuyL8DuwnNfP8R3cACo7p36q+3?= =?us-ascii?Q?i2pp6w5rWwLHm4PmPHVcgBsKlXHrQe/cXCRpzgiUNnsLipwo+f2DWxh2q87y?= =?us-ascii?Q?D3PGpCRl8RK/m+bUEprOS1IVdQd+6dVwDH3EXpC9ESE6zGSkk7tnZ8dOhcsD?= =?us-ascii?Q?ePoF5zcxTpsphcWBiwRZlv+hk4g1UebBIAIvyBRmfkzX5cl9K7+1nXlO6imi?= =?us-ascii?Q?s4ZBBJ+e5BJE/BLORR7PGMjtjNxcLzkEcoz3lULAuJUjK8Fl9fmImfOuA2OK?= =?us-ascii?Q?4wm39hcDYw/G6qn/r+v91Ir78QKMwcWQV8kiARctSKQYINvXcveyNCQJIfLS?= =?us-ascii?Q?EbLqnJQ0q8oD4hhj0VgWDNqcV0IybnoWcNdhBvQv9AkNK3/GFjQEl2lT9b+w?= =?us-ascii?Q?l/g7LGkxgHroGbExpwc1JCPrsCmfc0OarHdNYMWZE5xnStlvYIsHi69E1PNR?= =?us-ascii?Q?vcobNZZeSlTKoj1206EfoBLFfli7pe5uxR0xYY70TImZ7k+DVE1r39zG7sWd?= =?us-ascii?Q?BaH85u0lsWF913u7OTFfhwIDch3uB98OeGnrRcpY3EcGm/KpaJNSdcg0K2MI?= =?us-ascii?Q?Ei4stcEn++rL9nUr1OHgKzSpYvM4TMMtd/Rkw2PK55Rq+hw6dtIoM7QHRxrS?= =?us-ascii?Q?bgSqYQbhmCNpydk2WowAIn3z7PpCPvgiKBRPHhSyNsg1N27f3d1ht5zZVQ7l?= =?us-ascii?Q?qESGFyZCrhXE8PxzYKCrWZ+uwKeMeeUyCxMH/bqI56ogjijTyjhWqOKqGNLG?= =?us-ascii?Q?bSu7NOy9eVexVmtsxktOuxel7Lp/O/VXgSsfLsvibnW9QN/qztl8QEH5hbyU?= =?us-ascii?Q?yTf5mWrJYdiDGw9ffkLJpdC9gwV3rOcWESmO2h54v6hHgVu9gSxMu3gVbA/0?= =?us-ascii?Q?qNB/r3vifxN8VBmux2sU0LPeXCxlHf7upwkorc+QtQKbG4pmapHfZSepX2df?= =?us-ascii?Q?UtGTW7nIDkoN8oNfqocUZgHuI46wofXGa6Pg/hcftjNF6KdV9wePCQmZjYAS?= =?us-ascii?Q?6Jh3KF2VUF5Mjk09qORZ9v7OZYPnRUOzJU+MWQyqdk9hQ5vHTRq6V4BdD9qh?= =?us-ascii?Q?2XjDJNqxnkLxS9bMcLU72qtzU+mVDpLQLXsVGFjB3HlxSi7uWlzX57pD2qMp?= =?us-ascii?Q?sD9Cbahfw8Y/dZFemQ28Ykxh145ZQwXiTSLEwP1mVs+BONl7nlDf2ogkenP+?= =?us-ascii?Q?qTfK/A=3D=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5b0853d6-c501-4f2f-8312-08d9be4dd4c4 X-MS-Exchange-CrossTenant-AuthSource: AS8PR08MB6741.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2021 15:32:54.1939 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: j4ovfpX8zu5SRralzds1UCRtT5/Q4aJaFgmUrv4JYjUtnWhlTc7VTQC5XrQTDz2yvrVvYkNOAUG6Oo76lXXl0iPmtaz8t6+z38QbBJM3gKU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB5094 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.7.120; envelope-from=vsementsov@virtuozzo.com; helo=EUR04-HE1-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, 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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1639409864772100001 Content-Type: text/plain; charset="utf-8" Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin --- .../qemu-iotests/tests/nbd-reconnect-on-open | 71 +++++++++++++++++++ .../tests/nbd-reconnect-on-open.out | 11 +++ 2 files changed, 82 insertions(+) create mode 100755 tests/qemu-iotests/tests/nbd-reconnect-on-open create mode 100644 tests/qemu-iotests/tests/nbd-reconnect-on-open.out diff --git a/tests/qemu-iotests/tests/nbd-reconnect-on-open b/tests/qemu-io= tests/tests/nbd-reconnect-on-open new file mode 100755 index 0000000000..8be721a24f --- /dev/null +++ b/tests/qemu-iotests/tests/nbd-reconnect-on-open @@ -0,0 +1,71 @@ +#!/usr/bin/env python3 +# +# Test nbd reconnect on open +# +# Copyright (c) 2020 Virtuozzo International GmbH +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +import time + +import iotests +from iotests import qemu_img_create, file_path, qemu_io_popen, qemu_nbd, \ + qemu_io_log, log + +iotests.script_initialize(supported_fmts=3D['qcow2']) + +disk, nbd_sock =3D file_path('disk', 'nbd-sock') + + +def create_args(open_timeout): + return ['--image-opts', '-c', 'read 0 1M', + f'driver=3Dnbd,open-timeout=3D{open_timeout},' + f'server.type=3Dunix,server.path=3D{nbd_sock}'] + + +def check_fail_to_connect(open_timeout): + log(f'Check fail to connect with {open_timeout} seconds of timeout') + + start_t =3D time.time() + qemu_io_log(*create_args(open_timeout)) + delta_t =3D time.time() - start_t + + max_delta =3D open_timeout + 0.2 + if open_timeout <=3D delta_t <=3D max_delta: + log(f'qemu_io finished in {open_timeout}..{max_delta} seconds, OK') + else: + note =3D 'too early' if delta_t < open_timeout else 'too long' + log(f'qemu_io finished in {delta_t:.1f} seconds, {note}') + + +qemu_img_create('-f', iotests.imgfmt, disk, '1M') + +# Start NBD client when NBD server is not yet running. It should not fail,= but +# wait for 5 seconds for the server to be available. +client =3D qemu_io_popen(*create_args(5)) + +time.sleep(1) +qemu_nbd('-k', nbd_sock, '-f', iotests.imgfmt, disk) + +# client should succeed +log(client.communicate()[0], filters=3D[iotests.filter_qemu_io]) + +# Server was started without --persistent flag, so it should be off now. L= et's +# check it and at the same time check that with open-timeout=3D0 client fa= ils +# immediately. +check_fail_to_connect(0) + +# Check that we will fail after non-zero timeout if server is still unavai= lable +check_fail_to_connect(1) diff --git a/tests/qemu-iotests/tests/nbd-reconnect-on-open.out b/tests/qem= u-iotests/tests/nbd-reconnect-on-open.out new file mode 100644 index 0000000000..a35ae30ea4 --- /dev/null +++ b/tests/qemu-iotests/tests/nbd-reconnect-on-open.out @@ -0,0 +1,11 @@ +read 1048576/1048576 bytes at offset 0 +1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) + +Check fail to connect with 0 seconds of timeout +qemu-io: can't open: Failed to connect to 'TEST_DIR/PID-nbd-sock': No such= file or directory + +qemu_io finished in 0..0.2 seconds, OK +Check fail to connect with 1 seconds of timeout +qemu-io: can't open: Failed to connect to 'TEST_DIR/PID-nbd-sock': No such= file or directory + +qemu_io finished in 1..1.2 seconds, OK --=20 2.31.1