From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MSGID_FROM_MTA_HEADER,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0312AC10F29 for ; Tue, 17 Mar 2020 15:17:28 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id B9E5720714 for ; Tue, 17 Mar 2020 15:17:27 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="Iy0n92Sf" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B9E5720714 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=virtuozzo.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1jEDxo-0001gK-58; Tue, 17 Mar 2020 15:17:04 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1jEDxm-0001gE-Vn for xen-devel@lists.xenproject.org; Tue, 17 Mar 2020 15:17:03 +0000 X-Inumbo-ID: 57f23326-6862-11ea-bec1-bc764e2007e4 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (unknown [2a01:111:f400:fe07::71c]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 57f23326-6862-11ea-bec1-bc764e2007e4; Tue, 17 Mar 2020 15:16:58 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XyMBz/z+lRqNJ9btlpLsD2wOb8995wDG3lE7W81l8g2r+NJsn4dXR1bueGUWwDoAea1nIC6elrQpRP6dEuQiZSI0TLZtCpF4mdknNr6dqCmAuHLFhyBPesHxlxNIuka/5yAoCOleFmBhLop8Qup8gNlipG68qoEe8tSz8uaUh5h1RYUq7U3mMVLuCInU/WnYeuguujHyQYgUgLQXLIiLiwBg9xq3n+rgtdQxzXIwWvU7fkX7lO8N4s2mXJvTjejCqLiP2zg7WgPMPe721VyE4LNK6XUaIcDQGjGqTyIQGf1zMX409lUPL7tI6tS39QY29OO5P81m3q9Rui+8c//apw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=geidpRKznJ30A50ug7yvS4fUAC8Dpy0mf3kSy7C5GVs=; b=hxMSNjCK1wGDGdanCCh0VNB764ETs1Cwenq8PysP6FIPTQ5xq2GreWLAcAuFjORnyt9gom5jGWTbBJt163WRg0k46rBEehjdgf/yBRmMIR+jTmnbFrss0iGmKR9gCOakxOUVJCd9jtdNwr1wBI5cM3ViPbDCEtMdZd/58E6l5y37EzlXdUwJkfaG2nOiv1DgDh/oYy6k2h6tHuRItO8dwuG307NIgQQnBWDvj7IvQ+XLhC8ePfjM1bomPrkmBxfHIsALvVy+sdL7vMLvYa0gqsP1NxMRY+nYwKAhVh1Z9Od/4ljKe+2VsBzw5tRT2xpCIUhWmi4cxfw0qy+RsxkIBA== 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=geidpRKznJ30A50ug7yvS4fUAC8Dpy0mf3kSy7C5GVs=; b=Iy0n92SfLDaQUVzGY2hOwh65ImidroKCBeCkP+6T3lojQiyOv94NX8yxFuLerLzWPdu6gBUUdA795Nabx+v4Tf5P2GkmDWmb2lFzVdDXEck04Ci3V+vu02UN3EFktvktIQKN3QHGFB6jwrQaqXnvVl6YWQbJg8YA4aTjRPbcRfQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=vsementsov@virtuozzo.com; Received: from HE1PR0802MB2507.eurprd08.prod.outlook.com (10.175.35.136) by HE1PR0802MB2620.eurprd08.prod.outlook.com (10.175.36.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2814.21; Tue, 17 Mar 2020 15:16:54 +0000 Received: from HE1PR0802MB2507.eurprd08.prod.outlook.com ([fe80::4d32:e4e1:5b9f:240f]) by HE1PR0802MB2507.eurprd08.prod.outlook.com ([fe80::4d32:e4e1:5b9f:240f%12]) with mapi id 15.20.2814.021; Tue, 17 Mar 2020 15:16:54 +0000 From: Vladimir Sementsov-Ogievskiy To: qemu-devel@nongnu.org Date: Tue, 17 Mar 2020 18:16:17 +0300 Message-Id: <20200317151625.20797-2-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20200317151625.20797-1-vsementsov@virtuozzo.com> References: <20200317151625.20797-1-vsementsov@virtuozzo.com> X-ClientProxiedBy: AM0PR10CA0005.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::15) To HE1PR0802MB2507.eurprd08.prod.outlook.com (2603:10a6:3:e1::8) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from localhost.localdomain (185.215.60.248) by AM0PR10CA0005.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:17c::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2835.15 via Frontend Transport; Tue, 17 Mar 2020 15:16:52 +0000 X-Mailer: git-send-email 2.21.0 X-Originating-IP: [185.215.60.248] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 539ae3f3-a216-4b90-693d-08d7ca8639e9 X-MS-TrafficTypeDiagnostic: HE1PR0802MB2620: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-Forefront-PRVS: 0345CFD558 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4636009)(39850400004)(376002)(136003)(346002)(366004)(396003)(199004)(66946007)(6666004)(30864003)(1076003)(66556008)(54906003)(66476007)(86362001)(6486002)(16526019)(5660300002)(6916009)(186003)(6506007)(52116002)(4326008)(81166006)(6512007)(81156014)(8676002)(8936002)(316002)(7416002)(2906002)(26005)(478600001)(956004)(36756003)(2616005); DIR:OUT; SFP:1102; SCL:1; SRVR:HE1PR0802MB2620; H:HE1PR0802MB2507.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zi4EwamTi7mTr4MNREbSTJwyhTXFoK86BJstsgcPhCOz/WWrQBXEvNHDoAISIsF0M5ZhBjYFDs/A++NTI/Pc98H5j4TjrfcvO8ax888RqEKYtEHB64TBJ6+48keudRlVz/n1VWeTv3CALAzg26/FEHpFeF9jWoImSNeW/dGCs+B+jUnNwhUamnoQmOQt00C4mG2C9eOxVtv/S2/StDQTWGG5UJlkyzDpKxGzfdmljLrgEvXA3vpBiON2lAlTGuOiZx/P1UoQ0sUGmwG2PA3HbEHCI+0q7n10NPx6mW5Dv9uLfz3i96/ryhDJnUdjd+QJ1b5aVZ53VFY1xcS5/j0S4GabyDLfvQd/Td6jAxriomTOiZdiuEB7H/yYzuJyo3H5ZIgejpIER5ATaMM2qDRdRNNEKRE2ZE2UJpmQedbykWWb9iIK2D5CmonLatI5OxgM X-MS-Exchange-AntiSpam-MessageData: 5ntmn/kSFPsbLUL6ZhtmUbU2ysCHbCv415PB6w5/YOnFXbtWAoGt2l9BRRTUlNXHZRAP9Fsg7WtT20WbL5W8D6y/1ZIJmTm7H+kgYBvFln3LG1Hb7n0icpKDfdT343g9MQ+MkooO3obpEKB8idFaDA== X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 539ae3f3-a216-4b90-693d-08d7ca8639e9 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2020 15:16:54.5349 (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: aZ50MhjOFu7oxN8ZM8fyztsbUtWxxi9Sg1SOb+k8GduYFai9QtXBc7FUFE8gBRUVs83RrBkkerKu6kmRyPSjQ+tK1azepHoDhaM+CdcFmdA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2620 Subject: [Xen-devel] [PATCH v10 1/9] error: auto propagated local_err X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , vsementsov@virtuozzo.com, Laszlo Ersek , qemu-block@nongnu.org, Paul Durrant , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Christian Schoenebeck , Greg Kurz , armbru@redhat.com, Stefano Stabellini , Gerd Hoffmann , Stefan Hajnoczi , Anthony Perard , xen-devel@lists.xenproject.org, Max Reitz , Eric Blake , Michael Roth , Stefan Berger Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" SW50cm9kdWNlIGEgbmV3IEVSUlBfQVVUT19QUk9QQUdBVEUgbWFjcm8sIHRvIGJlIHVzZWQgYXQg c3RhcnQgb2YKZnVuY3Rpb25zIHdpdGggYW4gZXJycCBPVVQgcGFyYW1ldGVyLgoKSXQgaGFzIHRo cmVlIGdvYWxzOgoKMS4gRml4IGlzc3VlIHdpdGggZXJyb3JfZmF0YWwgYW5kIGVycm9yX3ByZXBl bmQvZXJyb3JfYXBwZW5kX2hpbnQ6IHVzZXIKY2FuJ3Qgc2VlIHRoaXMgYWRkaXRpb25hbCBpbmZv cm1hdGlvbiwgYmVjYXVzZSBleGl0KCkgaGFwcGVucyBpbgplcnJvcl9zZXRnIGVhcmxpZXIgdGhh biBpbmZvcm1hdGlvbiBpcyBhZGRlZC4gW1JlcG9ydGVkIGJ5IEdyZWcgS3Vyel0KCjIuIEZpeCBp c3N1ZSB3aXRoIGVycm9yX2Fib3J0IGFuZCBlcnJvcl9wcm9wYWdhdGU6IHdoZW4gd2Ugd3JhcApl cnJvcl9hYm9ydCBieSBsb2NhbF9lcnIrZXJyb3JfcHJvcGFnYXRlLCB0aGUgcmVzdWx0aW5nIGNv cmVkdW1wIHdpbGwKcmVmZXIgdG8gZXJyb3JfcHJvcGFnYXRlIGFuZCBub3QgdG8gdGhlIHBsYWNl IHdoZXJlIGVycm9yIGhhcHBlbmVkLgoodGhlIG1hY3JvIGl0c2VsZiBkb2Vzbid0IGZpeCB0aGUg aXNzdWUsIGJ1dCBpdCBhbGxvd3MgdXMgdG8gWzMuXSBkcm9wCnRoZSBsb2NhbF9lcnIrZXJyb3Jf cHJvcGFnYXRlIHBhdHRlcm4sIHdoaWNoIHdpbGwgZGVmaW5pdGVseSBmaXggdGhlCmlzc3VlKSBb UmVwb3J0ZWQgYnkgS2V2aW4gV29sZl0KCjMuIERyb3AgbG9jYWxfZXJyK2Vycm9yX3Byb3BhZ2F0 ZSBwYXR0ZXJuLCB3aGljaCBpcyB1c2VkIHRvIHdvcmthcm91bmQKdm9pZCBmdW5jdGlvbnMgd2l0 aCBlcnJwIHBhcmFtZXRlciwgd2hlbiBjYWxsZXIgd2FudHMgdG8ga25vdyByZXN1bHRpbmcKc3Rh dHVzLiAoTm90ZTogYWN0dWFsbHkgdGhlc2UgZnVuY3Rpb25zIGNvdWxkIGJlIG1lcmVseSB1cGRh dGVkIHRvCnJldHVybiBpbnQgZXJyb3IgY29kZSkuCgpUbyBhY2hpZXZlIHRoZXNlIGdvYWxzLCBs YXRlciBwYXRjaGVzIHdpbGwgYWRkIGludm9jYXRpb25zCm9mIHRoaXMgbWFjcm8gYXQgdGhlIHN0 YXJ0IG9mIGZ1bmN0aW9ucyB3aXRoIGVpdGhlciB1c2UKZXJyb3JfcHJlcGVuZC9lcnJvcl9hcHBl bmRfaGludCAoc29sdmluZyAxKSBvciB3aGljaCB1c2UKbG9jYWxfZXJyK2Vycm9yX3Byb3BhZ2F0 ZSB0byBjaGVjayBlcnJvcnMsIHN3aXRjaGluZyB0aG9zZQpmdW5jdGlvbnMgdG8gdXNlICplcnJw IGluc3RlYWQgKHNvbHZpbmcgMiBhbmQgMykuCgpTaWduZWQtb2ZmLWJ5OiBWbGFkaW1pciBTZW1l bnRzb3YtT2dpZXZza2l5IDx2c2VtZW50c292QHZpcnR1b3p6by5jb20+ClJldmlld2VkLWJ5OiBQ YXVsIER1cnJhbnQgPHBhdWxAeGVuLm9yZz4KUmV2aWV3ZWQtYnk6IEdyZWcgS3VyeiA8Z3JvdWdA a2FvZC5vcmc+ClJldmlld2VkLWJ5OiBFcmljIEJsYWtlIDxlYmxha2VAcmVkaGF0LmNvbT4KLS0t CgpDYzogRXJpYyBCbGFrZSA8ZWJsYWtlQHJlZGhhdC5jb20+CkNjOiBLZXZpbiBXb2xmIDxrd29s ZkByZWRoYXQuY29tPgpDYzogTWF4IFJlaXR6IDxtcmVpdHpAcmVkaGF0LmNvbT4KQ2M6IEdyZWcg S3VyeiA8Z3JvdWdAa2FvZC5vcmc+CkNjOiBDaHJpc3RpYW4gU2Nob2VuZWJlY2sgPHFlbXVfb3Nz QGNydWRlYnl0ZS5jb20+CkNjOiBTdGVmYW4gSGFqbm9jemkgPHN0ZWZhbmhhQHJlZGhhdC5jb20+ CkNjOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+CkNjOiBBbnRo b255IFBlcmFyZCA8YW50aG9ueS5wZXJhcmRAY2l0cml4LmNvbT4KQ2M6IFBhdWwgRHVycmFudCA8 cGF1bEB4ZW4ub3JnPgpDYzogIlBoaWxpcHBlIE1hdGhpZXUtRGF1ZMOpIiA8cGhpbG1kQHJlZGhh dC5jb20+CkNjOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPgpDYzogR2VyZCBIb2Zm bWFubiA8a3JheGVsQHJlZGhhdC5jb20+CkNjOiBTdGVmYW4gQmVyZ2VyIDxzdGVmYW5iQGxpbnV4 LmlibS5jb20+CkNjOiBNYXJrdXMgQXJtYnJ1c3RlciA8YXJtYnJ1QHJlZGhhdC5jb20+CkNjOiBN aWNoYWVsIFJvdGggPG1kcm90aEBsaW51eC52bmV0LmlibS5jb20+CkNjOiBxZW11LWRldmVsQG5v bmdudS5vcmcKQ2M6IHFlbXUtYmxvY2tAbm9uZ251Lm9yZwpDYzogeGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCgogaW5jbHVkZS9xYXBpL2Vycm9yLmggfCAyMDUgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE3MyBpbnNlcnRp b25zKCspLCAzMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9pbmNsdWRlL3FhcGkvZXJyb3Iu aCBiL2luY2x1ZGUvcWFwaS9lcnJvci5oCmluZGV4IGFkNWI2ZTg5NmQuLjMwMTQwZDliZmUgMTAw NjQ0Ci0tLSBhL2luY2x1ZGUvcWFwaS9lcnJvci5oCisrKyBiL2luY2x1ZGUvcWFwaS9lcnJvci5o CkBAIC0xNSw2ICsxNSw4IEBACiAvKgogICogRXJyb3IgcmVwb3J0aW5nIHN5c3RlbSBsb29zZWx5 IHBhdHRlcm5lZCBhZnRlciBHbGliJ3MgR0Vycm9yLgogICoKKyAqID0gRGVhbCB3aXRoIEVycm9y IG9iamVjdCA9CisgKgogICogQ3JlYXRlIGFuIGVycm9yOgogICogICAgIGVycm9yX3NldGcoJmVy ciwgInNpdHVhdGlvbiBub3JtYWwsIGFsbCBmb3VsZWQgdXAiKTsKICAqCkBAIC00NywyOCArNDks OTEgQEAKICAqIHJlcG9ydGluZyBpdCAocHJpbWFyaWx5IHVzZWZ1bCBpbiB0ZXN0c3VpdGVzKToK ICAqICAgICBlcnJvcl9mcmVlX29yX2Fib3J0KCZlcnIpOwogICoKLSAqIFBhc3MgYW4gZXhpc3Rp bmcgZXJyb3IgdG8gdGhlIGNhbGxlcjoKLSAqICAgICBlcnJvcl9wcm9wYWdhdGUoZXJycCwgZXJy KTsKLSAqIHdoZXJlIEVycm9yICoqZXJycCBpcyBhIHBhcmFtZXRlciwgYnkgY29udmVudGlvbiB0 aGUgbGFzdCBvbmUuCisgKiA9IERlYWwgd2l0aCBFcnJvciAqKiBmdW5jdGlvbiBwYXJhbWV0ZXIg PQogICoKLSAqIFBhc3MgYW4gZXhpc3RpbmcgZXJyb3IgdG8gdGhlIGNhbGxlciB3aXRoIHRoZSBt ZXNzYWdlIG1vZGlmaWVkOgotICogICAgIGVycm9yX3Byb3BhZ2F0ZV9wcmVwZW5kKGVycnAsIGVy cik7CisgKiBBIGZ1bmN0aW9uIG1heSB1c2UgdGhlIGVycm9yIHN5c3RlbSB0byByZXR1cm4gZXJy b3JzLiBJbiB0aGlzIGNhc2UsIHRoZQorICogZnVuY3Rpb24gZGVmaW5lcyBhbiBFcnJvciAqKmVy cnAgcGFyYW1ldGVyLCBieSBjb252ZW50aW9uIHRoZSBsYXN0IG9uZSAod2l0aAorICogZXhjZXB0 aW9ucyBmb3IgZnVuY3Rpb25zIHVzaW5nIC4uLiBvciB2YV9saXN0KS4KICAqCi0gKiBBdm9pZAot ICogICAgIGVycm9yX3Byb3BhZ2F0ZShlcnJwLCBlcnIpOwotICogICAgIGVycm9yX3ByZXBlbmQo ZXJycCwgIkNvdWxkIG5vdCBmcm9ibmljYXRlICclcyc6ICIsIG5hbWUpOwotICogYmVjYXVzZSB0 aGlzIGZhaWxzIHRvIHByZXBlbmQgd2hlbiBAZXJycCBpcyAmZXJyb3JfZmF0YWwuCisgKiBUaGUg Y2FsbGVyIG1heSB0aGVuIHBhc3MgaW4gdGhlIGZvbGxvd2luZyBlcnJwIHZhbHVlczoKICAqCi0g KiBDcmVhdGUgYSBuZXcgZXJyb3IgYW5kIHBhc3MgaXQgdG8gdGhlIGNhbGxlcjoKKyAqIDEuICZl cnJvcl9hYm9ydAorICogICAgQW55IGVycm9yIHdpbGwgcmVzdWx0IGluIGFib3J0KCkuCisgKiAy LiAmZXJyb3JfZmF0YWwKKyAqICAgIEFueSBlcnJvciB3aWxsIHJlc3VsdCBpbiBleGl0KCkgd2l0 aCBhIG5vbi16ZXJvIHN0YXR1cy4KKyAqIDMuIE5VTEwKKyAqICAgIE5vIGVycm9yIHJlcG9ydGlu ZyB0aHJvdWdoIGVycnAgcGFyYW1ldGVyLgorICogNC4gVGhlIGFkZHJlc3Mgb2YgYSBOVUxMLWlu aXRpYWxpemVkIEVycm9yICplcnIKKyAqICAgIEFueSBlcnJvciB3aWxsIHBvcHVsYXRlIGVycnAg d2l0aCBhbiBlcnJvciBvYmplY3QuCisgKgorICogVGhlIGZvbGxvd2luZyBydWxlcyB0aGVuIGlt cGxlbWVudCB0aGUgY29ycmVjdCBzZW1hbnRpY3MgZGVzaXJlZCBieSB0aGUKKyAqIGNhbGxlci4K KyAqCisgKiBDcmVhdGUgYSBuZXcgZXJyb3IgdG8gcGFzcyB0byB0aGUgY2FsbGVyOgogICogICAg IGVycm9yX3NldGcoZXJycCwgInNpdHVhdGlvbiBub3JtYWwsIGFsbCBmb3VsZWQgdXAiKTsKICAq Ci0gKiBDYWxsIGEgZnVuY3Rpb24gYW5kIHJlY2VpdmUgYW4gZXJyb3IgZnJvbSBpdDoKKyAqIENh bGxpbmcgYW5vdGhlciBlcnJwLWJhc2VkIGZ1bmN0aW9uOgorICogICAgIGYoLi4uLCBlcnJwKTsK KyAqCisgKiA9PSBDaGVja2luZyBzdWNjZXNzIG9mIHN1YmNhbGwgPT0KKyAqCisgKiBJZiBhIGZ1 bmN0aW9uIHJldHVybnMgYSB2YWx1ZSBpbmRpY2F0aW5nIGFuIGVycm9yIGluIGFkZGl0aW9uIHRv IHNldHRpbmcKKyAqIGVycnAgKHdoaWNoIGlzIHJlY29tbWVuZGVkKSwgdGhlbiB5b3UgZG9uJ3Qg bmVlZCBhbnkgYWRkaXRpb25hbCBjb2RlLCBqdXN0CisgKiBkbzoKKyAqCisgKiAgICAgaW50IHJl dCA9IGYoLi4uLCBlcnJwKTsKKyAqICAgICBpZiAocmV0IDwgMCkgeworICogICAgICAgICAuLi4g aGFuZGxlIGVycm9yIC4uLgorICogICAgICAgICByZXR1cm4gcmV0OworICogICAgIH0KKyAqCisg KiBJZiBhIGZ1bmN0aW9uIHJldHVybnMgbm90aGluZyAobm90IHJlY29tbWVuZGVkIGZvciBuZXcg Y29kZSksIHRoZSBvbmx5IHdheQorICogdG8gY2hlY2sgc3VjY2VzcyBpcyBieSBjb25zdWx0aW5n IGVycnA7IGRvaW5nIHRoaXMgc2FmZWx5IHJlcXVpcmVzIHRoZSB1c2UKKyAqIG9mIHRoZSBFUlJQ X0FVVE9fUFJPUEFHQVRFIG1hY3JvLCBsaWtlIHRoaXM6CisgKgorICogICAgIGludCBvdXJfZnVu YyguLi4sIEVycm9yICoqZXJycCkgeworICogICAgICAgICBFUlJQX0FVVE9fUFJPUEFHQVRFKCk7 CisgKiAgICAgICAgIC4uLgorICogICAgICAgICBzdWJjYWxsKC4uLiwgZXJycCk7CisgKiAgICAg ICAgIGlmICgqZXJycCkgeworICogICAgICAgICAgICAgLi4uCisgKiAgICAgICAgICAgICByZXR1 cm4gLUVJTlZBTDsKKyAqICAgICAgICAgfQorICogICAgICAgICAuLi4KKyAqICAgICB9CisgKgor ICogRVJSUF9BVVRPX1BST1BBR0FURSB0YWtlcyBjYXJlIG9mIHdyYXBwaW5nIHRoZSBvcmlnaW5h bCBlcnJwIGFzIG5lZWRlZCwgc28KKyAqIHRoYXQgdGhlIHJlc3Qgb2YgdGhlIGZ1bmN0aW9uIGNh biBkaXJlY3RseSB1c2UgZXJycCAoaW5jbHVkaW5nCisgKiBkZXJlZmVyZW5jaW5nKSwgd2hlcmUg YW55IGVycm9ycyB3aWxsIHRoZW4gYmUgcHJvcGFnYXRlZCBvbiB0byB0aGUgb3JpZ2luYWwKKyAq IGVycnAgd2hlbiBsZWF2aW5nIHRoZSBmdW5jdGlvbi4KKyAqCisgKiBJbiBzb21lIGNhc2VzLCB3 ZSBuZWVkIHRvIGNoZWNrIHJlc3VsdCBvZiBzdWJjYWxsLCBidXQgZG8gbm90IHdhbnQgdG8KKyAq IHByb3BhZ2F0ZSB0aGUgRXJyb3Igb2JqZWN0IHRvIG91ciBjYWxsZXIuIEluIHN1Y2ggY2FzZXMg d2UgZG9uJ3QgbmVlZAorICogRVJSUF9BVVRPX1BST1BBR0FURSwgYnV0IGp1c3QgYSBsb2NhbCBF cnJvciBvYmplY3Q6CisgKgorICogUmVjZWl2ZSBhbiBlcnJvciBhbmQgbm90IHBhc3MgaXQ6CiAg KiAgICAgRXJyb3IgKmVyciA9IE5VTEw7Ci0gKiAgICAgZm9vKGFyZywgJmVycik7CisgKiAgICAg c3ViY2FsbChhcmcsICZlcnIpOwogICogICAgIGlmIChlcnIpIHsKICAqICAgICAgICAgaGFuZGxl IHRoZSBlcnJvci4uLgorICogICAgICAgICBlcnJvcl9mcmVlKGVycik7CiAgKiAgICAgfQogICoK KyAqIE5vdGUgdGhhdCBvbGRlciBjb2RlIHRoYXQgZGlkIG5vdCB1c2UgRVJSUF9BVVRPX1BST1BB R0FURSB3b3VsZCBpbnN0ZWFkIG5lZWQKKyAqIGEgbG9jYWwgRXJyb3IgKiB2YXJpYWJsZSBhbmQg dGhlIHVzZSBvZiBlcnJvcl9wcm9wYWdhdGUoKSB0byBwcm9wZXJseSBoYW5kbGUKKyAqIGFsbCBw b3NzaWJsZSBjYWxsZXIgdmFsdWVzIG9mIGVycnAuIE5vdyB0aGlzIGlzIERFUFJFQ0FURUQqIChz ZWUgYmVsb3cpLgorICoKKyAqIE5vdGUgdGhhdCBhbnkgZnVuY3Rpb24gdGhhdCB3YW50cyB0byBt b2RpZnkgYW4gZXJyb3Igb2JqZWN0LCBzdWNoIGFzIGJ5CisgKiBjYWxsaW5nIGVycm9yX2FwcGVu ZF9oaW50IG9yIGVycm9yX3ByZXBlbmQsIG11c3QgdXNlIEVSUlBfQVVUT19QUk9QQUdBVEUsIGlu CisgKiBvcmRlciBmb3IgYSBjYWxsZXIncyB1c2Ugb2YgJmVycm9yX2ZhdGFsIHRvIHNlZSB0aGUg YWRkaXRpb25hbCBpbmZvcm1hdGlvbi4KKyAqCisgKiBJbiByYXJlIGNhc2VzLCB3ZSBuZWVkIHRv IHBhc3MgZXhpc3RpbmcgRXJyb3Igb2JqZWN0IHRvIHRoZSBjYWxsZXIgYnkgaGFuZDoKKyAqICAg ICBlcnJvcl9wcm9wYWdhdGUoZXJycCwgZXJyKTsKKyAqCisgKiBQYXNzIGFuIGV4aXN0aW5nIGVy cm9yIHRvIHRoZSBjYWxsZXIgd2l0aCB0aGUgbWVzc2FnZSBtb2RpZmllZDoKKyAqICAgICBlcnJv cl9wcm9wYWdhdGVfcHJlcGVuZChlcnJwLCBlcnIpOworICoKKyAqCiAgKiBDYWxsIGEgZnVuY3Rp b24gaWdub3JpbmcgZXJyb3JzOgogICogICAgIGZvbyhhcmcsIE5VTEwpOwogICoKQEAgLTc4LDI2 ICsxNDMsNiBAQAogICogQ2FsbCBhIGZ1bmN0aW9uIHRyZWF0aW5nIGVycm9ycyBhcyBmYXRhbDoK ICAqICAgICBmb28oYXJnLCAmZXJyb3JfZmF0YWwpOwogICoKLSAqIFJlY2VpdmUgYW4gZXJyb3Ig YW5kIHBhc3MgaXQgb24gdG8gdGhlIGNhbGxlcjoKLSAqICAgICBFcnJvciAqZXJyID0gTlVMTDsK LSAqICAgICBmb28oYXJnLCAmZXJyKTsKLSAqICAgICBpZiAoZXJyKSB7Ci0gKiAgICAgICAgIGhh bmRsZSB0aGUgZXJyb3IuLi4KLSAqICAgICAgICAgZXJyb3JfcHJvcGFnYXRlKGVycnAsIGVycik7 Ci0gKiAgICAgfQotICogd2hlcmUgRXJyb3IgKiplcnJwIGlzIGEgcGFyYW1ldGVyLCBieSBjb252 ZW50aW9uIHRoZSBsYXN0IG9uZS4KLSAqCi0gKiBEbyAqbm90KiAib3B0aW1pemUiIHRoaXMgdG8K LSAqICAgICBmb28oYXJnLCBlcnJwKTsKLSAqICAgICBpZiAoKmVycnApIHsgLy8gV1JPTkchCi0g KiAgICAgICAgIGhhbmRsZSB0aGUgZXJyb3IuLi4KLSAqICAgICB9Ci0gKiBiZWNhdXNlIGVycnAg bWF5IGJlIE5VTEwhCi0gKgotICogQnV0IHdoZW4gYWxsIHlvdSBkbyB3aXRoIHRoZSBlcnJvciBp cyBwYXNzIGl0IG9uLCBwbGVhc2UgdXNlCi0gKiAgICAgZm9vKGFyZywgZXJycCk7Ci0gKiBmb3Ig cmVhZGFiaWxpdHkuCi0gKgogICogUmVjZWl2ZSBhbmQgYWNjdW11bGF0ZSBtdWx0aXBsZSBlcnJv cnMgKGZpcnN0IG9uZSB3aW5zKToKICAqICAgICBFcnJvciAqZXJyID0gTlVMTCwgKmxvY2FsX2Vy ciA9IE5VTEw7CiAgKiAgICAgZm9vKGFyZywgJmVycik7CkBAIC0xMTQsNiArMTU5LDYxIEBACiAg KiAgICAgICAgIGhhbmRsZSB0aGUgZXJyb3IuLi4KICAqICAgICB9CiAgKiBiZWNhdXNlIHRoaXMg bWF5IHBhc3MgYSBub24tbnVsbCBlcnIgdG8gYmFyKCkuCisgKgorICogREVQUkVDQVRFRCoKKyAq CisgKiBUaGUgZm9sbG93aW5nIHBhdHRlcm4gb2YgcmVjZWl2aW5nLCBjaGVja2luZywgYW5kIHRo ZW4gZm9yd2FyZGluZyBhbiBlcnJvcgorICogdG8gdGhlIGNhbGxlciBieSBoYW5kIGlzIG5vdyBk ZXByZWNhdGVkOgorICoKKyAqICAgICBFcnJvciAqZXJyID0gTlVMTDsKKyAqICAgICBmb28oYXJn LCAmZXJyKTsKKyAqICAgICBpZiAoZXJyKSB7CisgKiAgICAgICAgIGhhbmRsZSB0aGUgZXJyb3Iu Li4KKyAqICAgICAgICAgZXJyb3JfcHJvcGFnYXRlKGVycnAsIGVycik7CisgKiAgICAgfQorICoK KyAqIEluc3RlYWQsIHVzZSBFUlJQX0FVVE9fUFJPUEFHQVRFIG1hY3JvLgorICoKKyAqIFRoZSBv bGQgcGF0dGVybiBpcyBkZXByZWNhdGVkIGJlY2F1c2Ugb2YgdHdvIHRoaW5nczoKKyAqCisgKiAx LiBJc3N1ZSB3aXRoIGVycm9yX2Fib3J0IGFuZCBlcnJvcl9wcm9wYWdhdGU6IHdoZW4gd2Ugd3Jh cCBlcnJvcl9hYm9ydCBieQorICogbG9jYWxfZXJyK2Vycm9yX3Byb3BhZ2F0ZSwgdGhlIHJlc3Vs dGluZyBjb3JlZHVtcCB3aWxsIHJlZmVyIHRvCisgKiBlcnJvcl9wcm9wYWdhdGUgYW5kIG5vdCB0 byB0aGUgcGxhY2Ugd2hlcmUgZXJyb3IgaGFwcGVuZWQuCisgKgorICogMi4gQSBsb3Qgb2YgZXh0 cmEgY29kZSBvZiB0aGUgc2FtZSBwYXR0ZXJuCisgKgorICogSG93IHRvIHVwZGF0ZSBvbGQgY29k ZSB0byB1c2UgRVJSUF9BVVRPX1BST1BBR0FURT8KKyAqCisgKiBBbGwgeW91IG5lZWQgaXMgdG8g YWRkIEVSUlBfQVVUT19QUk9QQUdBVEUoKSBpbnZvY2F0aW9uIGF0IGZ1bmN0aW9uIHN0YXJ0LAor ICogdGhhbiB5b3UgbWF5IHNhZmVseSBkZXJlZmVyZW5jZSBlcnJwIHRvIGNoZWNrIGVycm9ycyBh bmQgZG8gbm90IG5lZWQgYW55CisgKiBhZGRpdGlvbmFsIGxvY2FsIEVycm9yIHZhcmlhYmxlcyBv ciBjYWxscyB0byBlcnJvcl9wcm9wYWdhdGUoKS4KKyAqCisgKiBFeGFtcGxlOgorICoKKyAqIG9s ZCBjb2RlCisgKgorICogICAgIHZvaWQgZm4oLi4uLCBFcnJvciAqKmVycnApIHsKKyAqICAgICAg ICAgRXJyb3IgKmVyciA9IE5VTEw7CisgKiAgICAgICAgIGZvbyhhcmcsICZlcnIpOworICogICAg ICAgICBpZiAoZXJyKSB7CisgKiAgICAgICAgICAgICBoYW5kbGUgdGhlIGVycm9yLi4uCisgKiAg ICAgICAgICAgICBlcnJvcl9wcm9wYWdhdGUoZXJycCwgZXJyKTsKKyAqICAgICAgICAgICAgIHJl dHVybjsKKyAqICAgICAgICAgfQorICogICAgICAgICAuLi4KKyAqICAgICB9CisgKgorICogdXBk YXRlZCBjb2RlCisgKgorICogICAgIHZvaWQgZm4oLi4uLCBFcnJvciAqKmVycnApIHsKKyAqICAg ICAgICAgRVJSUF9BVVRPX1BST1BBR0FURSgpOworICogICAgICAgICBmb28oYXJnLCBlcnJwKTsK KyAqICAgICAgICAgaWYgKCplcnJwKSB7CisgKiAgICAgICAgICAgICBoYW5kbGUgdGhlIGVycm9y Li4uCisgKiAgICAgICAgICAgICByZXR1cm47CisgKiAgICAgICAgIH0KKyAqICAgICAgICAgLi4u CisgKiAgICAgfQogICovCiAKICNpZm5kZWYgRVJST1JfSApAQCAtMzIyLDYgKzQyMiw0NyBAQCB2 b2lkIGVycm9yX3NldF9pbnRlcm5hbChFcnJvciAqKmVycnAsCiAgICAgICAgICAgICAgICAgICAg ICAgICBFcnJvckNsYXNzIGVycl9jbGFzcywgY29uc3QgY2hhciAqZm10LCAuLi4pCiAgICAgR0ND X0ZNVF9BVFRSKDYsIDcpOwogCit0eXBlZGVmIHN0cnVjdCBFcnJvclByb3BhZ2F0b3IgeworICAg IEVycm9yICpsb2NhbF9lcnI7CisgICAgRXJyb3IgKiplcnJwOworfSBFcnJvclByb3BhZ2F0b3I7 CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBlcnJvcl9wcm9wYWdhdG9yX2NsZWFudXAoRXJyb3JQcm9w YWdhdG9yICpwcm9wKQoreworICAgIGVycm9yX3Byb3BhZ2F0ZShwcm9wLT5lcnJwLCBwcm9wLT5s b2NhbF9lcnIpOworfQorCitHX0RFRklORV9BVVRPX0NMRUFOVVBfQ0xFQVJfRlVOQyhFcnJvclBy b3BhZ2F0b3IsIGVycm9yX3Byb3BhZ2F0b3JfY2xlYW51cCk7CisKKy8qCisgKiBFUlJQX0FVVE9f UFJPUEFHQVRFCisgKgorICogVGhpcyBtYWNybyBleGlzdHMgdG8gYXNzaXN0IHdpdGggcHJvcGVy IGVycm9yIGhhbmRsaW5nIGluIGEgZnVuY3Rpb24gd2hpY2gKKyAqIHVzZXMgYW4gRXJyb3IgKipl cnJwIHBhcmFtZXRlci4gIEl0IG11c3QgYmUgdXNlZCBhcyB0aGUgZmlyc3QgbGluZSBvZiBhCisg KiBmdW5jdGlvbiB3aGljaCBtb2RpZmllcyBhbiBlcnJvciAod2l0aCBlcnJvcl9wcmVwZW5kLCBl cnJvcl9hcHBlbmRfaGludCwgb3IKKyAqIHNpbWlsYXIpIG9yIHdoaWNoIHdhbnRzIHRvIGRlcmVm ZXJlbmNlICplcnJwLiAgSXQgaXMgc3RpbGwgc2FmZSAoYnV0CisgKiB1c2VsZXNzKSB0byB1c2Ug aW4gb3RoZXIgZnVuY3Rpb25zLgorICoKKyAqIElmIGVycnAgaXMgTlVMTCBvciBwb2ludHMgdG8g ZXJyb3JfZmF0YWwsIGl0IGlzIHJld3JpdHRlbiB0byBwb2ludCB0byBhCisgKiBsb2NhbCBFcnJv ciBvYmplY3QsIHdoaWNoIHdpbGwgYmUgYXV0b21hdGljYWxseSBwcm9wYWdhdGVkIHRvIHRoZSBv cmlnaW5hbAorICogZXJycCBvbiBmdW5jdGlvbiBleGl0IChzZWUgZXJyb3JfcHJvcGFnYXRvcl9j bGVhbnVwKS4KKyAqCisgKiBBZnRlciBpbnZvY2F0aW9uIG9mIHRoaXMgbWFjcm8gaXQgaXMgYWx3 YXlzIHNhZmUgdG8gZGVyZWZlcmVuY2UgZXJycAorICogKGFzIGl0J3Mgbm90IE5VTEwgYW55bW9y ZSkgYW5kIHRvIGFkZCBpbmZvcm1hdGlvbiBieSBlcnJvcl9wcmVwZW5kIG9yCisgKiBlcnJvcl9h cHBlbmRfaGludCAoYXMsIGlmIGl0IHdhcyBlcnJvcl9mYXRhbCwgd2Ugc3dhcHBlZCBpdCB3aXRo IGEKKyAqIGxvY2FsX2Vycm9yIHRvIGJlIHByb3BhZ2F0ZWQgb24gY2xlYW51cCkuCisgKgorICog Tm90ZTogd2UgZG9uJ3Qgd3JhcCB0aGUgZXJyb3JfYWJvcnQgY2FzZSwgYXMgd2Ugd2FudCByZXN1 bHRpbmcgY29yZWR1bXAKKyAqIHRvIHBvaW50IHRvIHRoZSBwbGFjZSB3aGVyZSB0aGUgZXJyb3Ig aGFwcGVuZWQsIG5vdCB0byBlcnJvcl9wcm9wYWdhdGUuCisgKi8KKyNkZWZpbmUgRVJSUF9BVVRP X1BST1BBR0FURSgpIFwKKyAgICBnX2F1dG8oRXJyb3JQcm9wYWdhdG9yKSBfYXV0b19lcnJwX3By b3AgPSB7LmVycnAgPSBlcnJwfTsgXAorICAgIGRvIHsgXAorICAgICAgICBpZiAoIWVycnAgfHwg ZXJycCA9PSAmZXJyb3JfZmF0YWwpIHsgXAorICAgICAgICAgICAgZXJycCA9ICZfYXV0b19lcnJw X3Byb3AubG9jYWxfZXJyOyBcCisgICAgICAgIH0gXAorICAgIH0gd2hpbGUgKDApCisKIC8qCiAg KiBTcGVjaWFsIGVycm9yIGRlc3RpbmF0aW9uIHRvIGFib3J0IG9uIGVycm9yLgogICogU2VlIGVy cm9yX3NldGcoKSBhbmQgZXJyb3JfcHJvcGFnYXRlKCkgZm9yIGRldGFpbHMuCi0tIAoyLjIxLjAK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs