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,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 09A29C7619F for ; Mon, 17 Feb 2020 11:18:12 +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 C1A532070B for ; Mon, 17 Feb 2020 11:18:11 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="Iq9NyMyQ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C1A532070B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none 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 1j3ePU-0006eg-Vk; Mon, 17 Feb 2020 11:17:56 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j3ePT-0006eR-4Y for xen-devel@lists.xenproject.org; Mon, 17 Feb 2020 11:17:55 +0000 X-Inumbo-ID: 1ed444fa-5177-11ea-bfcd-12813bfff9fa Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 1ed444fa-5177-11ea-bfcd-12813bfff9fa; Mon, 17 Feb 2020 11:17:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1581938265; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=UaBlz+mwGZS2zBixbjlDvSS6DGh/P+acs2cMV/souIg=; b=Iq9NyMyQ37wMY+bKsAGNNBONEYbLaVhC/97hJBE3TiZVG8INGoFYcGH5 aKb3N0SEQx4gnoXRdyaGCYyuObclDa88QnyZ1I4wkR4K+5XIkdl4M5jLL EPZpZuE4lUkNdIaztEThTfK7+37YTvDOCfIeN7FTkskX1fzHDaqA2Rhcr E=; Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=andrew.cooper3@citrix.com; spf=Pass smtp.mailfrom=Andrew.Cooper3@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa4.hc3370-68.iphmx.com: no sender authenticity information available from domain of andrew.cooper3@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa4.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="andrew.cooper3@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa4.hc3370-68.iphmx.com: domain of Andrew.Cooper3@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa4.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="Andrew.Cooper3@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ip4:168.245.78.127 ~all" Received-SPF: None (esa4.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa4.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: rVY5CSv3FG1+kZevZS0vE1vnK6B4VfawOOQd6kTJ5lt5Fie+u9T9xNYElxg+7MsRC1UxkTTBuy jJGaLkCTIZe0lP14ZryXaRAlKbHUxSCdaSJzsjkP3s60a+dQ/Yw3e4lP9Nx1PdWS4++aYKavq6 VqjBH0LT6zi4GPm98FELW14aq7TM6kMt4GpVJ6sxAgDdBTkCRP42+DEEjQh7i+dbCG+OBXjCx+ fSYNmcfFx8272bbf1QoHdVUUCnWpqLniXsdW/qu111WxWfgJyPtSEA/ErzjL4PD55tOPHOTOWf l3c= X-SBRS: 2.7 X-MesageID: 13181794 X-Ironport-Server: esa4.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.70,452,1574139600"; d="scan'208";a="13181794" From: Andrew Cooper To: Xen-devel Date: Mon, 17 Feb 2020 11:17:39 +0000 Message-ID: <20200217111740.7298-3-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20200217111740.7298-1-andrew.cooper3@citrix.com> References: <20200217111740.7298-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 2/3] xen: Move async_exception_* infrastructure into x86 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: Stefano Stabellini , Julien Grall , Wei Liu , Andrew Cooper , Jan Beulich , Volodymyr Babchuk , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhlIGFzeW5jX2V4Y2VwdGlvbl97c3RhdGUsbWFza30gaW5mcmFzdHJ1Y3R1cmUgaXMgaW1wbGVt ZW50ZWQgaW4gY29tbW9uIGNvZGUsCmJ1dCBpcyBsaW1pdGVkIHRvIHg4NiBiZWNhdXNlIG9mIHRo ZSBWQ1BVX1RSQVBfTEFTVCBpZmRlZi1hcnkuCgpUaGUgaW50ZXJuYWxzIGFyZSB2ZXJ5IHg4NiBz cGVjaWZpYyAoYW5kIGV2ZW4gdGhlbiwgaW4gbmVlZCBvZiBjb3JyZWN0aW9uKSwKYW5kIHdvbid0 IGJlIG9mIGludGVyZXN0IHRvIG90aGVyIGFyY2hpdGVjdHVyZXMuICBNb3ZlIGl0IGFsbCBpbnRv IHg4NgpzcGVjaWZpYyBjb2RlLgoKTm8gZnVuY3Rpb25hbCBjaGFuZ2UuCgpTaWduZWQtb2ZmLWJ5 OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0KQ0M6IEphbiBC ZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4KQ0M6IFdlaSBMaXUgPHdsQHhlbi5vcmc+CkNDOiBS b2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KQ0M6IFN0ZWZhbm8gU3RhYmVs bGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KQ0M6IEp1bGllbiBHcmFsbCA8anVsaWVuQHhl bi5vcmc+CkNDOiBWb2xvZHlteXIgQmFiY2h1ayA8Vm9sb2R5bXlyX0JhYmNodWtAZXBhbS5jb20+ Ci0tLQogeGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5jICAgIHwgIDIgKy0KIHhlbi9hcmNo L3g4Ni9jcHUvdnBtdS5jICAgICAgICAgICB8ICAyICstCiB4ZW4vYXJjaC94ODYvZG9tYWluLmMg ICAgICAgICAgICAgfCAxMiArKysrKysrKysrKysKIHhlbi9hcmNoL3g4Ni9kb21jdGwuYyAgICAg ICAgICAgICB8ICAyICstCiB4ZW4vYXJjaC94ODYvaHZtL2lycS5jICAgICAgICAgICAgfCAgOCAr KysrLS0tLQogeGVuL2FyY2gveDg2L2h2bS92aW9hcGljLmMgICAgICAgIHwgIDIgKy0KIHhlbi9h cmNoL3g4Ni9odm0vdmxhcGljLmMgICAgICAgICB8ICAyICstCiB4ZW4vYXJjaC94ODYvbm1pLmMg ICAgICAgICAgICAgICAgfCAgNCArKy0tCiB4ZW4vYXJjaC94ODYvb3Byb2ZpbGUvbm1pX2ludC5j ICAgfCAgMiArLQogeGVuL2FyY2gveDg2L3B2L2NhbGxiYWNrLmMgICAgICAgIHwgIDIgKy0KIHhl bi9hcmNoL3g4Ni9wdi9pcmV0LmMgICAgICAgICAgICB8IDEzICsrKysrKystLS0tLS0KIHhlbi9h cmNoL3g4Ni9wdi90cmFwcy5jICAgICAgICAgICB8ICAyICstCiB4ZW4vYXJjaC94ODYveDg2XzY0 L2FzbS1vZmZzZXRzLmMgfCAxMCArKysrKy0tLS0tCiB4ZW4vY29tbW9uL2RvbWFpbi5jICAgICAg ICAgICAgICAgfCAxNSAtLS0tLS0tLS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWlu LmggICAgICB8ICA4ICsrKysrKysrCiB4ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaCAgICAgICAgICAg fCAxMSAtLS0tLS0tLS0tLQogMTYgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgNTEg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5j IGIveGVuL2FyY2gveDg2L2NwdS9tY2hlY2svdm1jZS5jCmluZGV4IDRmNWRlMDdlMDEuLjgxNmVm NjFhZDQgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9jcHUvbWNoZWNrL3ZtY2UuYworKysgYi94 ZW4vYXJjaC94ODYvY3B1L21jaGVjay92bWNlLmMKQEAgLTQxMiw3ICs0MTIsNyBAQCBpbnQgaW5q ZWN0X3ZtY2Uoc3RydWN0IGRvbWFpbiAqZCwgaW50IHZjcHUpCiAKICAgICAgICAgaWYgKCAoaXNf aHZtX2RvbWFpbihkKSB8fAogICAgICAgICAgICAgICBwdl90cmFwX2NhbGxiYWNrX3JlZ2lzdGVy ZWQodiwgVFJBUF9tYWNoaW5lX2NoZWNrKSkgJiYKLSAgICAgICAgICAgICAhdGVzdF9hbmRfc2V0 X2Jvb2wodi0+bWNlX3BlbmRpbmcpICkKKyAgICAgICAgICAgICAhdGVzdF9hbmRfc2V0X2Jvb2wo di0+YXJjaC5tY2VfcGVuZGluZykgKQogICAgICAgICB7CiAgICAgICAgICAgICBtY2VfcHJpbnRr KE1DRV9WRVJCT1NFLCAiTUNFOiBpbmplY3Qgdk1DRSB0byAlcHZcbiIsIHYpOwogICAgICAgICAg ICAgdmNwdV9raWNrKHYpOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2NwdS92cG11LmMgYi94 ZW4vYXJjaC94ODYvY3B1L3ZwbXUuYwppbmRleCAzYzc3ODQ1MGFjLi5lNTBkNDc4ZDIzIDEwMDY0 NAotLS0gYS94ZW4vYXJjaC94ODYvY3B1L3ZwbXUuYworKysgYi94ZW4vYXJjaC94ODYvY3B1L3Zw bXUuYwpAQCAtMzI5LDcgKzMyOSw3IEBAIHZvaWQgdnBtdV9kb19pbnRlcnJ1cHQoc3RydWN0IGNw dV91c2VyX3JlZ3MgKnJlZ3MpCiAgICAgICAgIHZsYXBpY19zZXRfaXJxKHZsYXBpYywgdmxhcGlj X2x2dHBjICYgQVBJQ19WRUNUT1JfTUFTSywgMCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2Ug QVBJQ19NT0RFX05NSToKLSAgICAgICAgc2FtcGxpbmctPm5taV9wZW5kaW5nID0gMTsKKyAgICAg ICAgc2FtcGxpbmctPmFyY2gubm1pX3BlbmRpbmcgPSB0cnVlOwogICAgICAgICBicmVhazsKICAg ICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9kb21haW4uYyBiL3hlbi9hcmNo L3g4Ni9kb21haW4uYwppbmRleCA2NjE1MGFiZjRjLi5mZTYzYzIzNjc2IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYvZG9tYWluLmMKKysrIGIveGVuL2FyY2gveDg2L2RvbWFpbi5jCkBAIC0xMjQ2 LDYgKzEyNDYsMTAgQEAgaW50IGFyY2hfaW5pdGlhbGlzZV92Y3B1KHN0cnVjdCB2Y3B1ICp2LCBY RU5fR1VFU1RfSEFORExFX1BBUkFNKHZvaWQpIGFyZykKIAogaW50IGFyY2hfdmNwdV9yZXNldChz dHJ1Y3QgdmNwdSAqdikKIHsKKyAgICB2LT5hcmNoLmFzeW5jX2V4Y2VwdGlvbl9tYXNrID0gMDsK KyAgICBtZW1zZXQodi0+YXJjaC5hc3luY19leGNlcHRpb25fc3RhdGUsIDAsCisgICAgICAgICAg IHNpemVvZih2LT5hcmNoLmFzeW5jX2V4Y2VwdGlvbl9zdGF0ZSkpOworCiAgICAgaWYgKCBpc19w dl92Y3B1KHYpICkKICAgICB7CiAgICAgICAgIHB2X2Rlc3Ryb3lfZ2R0KHYpOwpAQCAtMTI2NCw2 ICsxMjY4LDE0IEBAIGFyY2hfZG9fdmNwdV9vcCgKIAogICAgIHN3aXRjaCAoIGNtZCApCiAgICAg eworICAgIGNhc2UgVkNQVU9QX3NlbmRfbm1pOgorICAgICAgICBpZiAoICFndWVzdF9oYW5kbGVf aXNfbnVsbChhcmcpICkKKyAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOworCisgICAgICAgIGlm ICggIXRlc3RfYW5kX3NldF9ib29sKHYtPmFyY2gubm1pX3BlbmRpbmcpICkKKyAgICAgICAgICAg IHZjcHVfa2ljayh2KTsKKyAgICAgICAgYnJlYWs7CisKICAgICBjYXNlIFZDUFVPUF9yZWdpc3Rl cl92Y3B1X3RpbWVfbWVtb3J5X2FyZWE6CiAgICAgewogICAgICAgICBzdHJ1Y3QgdmNwdV9yZWdp c3Rlcl90aW1lX21lbW9yeV9hcmVhIGFyZWE7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvZG9t Y3RsLmMgYi94ZW4vYXJjaC94ODYvZG9tY3RsLmMKaW5kZXggY2U3NmQ2ZDc3Ni4uZWQ4Njc2MmZh NiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2RvbWN0bC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9k b21jdGwuYwpAQCAtNjE0LDcgKzYxNCw3IEBAIGxvbmcgYXJjaF9kb19kb21jdGwoCiAgICAgICAg IHsKICAgICAgICAgY2FzZSBYRU5fRE9NQ1RMX1NFTkRUUklHR0VSX05NSToKICAgICAgICAgICAg IHJldCA9IDA7Ci0gICAgICAgICAgICBpZiAoICF0ZXN0X2FuZF9zZXRfYm9vbCh2LT5ubWlfcGVu ZGluZykgKQorICAgICAgICAgICAgaWYgKCAhdGVzdF9hbmRfc2V0X2Jvb2wodi0+YXJjaC5ubWlf cGVuZGluZykgKQogICAgICAgICAgICAgICAgIHZjcHVfa2ljayh2KTsKICAgICAgICAgICAgIGJy ZWFrOwogCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHZtL2lycS5jIGIveGVuL2FyY2gveDg2 L2h2bS9pcnEuYwppbmRleCBjNjg0NDIyYjI0Li5kZDIwMmFhYjVhIDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvaHZtL2lycS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0vaXJxLmMKQEAgLTUyNiwx MCArNTI2LDEwIEBAIHN0cnVjdCBodm1faW50YWNrIGh2bV92Y3B1X2hhc19wZW5kaW5nX2lycShz dHJ1Y3QgdmNwdSAqdikKICAgICAgKi8KICAgICB2bGFwaWNfc3luY19waXJfdG9faXJyKHYpOwog Ci0gICAgaWYgKCB1bmxpa2VseSh2LT5ubWlfcGVuZGluZykgKQorICAgIGlmICggdW5saWtlbHko di0+YXJjaC5ubWlfcGVuZGluZykgKQogICAgICAgICByZXR1cm4gaHZtX2ludGFja19ubWk7CiAK LSAgICBpZiAoIHVubGlrZWx5KHYtPm1jZV9wZW5kaW5nKSApCisgICAgaWYgKCB1bmxpa2VseSh2 LT5hcmNoLm1jZV9wZW5kaW5nKSApCiAgICAgICAgIHJldHVybiBodm1faW50YWNrX21jZTsKIAog ICAgIGlmICggKHBsYXQtPmlycS0+Y2FsbGJhY2tfdmlhX3R5cGUgPT0gSFZNSVJRX2NhbGxiYWNr X3ZlY3RvcikKQEAgLTU1NCwxMSArNTU0LDExIEBAIHN0cnVjdCBodm1faW50YWNrIGh2bV92Y3B1 X2Fja19wZW5kaW5nX2lycSgKICAgICBzd2l0Y2ggKCBpbnRhY2suc291cmNlICkKICAgICB7CiAg ICAgY2FzZSBodm1faW50c3JjX25taToKLSAgICAgICAgaWYgKCAhdGVzdF9hbmRfY2xlYXJfYm9v bCh2LT5ubWlfcGVuZGluZykgKQorICAgICAgICBpZiAoICF0ZXN0X2FuZF9jbGVhcl9ib29sKHYt PmFyY2gubm1pX3BlbmRpbmcpICkKICAgICAgICAgICAgIGludGFjayA9IGh2bV9pbnRhY2tfbm9u ZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBodm1faW50c3JjX21jZToKLSAgICAgICAgaWYg KCAhdGVzdF9hbmRfY2xlYXJfYm9vbCh2LT5tY2VfcGVuZGluZykgKQorICAgICAgICBpZiAoICF0 ZXN0X2FuZF9jbGVhcl9ib29sKHYtPmFyY2gubWNlX3BlbmRpbmcpICkKICAgICAgICAgICAgIGlu dGFjayA9IGh2bV9pbnRhY2tfbm9uZTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBodm1faW50 c3JjX3BpYzoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vdmlvYXBpYy5jIGIveGVuL2Fy Y2gveDg2L2h2bS92aW9hcGljLmMKaW5kZXggOWFlZWYzMmExNC4uYjg3ZmFjYjBlMCAxMDA2NDQK LS0tIGEveGVuL2FyY2gveDg2L2h2bS92aW9hcGljLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS92 aW9hcGljLmMKQEAgLTQ2OSw3ICs0NjksNyBAQCBzdGF0aWMgdm9pZCB2aW9hcGljX2RlbGl2ZXIo c3RydWN0IGh2bV92aW9hcGljICp2aW9hcGljLCB1bnNpZ25lZCBpbnQgcGluKQogICAgICAgICBm b3JfZWFjaF92Y3B1ICggZCwgdiApCiAgICAgICAgICAgICBpZiAoIHZsYXBpY19tYXRjaF9kZXN0 KHZjcHVfdmxhcGljKHYpLCBOVUxMLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAwLCBkZXN0LCBkZXN0X21vZGUpICYmCi0gICAgICAgICAgICAgICAgICF0ZXN0X2FuZF9zZXRf Ym9vbCh2LT5ubWlfcGVuZGluZykgKQorICAgICAgICAgICAgICAgICAhdGVzdF9hbmRfc2V0X2Jv b2wodi0+YXJjaC5ubWlfcGVuZGluZykgKQogICAgICAgICAgICAgICAgIHZjcHVfa2ljayh2KTsK ICAgICAgICAgYnJlYWs7CiAgICAgfQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS92bGFw aWMuYyBiL3hlbi9hcmNoL3g4Ni9odm0vdmxhcGljLmMKaW5kZXggYWNiOWRkZjQ2Zi4uMjY3MjZh NDMxMiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2bS92bGFwaWMuYworKysgYi94ZW4vYXJj aC94ODYvaHZtL3ZsYXBpYy5jCkBAIC0zNTUsNyArMzU1LDcgQEAgc3RhdGljIHZvaWQgdmxhcGlj X2FjY2VwdF9pcnEoc3RydWN0IHZjcHUgKnYsIHVpbnQzMl90IGljcl9sb3cpCiAgICAgICAgIGJy ZWFrOwogCiAgICAgY2FzZSBBUElDX0RNX05NSToKLSAgICAgICAgaWYgKCAhdGVzdF9hbmRfc2V0 X2Jvb2wodi0+bm1pX3BlbmRpbmcpICkKKyAgICAgICAgaWYgKCAhdGVzdF9hbmRfc2V0X2Jvb2wo di0+YXJjaC5ubWlfcGVuZGluZykgKQogICAgICAgICB7CiAgICAgICAgICAgICBib29sX3Qgd2Fr ZSA9IDA7CiAgICAgICAgICAgICBkb21haW5fbG9jayh2LT5kb21haW4pOwpkaWZmIC0tZ2l0IGEv eGVuL2FyY2gveDg2L25taS5jIGIveGVuL2FyY2gveDg2L25taS5jCmluZGV4IDYzODY3N2E1ZmUu LjAzOTBkOWIwYjQgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9ubWkuYworKysgYi94ZW4vYXJj aC94ODYvbm1pLmMKQEAgLTU5OSw4ICs1OTksOCBAQCBzdGF0aWMgdm9pZCBkb19ubWlfc3RhdHMo dW5zaWduZWQgY2hhciBrZXkpCiAgICAgICAgICAhKHYgPSBoYXJkd2FyZV9kb21haW4tPnZjcHVb MF0pICkKICAgICAgICAgcmV0dXJuOwogCi0gICAgcGVuZCA9IHYtPm5taV9wZW5kaW5nOwotICAg IG1hc2sgPSB2LT5hc3luY19leGNlcHRpb25fbWFzayAmICgxIDw8IFZDUFVfVFJBUF9OTUkpOwor ICAgIHBlbmQgPSB2LT5hcmNoLm5taV9wZW5kaW5nOworICAgIG1hc2sgPSB2LT5hcmNoLmFzeW5j X2V4Y2VwdGlvbl9tYXNrICYgKDEgPDwgVkNQVV9UUkFQX05NSSk7CiAgICAgaWYgKCBwZW5kIHx8 IG1hc2sgKQogICAgICAgICBwcmludGsoIiVwdjogTk1JJXMlc1xuIiwKICAgICAgICAgICAgICAg IHYsIHBlbmQgPyAiIHBlbmRpbmciIDogIiIsIG1hc2sgPyAiIG1hc2tlZCIgOiAiIik7CmRpZmYg LS1naXQgYS94ZW4vYXJjaC94ODYvb3Byb2ZpbGUvbm1pX2ludC5jIGIveGVuL2FyY2gveDg2L29w cm9maWxlL25taV9pbnQuYwppbmRleCA4Zjk3Zjc1MjJjLi4yOTY5ZGI0N2ZjIDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvb3Byb2ZpbGUvbm1pX2ludC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9vcHJv ZmlsZS9ubWlfaW50LmMKQEAgLTkzLDcgKzkzLDcgQEAgc3RhdGljIGludCBubWlfY2FsbGJhY2so Y29uc3Qgc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MsIGludCBjcHUpCiAJCXNlbmRfZ3Vlc3Rf dmNwdV92aXJxKGN1cnJlbnQsIFZJUlFfWEVOT1BST0YpOwogCiAJaWYgKCBvdmYgPT0gMiApCi0g ICAgICAgICAgICAgICAgY3VycmVudC0+bm1pX3BlbmRpbmcgPSAxOworCQljdXJyZW50LT5hcmNo Lm5taV9wZW5kaW5nID0gdHJ1ZTsKIAlyZXR1cm4gMTsKIH0KIApkaWZmIC0tZ2l0IGEveGVuL2Fy Y2gveDg2L3B2L2NhbGxiYWNrLmMgYi94ZW4vYXJjaC94ODYvcHYvY2FsbGJhY2suYwppbmRleCAx MTc4ZWZkZGI2Li4xMDZjMTZlZDAxIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvcHYvY2FsbGJh Y2suYworKysgYi94ZW4vYXJjaC94ODYvcHYvY2FsbGJhY2suYwpAQCAtNTIsNyArNTIsNyBAQCBz dGF0aWMgaW50IHJlZ2lzdGVyX2d1ZXN0X25taV9jYWxsYmFjayh1bnNpZ25lZCBsb25nIGFkZHJl c3MpCiAgICAgICogbm93LgogICAgICAqLwogICAgIGlmICggY3Vyci0+dmNwdV9pZCA9PSAwICYm IGFyY2hfZ2V0X25taV9yZWFzb24oZCkgIT0gMCApCi0gICAgICAgIGN1cnItPm5taV9wZW5kaW5n ID0gMTsKKyAgICAgICAgY3Vyci0+YXJjaC5ubWlfcGVuZGluZyA9IHRydWU7CiAKICAgICByZXR1 cm4gMDsKIH0KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9wdi9pcmV0LmMgYi94ZW4vYXJjaC94 ODYvcHYvaXJldC5jCmluZGV4IDE2YjQ0OWZmNjQuLjllMzRiNjE2ZjkgMTAwNjQ0Ci0tLSBhL3hl bi9hcmNoL3g4Ni9wdi9pcmV0LmMKKysrIGIveGVuL2FyY2gveDg2L3B2L2lyZXQuYwpAQCAtMjcs MTUgKzI3LDE1IEBAIHN0YXRpYyB2b2lkIGFzeW5jX2V4Y2VwdGlvbl9jbGVhbnVwKHN0cnVjdCB2 Y3B1ICpjdXJyKQogewogICAgIHVuc2lnbmVkIGludCB0cmFwOwogCi0gICAgaWYgKCAhY3Vyci0+ YXN5bmNfZXhjZXB0aW9uX21hc2sgKQorICAgIGlmICggIWN1cnItPmFyY2guYXN5bmNfZXhjZXB0 aW9uX21hc2sgKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoICEoY3Vyci0+YXN5bmNfZXhj ZXB0aW9uX21hc2sgJiAoY3Vyci0+YXN5bmNfZXhjZXB0aW9uX21hc2sgLSAxKSkgKQotICAgICAg ICB0cmFwID0gX19zY2FuYml0KGN1cnItPmFzeW5jX2V4Y2VwdGlvbl9tYXNrLCBWQ1BVX1RSQVBf Tk9ORSk7CisgICAgaWYgKCAhKGN1cnItPmFyY2guYXN5bmNfZXhjZXB0aW9uX21hc2sgJiAoY3Vy ci0+YXJjaC5hc3luY19leGNlcHRpb25fbWFzayAtIDEpKSApCisgICAgICAgIHRyYXAgPSBfX3Nj YW5iaXQoY3Vyci0+YXJjaC5hc3luY19leGNlcHRpb25fbWFzaywgVkNQVV9UUkFQX05PTkUpOwog ICAgIGVsc2UKICAgICAgICAgZm9yICggdHJhcCA9IFZDUFVfVFJBUF9OT05FICsgMTsgdHJhcCA8 PSBWQ1BVX1RSQVBfTEFTVDsgKyt0cmFwICkKLSAgICAgICAgICAgIGlmICggKGN1cnItPmFzeW5j X2V4Y2VwdGlvbl9tYXNrIF4KLSAgICAgICAgICAgICAgICAgIGN1cnItPmFzeW5jX2V4Y2VwdGlv bl9zdGF0ZSh0cmFwKS5vbGRfbWFzaykgPT0gKDF1IDw8IHRyYXApICkKKyAgICAgICAgICAgIGlm ICggKGN1cnItPmFyY2guYXN5bmNfZXhjZXB0aW9uX21hc2sgXgorICAgICAgICAgICAgICAgICAg Y3Vyci0+YXJjaC5hc3luY19leGNlcHRpb25fc3RhdGUodHJhcCkub2xkX21hc2spID09ICgxdSA8 PCB0cmFwKSApCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgaWYgKCB1bmxpa2VseSh0cmFw ID4gVkNQVV9UUkFQX0xBU1QpICkKICAgICB7CkBAIC00NCw3ICs0NCw4IEBAIHN0YXRpYyB2b2lk IGFzeW5jX2V4Y2VwdGlvbl9jbGVhbnVwKHN0cnVjdCB2Y3B1ICpjdXJyKQogICAgIH0KIAogICAg IC8qIFJlc3RvcmUgcHJldmlvdXMgYXN5bmNocm9ub3VzIGV4Y2VwdGlvbiBtYXNrLiAqLwotICAg IGN1cnItPmFzeW5jX2V4Y2VwdGlvbl9tYXNrID0gY3Vyci0+YXN5bmNfZXhjZXB0aW9uX3N0YXRl KHRyYXApLm9sZF9tYXNrOworICAgIGN1cnItPmFyY2guYXN5bmNfZXhjZXB0aW9uX21hc2sgPQor ICAgICAgICBjdXJyLT5hcmNoLmFzeW5jX2V4Y2VwdGlvbl9zdGF0ZSh0cmFwKS5vbGRfbWFzazsK IH0KIAogdW5zaWduZWQgbG9uZyBkb19pcmV0KHZvaWQpCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94 ODYvcHYvdHJhcHMuYyBiL3hlbi9hcmNoL3g4Ni9wdi90cmFwcy5jCmluZGV4IDk1MGNmMjViNGEu LmQ5N2ViZjc4OTAgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi90cmFwcy5jCisrKyBiL3hl bi9hcmNoL3g4Ni9wdi90cmFwcy5jCkBAIC0xNzYsNyArMTc2LDcgQEAgaW50IHB2X3JhaXNlX25t aShzdHJ1Y3QgdmNwdSAqdikKIAogICAgIGlmICggY21weGNoZ3B0cih2X3B0ciwgTlVMTCwgdikg KQogICAgICAgICByZXR1cm4gLUVCVVNZOwotICAgIGlmICggIXRlc3RfYW5kX3NldF9ib29sKHYt Pm5taV9wZW5kaW5nKSApCisgICAgaWYgKCAhdGVzdF9hbmRfc2V0X2Jvb2wodi0+YXJjaC5ubWlf cGVuZGluZykgKQogICAgIHsKICAgICAgICAgLyogTm90IHNhZmUgdG8gd2FrZSB1cCBhIHZjcHUg aGVyZSAqLwogICAgICAgICByYWlzZV9zb2Z0aXJxKE5NSV9TT0ZUSVJRKTsKZGlmZiAtLWdpdCBh L3hlbi9hcmNoL3g4Ni94ODZfNjQvYXNtLW9mZnNldHMuYyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQv YXNtLW9mZnNldHMuYwppbmRleCAwN2QyMTU1YmY1Li5iOGU4NTEwNDM5IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYveDg2XzY0L2FzbS1vZmZzZXRzLmMKKysrIGIveGVuL2FyY2gveDg2L3g4Nl82 NC9hc20tb2Zmc2V0cy5jCkBAIC03MiwxMSArNzIsMTEgQEAgdm9pZCBfX2R1bW15X18odm9pZCkK ICAgICBPRkZTRVQoVkNQVV9ndWVzdF9jb250ZXh0X2ZsYWdzLCBzdHJ1Y3QgdmNwdSwgYXJjaC5w di52Z2NfZmxhZ3MpOwogICAgIE9GRlNFVChWQ1BVX2NyMywgc3RydWN0IHZjcHUsIGFyY2guY3Iz KTsKICAgICBPRkZTRVQoVkNQVV9hcmNoX21zcnMsIHN0cnVjdCB2Y3B1LCBhcmNoLm1zcnMpOwot ICAgIE9GRlNFVChWQ1BVX25taV9wZW5kaW5nLCBzdHJ1Y3QgdmNwdSwgbm1pX3BlbmRpbmcpOwot ICAgIE9GRlNFVChWQ1BVX21jZV9wZW5kaW5nLCBzdHJ1Y3QgdmNwdSwgbWNlX3BlbmRpbmcpOwot ICAgIE9GRlNFVChWQ1BVX25taV9vbGRfbWFzaywgc3RydWN0IHZjcHUsIG5taV9zdGF0ZS5vbGRf bWFzayk7Ci0gICAgT0ZGU0VUKFZDUFVfbWNlX29sZF9tYXNrLCBzdHJ1Y3QgdmNwdSwgbWNlX3N0 YXRlLm9sZF9tYXNrKTsKLSAgICBPRkZTRVQoVkNQVV9hc3luY19leGNlcHRpb25fbWFzaywgc3Ry dWN0IHZjcHUsIGFzeW5jX2V4Y2VwdGlvbl9tYXNrKTsKKyAgICBPRkZTRVQoVkNQVV9ubWlfcGVu ZGluZywgc3RydWN0IHZjcHUsIGFyY2gubm1pX3BlbmRpbmcpOworICAgIE9GRlNFVChWQ1BVX21j ZV9wZW5kaW5nLCBzdHJ1Y3QgdmNwdSwgYXJjaC5tY2VfcGVuZGluZyk7CisgICAgT0ZGU0VUKFZD UFVfbm1pX29sZF9tYXNrLCBzdHJ1Y3QgdmNwdSwgYXJjaC5ubWlfc3RhdGUub2xkX21hc2spOwor ICAgIE9GRlNFVChWQ1BVX21jZV9vbGRfbWFzaywgc3RydWN0IHZjcHUsIGFyY2gubWNlX3N0YXRl Lm9sZF9tYXNrKTsKKyAgICBPRkZTRVQoVkNQVV9hc3luY19leGNlcHRpb25fbWFzaywgc3RydWN0 IHZjcHUsIGFyY2guYXN5bmNfZXhjZXB0aW9uX21hc2spOwogICAgIERFRklORShWQ1BVX1RSQVBf Tk1JLCBWQ1BVX1RSQVBfTk1JKTsKICAgICBERUZJTkUoVkNQVV9UUkFQX01DRSwgVkNQVV9UUkFQ X01DRSk7CiAgICAgREVGSU5FKF9WR0NGX3N5c2NhbGxfZGlzYWJsZXNfZXZlbnRzLCAgX1ZHQ0Zf c3lzY2FsbF9kaXNhYmxlc19ldmVudHMpOwpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9kb21haW4u YyBiL3hlbi9jb21tb24vZG9tYWluLmMKaW5kZXggMGFlMDRkNWJiOS4uNmFkNDU4ZmE2YiAxMDA2 NDQKLS0tIGEveGVuL2NvbW1vbi9kb21haW4uYworKysgYi94ZW4vY29tbW9uL2RvbWFpbi5jCkBA IC0xMTk5LDEwICsxMTk5LDYgQEAgaW50IHZjcHVfcmVzZXQoc3RydWN0IHZjcHUgKnYpCiAgICAg di0+ZnB1X2luaXRpYWxpc2VkID0gMDsKICAgICB2LT5mcHVfZGlydGllZCAgICAgPSAwOwogICAg IHYtPmlzX2luaXRpYWxpc2VkICA9IDA7Ci0jaWZkZWYgVkNQVV9UUkFQX0xBU1QKLSAgICB2LT5h c3luY19leGNlcHRpb25fbWFzayA9IDA7Ci0gICAgbWVtc2V0KHYtPmFzeW5jX2V4Y2VwdGlvbl9z dGF0ZSwgMCwgc2l6ZW9mKHYtPmFzeW5jX2V4Y2VwdGlvbl9zdGF0ZSkpOwotI2VuZGlmCiAgICAg aWYgKCB2LT5hZmZpbml0eV9icm9rZW4gJiBWQ1BVX0FGRklOSVRZX09WRVJSSURFICkKICAgICAg ICAgdmNwdV90ZW1wb3JhcnlfYWZmaW5pdHkodiwgTlJfQ1BVUywgVkNQVV9BRkZJTklUWV9PVkVS UklERSk7CiAgICAgaWYgKCB2LT5hZmZpbml0eV9icm9rZW4gJiBWQ1BVX0FGRklOSVRZX1dBSVQg KQpAQCAtMTUxMSwxNyArMTUwNyw2IEBAIGxvbmcgZG9fdmNwdV9vcChpbnQgY21kLCB1bnNpZ25l ZCBpbnQgdmNwdWlkLCBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHZvaWQpIGFyZykKICAgICAgICAg YnJlYWs7CiAgICAgfQogCi0jaWZkZWYgVkNQVV9UUkFQX05NSQotICAgIGNhc2UgVkNQVU9QX3Nl bmRfbm1pOgotICAgICAgICBpZiAoICFndWVzdF9oYW5kbGVfaXNfbnVsbChhcmcpICkKLSAgICAg ICAgICAgIHJldHVybiAtRUlOVkFMOwotCi0gICAgICAgIGlmICggIXRlc3RfYW5kX3NldF9ib29s KHYtPm5taV9wZW5kaW5nKSApCi0gICAgICAgICAgICB2Y3B1X2tpY2sodik7Ci0KLSAgICAgICAg YnJlYWs7Ci0jZW5kaWYKLQogICAgIGRlZmF1bHQ6CiAgICAgICAgIHJjID0gYXJjaF9kb192Y3B1 X29wKGNtZCwgdiwgYXJnKTsKICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVk ZS9hc20teDg2L2RvbWFpbi5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaAppbmRleCAx ODQzYzc2ZDFhLi4xMDVhZGY5NmViIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2Rv bWFpbi5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKQEAgLTE5LDYgKzE5LDcg QEAKICNkZWZpbmUgaXNfaHZtX3B2X2V2dGNobl92Y3B1KHYpIChpc19odm1fcHZfZXZ0Y2huX2Rv bWFpbih2LT5kb21haW4pKQogI2RlZmluZSBpc19kb21haW5fZGlyZWN0X21hcHBlZChkKSAoKHZv aWQpKGQpLCAwKQogCisjZGVmaW5lIFZDUFVfVFJBUF9OT05FICAgICAgICAgMAogI2RlZmluZSBW Q1BVX1RSQVBfTk1JICAgICAgICAgIDEKICNkZWZpbmUgVkNQVV9UUkFQX01DRSAgICAgICAgICAy CiAjZGVmaW5lIFZDUFVfVFJBUF9MQVNUICAgICAgICAgVkNQVV9UUkFQX01DRQpAQCAtNTU2LDYg KzU1NywxMyBAQCBzdHJ1Y3QgYXJjaF92Y3B1CiAKICAgICBzdHJ1Y3QgdnBtdV9zdHJ1Y3QgdnBt dTsKIAorICAgIHN0cnVjdCB7CisgICAgICAgIGJvb2wgICAgcGVuZGluZzsKKyAgICAgICAgdWlu dDhfdCBvbGRfbWFzazsKKyAgICB9IGFzeW5jX2V4Y2VwdGlvbl9zdGF0ZVtWQ1BVX1RSQVBfTEFT VF07CisjZGVmaW5lIGFzeW5jX2V4Y2VwdGlvbl9zdGF0ZSh0KSBhc3luY19leGNlcHRpb25fc3Rh dGVbKHQpLTFdCisgICAgdWludDhfdCBhc3luY19leGNlcHRpb25fbWFzazsKKwogICAgIC8qIFZp cnR1YWwgTWFjaGluZSBFeHRlbnNpb25zICovCiAgICAgdW5pb24gewogICAgICAgICBzdHJ1Y3Qg cHZfdmNwdSBwdjsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9zY2hlZC5oIGIveGVuL2lu Y2x1ZGUveGVuL3NjaGVkLmgKaW5kZXggMjFiNWY0Y2ViZC4uM2E0ZjQzMDk4YyAxMDA2NDQKLS0t IGEveGVuL2luY2x1ZGUveGVuL3NjaGVkLmgKKysrIGIveGVuL2luY2x1ZGUveGVuL3NjaGVkLmgK QEAgLTE5MSwxNyArMTkxLDYgQEAgc3RydWN0IHZjcHUKICAgICBib29sICAgICAgICAgICAgIGlz X3VyZ2VudDsKICAgICAvKiBWQ1BVIG11c3QgY29udGV4dF9zd2l0Y2ggd2l0aG91dCBzY2hlZHVs aW5nIHVuaXQuICovCiAgICAgYm9vbCAgICAgICAgICAgICBmb3JjZV9jb250ZXh0X3N3aXRjaDsK LQotI2lmZGVmIFZDUFVfVFJBUF9MQVNUCi0jZGVmaW5lIFZDUFVfVFJBUF9OT05FICAgIDAKLSAg ICBzdHJ1Y3QgewotICAgICAgICBib29sICAgICAgICAgICAgIHBlbmRpbmc7Ci0gICAgICAgIHVp bnQ4X3QgICAgICAgICAgb2xkX21hc2s7Ci0gICAgfSAgICAgICAgICAgICAgICBhc3luY19leGNl cHRpb25fc3RhdGVbVkNQVV9UUkFQX0xBU1RdOwotI2RlZmluZSBhc3luY19leGNlcHRpb25fc3Rh dGUodCkgYXN5bmNfZXhjZXB0aW9uX3N0YXRlWyh0KS0xXQotICAgIHVpbnQ4X3QgICAgICAgICAg YXN5bmNfZXhjZXB0aW9uX21hc2s7Ci0jZW5kaWYKLQogICAgIC8qIFJlcXVpcmUgc2h1dGRvd24g dG8gYmUgZGVmZXJyZWQgZm9yIHNvbWUgYXN5bmNocm9ub3VzIG9wZXJhdGlvbj8gKi8KICAgICBi b29sICAgICAgICAgICAgIGRlZmVyX3NodXRkb3duOwogICAgIC8qIFZDUFUgaXMgcGF1c2VkIGZv bGxvd2luZyBzaHV0ZG93biByZXF1ZXN0IChkLT5pc19zaHV0dGluZ19kb3duKT8gKi8KLS0gCjIu MTEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBz Oi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=