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=-8.3 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,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 4BDE9C48BE0 for ; Thu, 20 Jun 2019 00:31:40 +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 1723C208CB for ; Thu, 20 Jun 2019 00:31:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="sComS17b" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1723C208CB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.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 1hdkz9-0000C5-7X; Thu, 20 Jun 2019 00:31:27 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hdkz8-0000BY-NB for xen-devel@lists.xenproject.org; Thu, 20 Jun 2019 00:31:26 +0000 X-Inumbo-ID: bc8c530a-92f2-11e9-8980-bc764e045a96 Received: from mail-io1-xd44.google.com (unknown [2607:f8b0:4864:20::d44]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id bc8c530a-92f2-11e9-8980-bc764e045a96; Thu, 20 Jun 2019 00:31:25 +0000 (UTC) Received: by mail-io1-xd44.google.com with SMTP id u13so339601iop.0 for ; Wed, 19 Jun 2019 17:31:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=u5ozOMfbSbMk3JbLlaojba34kLKjKijBWc0CEO34nXY=; b=sComS17bxzMmbpt5Hx4GYNzMVvgCRLTjxdVBUJhNZsMOP/vh9IxmUsYBaUcDphdyLq eOOaRiYOhYVBDVv0mppotFDZA7+0mUe4RhLBCGUelaZVXqZEqwp1oa7TNTskltbNdUYL AK9FJ/MjPRy9zRRqqavxtiQsstOsHa4S3c1Slo4f8+fASb+fItjdZ8JfUk2TDeYlkpIA XeGPWBGJdmz7xFd7n2Mt3xuhuLxPHFYZmQ9f6qV1/fhpq6+YUOQo1KqlDSGoAOEPdKzk zoY2qvNY77G3bOSfQcnkWIY0szK6ok5jpofZ4WTYVjikw5IVE8rbliQX1RHhTbA9RSMg gAIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=u5ozOMfbSbMk3JbLlaojba34kLKjKijBWc0CEO34nXY=; b=fX5K8dJ61tROVOAJWLFX0VZhgihhoWEE0agDUYaw+FqqfafpFvuQMzHOMahhwIAKzn n35HUyBjzTt0PltlFq2DzzJle9cMCD9fTapQXtM43K/QyjFJhQE/WI8Sn+Otr2o68PpT 6cgNkdVMftuTSYDAOJBQPwQ7pS4aCko0VS8kAIWdY0GdFH+hVdKPeemfIU/wRSLLbKge Jx7qem6qcE61SOrebNmMDscnTIL7YUHOBjCBzbH4ZVFpVk+8dpRaxWOos6nEPOZ+HT+Y 7WuHXlAtjAGyxobgmLxtATQ+cf5oF0Ye2xmmB2BeZ57y4yG6AT3dskZdh6rP/fTCKUoL 8OpA== X-Gm-Message-State: APjAAAXbIELJcGAfVuIiocE4NdsHXwMIcXpqScwEJ44ebdnQ3xVv6acl iajDp+8g6Y0Oa9/s8JtDx0XKw/nPj8Q= X-Google-Smtp-Source: APXvYqx0XM2egyArVGjPpsAqYTm7bPgbBiwBAfUFKBfyNYjGi7RHTYeIoZi1FJy227xYyvsmsGo6rw== X-Received: by 2002:a02:cc8e:: with SMTP id s14mr13086375jap.142.1560990684590; Wed, 19 Jun 2019 17:31:24 -0700 (PDT) Received: from desktop.ice.pyrology.org (static-50-53-74-115.bvtn.or.frontiernet.net. [50.53.74.115]) by smtp.gmail.com with ESMTPSA id e188sm22579016ioa.3.2019.06.19.17.31.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 19 Jun 2019 17:31:23 -0700 (PDT) From: Christopher Clark To: xen-devel@lists.xenproject.org Date: Wed, 19 Jun 2019 17:30:49 -0700 Message-Id: <20190620003053.21993-6-christopher.w.clark@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190620003053.21993-1-christopher.w.clark@gmail.com> References: <20190620003053.21993-1-christopher.w.clark@gmail.com> Subject: [Xen-devel] [RFC 5/9] x86/nested, xsm: add nested_memory_op hypercall 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: Juergen Gross , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Rich Persaud , Tim Deegan , Julien Grall , Jan Beulich , Daniel De Graaf , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" UHJvdmlkZXMgcHJveHlpbmcgdG8gdGhlIGhvc3QgaHlwZXJ2aXNvciBmb3IgdGhlIFhFTk1FTV9h ZGRfdG9fcGh5c21hcCBvcApvbmx5IGZvciB0aGUgWEVOTUFQU1BBQ0Vfc2hhcmVkX2luZm8gYW5k IFhFTk1BUFNQQUNFX2dyYW50X3RhYmxlIHNwYWNlcywKZm9yIERPTUlEX1NFTEYuCgpCb3RoIGNv bXBhdCBhbmQgbmF0aXZlIGVudHJ5IHBvaW50cy4KClNpZ25lZC1vZmYtYnk6IENocmlzdG9waGVy IENsYXJrIDxjaHJpc3RvcGhlci5jbGFya0BzdGFybGFiLmlvPgotLS0KIHRvb2xzL2ZsYXNrL3Bv bGljeS9tb2R1bGVzL2RvbTAudGUgIHwgIDEgKwogeGVuL2FyY2gveDg2L2d1ZXN0L2h5cGVyY2Fs bF9wYWdlLlMgfCAgMSArCiB4ZW4vYXJjaC94ODYvZ3Vlc3QveGVuLW5lc3RlZC5jICAgICB8IDgw ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC94ODYvaHlwZXJjYWxsLmMg ICAgICAgICAgICB8ICAxICsKIHhlbi9hcmNoL3g4Ni9wdi9oeXBlcmNhbGwuYyAgICAgICAgIHwg IDEgKwogeGVuL2luY2x1ZGUvcHVibGljL3hlbi5oICAgICAgICAgICAgfCAgMSArCiB4ZW4vaW5j bHVkZS94ZW4vaHlwZXJjYWxsLmggICAgICAgICB8IDEwICsrKysKIHhlbi9pbmNsdWRlL3hzbS9k dW1teS5oICAgICAgICAgICAgIHwgIDcgKysrCiB4ZW4vaW5jbHVkZS94c20veHNtLmggICAgICAg ICAgICAgICB8ICA3ICsrKwogeGVuL3hzbS9kdW1teS5jICAgICAgICAgICAgICAgICAgICAgfCAg MSArCiB4ZW4veHNtL2ZsYXNrL2hvb2tzLmMgICAgICAgICAgICAgICB8IDE1ICsrKysrKwogMTEg ZmlsZXMgY2hhbmdlZCwgMTI1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90b29scy9mbGFz ay9wb2xpY3kvbW9kdWxlcy9kb20wLnRlIGIvdG9vbHMvZmxhc2svcG9saWN5L21vZHVsZXMvZG9t MC50ZQppbmRleCA5ZWQ3Y2NiNTdiLi4xZjU2NGZmODNiIDEwMDY0NAotLS0gYS90b29scy9mbGFz ay9wb2xpY3kvbW9kdWxlcy9kb20wLnRlCisrKyBiL3Rvb2xzL2ZsYXNrL3BvbGljeS9tb2R1bGVz L2RvbTAudGUKQEAgLTQ1LDYgKzQ1LDcgQEAgYWxsb3cgZG9tMF90IGRvbTBfdDpyZXNvdXJjZSB7 IGFkZCByZW1vdmUgfTsKIAogIyBBbGxvdyBkb20wIHRvIGNvbW11bmljYXRlIHdpdGggYSBuZXN0 ZWQgWGVuIGh5cGVydmlzb3IKIGFsbG93IGRvbTBfdCBuZXN0ZWR4ZW5fdDp2ZXJzaW9uIHsgeGVu X3ZlcnNpb24geGVuX2dldF9mZWF0dXJlcyB9OworYWxsb3cgZG9tMF90IG5lc3RlZHhlbl90Om1t dSBwaHlzbWFwOwogCiAjIFRoZXNlIHBlcm1pc3Npb25zIGFsbG93IHVzaW5nIHRoZSBGTEFTSyBz ZWN1cml0eSBzZXJ2ZXIgdG8gY29tcHV0ZSBhY2Nlc3MKICMgY2hlY2tzIGxvY2FsbHksIHdoaWNo IGNvdWxkIGJlIHVzZWQgYnkgYSBkb21haW4gb3Igc2VydmljZSAoc3VjaCBhcyB4ZW5zdG9yZSkK ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9ndWVzdC9oeXBlcmNhbGxfcGFnZS5TIGIveGVuL2Fy Y2gveDg2L2d1ZXN0L2h5cGVyY2FsbF9wYWdlLlMKaW5kZXggMmIxZTM1ODAzYS4uMWE4ZGQwZWE0 ZiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2d1ZXN0L2h5cGVyY2FsbF9wYWdlLlMKKysrIGIv eGVuL2FyY2gveDg2L2d1ZXN0L2h5cGVyY2FsbF9wYWdlLlMKQEAgLTYxLDYgKzYxLDcgQEAgREVD TEFSRV9IWVBFUkNBTEwoa2V4ZWNfb3ApCiBERUNMQVJFX0hZUEVSQ0FMTChhcmdvX29wKQogREVD TEFSRV9IWVBFUkNBTEwoeGVucG11X29wKQogREVDTEFSRV9IWVBFUkNBTEwobmVzdGVkX3hlbl92 ZXJzaW9uKQorREVDTEFSRV9IWVBFUkNBTEwobmVzdGVkX21lbW9yeV9vcCkKIAogREVDTEFSRV9I WVBFUkNBTEwoYXJjaF8wKQogREVDTEFSRV9IWVBFUkNBTEwoYXJjaF8xKQpkaWZmIC0tZ2l0IGEv eGVuL2FyY2gveDg2L2d1ZXN0L3hlbi1uZXN0ZWQuYyBiL3hlbi9hcmNoL3g4Ni9ndWVzdC94ZW4t bmVzdGVkLmMKaW5kZXggZmNmYTVlMTA4Ny4uYTc2OTgzY2MyZCAxMDA2NDQKLS0tIGEveGVuL2Fy Y2gveDg2L2d1ZXN0L3hlbi1uZXN0ZWQuYworKysgYi94ZW4vYXJjaC94ODYvZ3Vlc3QveGVuLW5l c3RlZC5jCkBAIC0yMiwxMSArMjIsMTcgQEAKICNpbmNsdWRlIDx4ZW4vbGliLmg+CiAjaW5jbHVk ZSA8eGVuL3NjaGVkLmg+CiAKKyNpbmNsdWRlIDxwdWJsaWMvbWVtb3J5Lmg+CiAjaW5jbHVkZSA8 cHVibGljL3ZlcnNpb24uaD4KKyNpbmNsdWRlIDxwdWJsaWMveGVuLmg+CiAKICNpbmNsdWRlIDxh c20vZ3Vlc3QvaHlwZXJjYWxsLmg+CiAjaW5jbHVkZSA8YXNtL2d1ZXN0L3hlbi5oPgogCisjaWZk ZWYgQ09ORklHX0NPTVBBVAorI2luY2x1ZGUgPGNvbXBhdC9tZW1vcnkuaD4KKyNlbmRpZgorCiBl eHRlcm4gY2hhciBoeXBlcmNhbGxfcGFnZVtdOwogCiAvKiB4ZW5fbmVzdGVkOiBzdXBwb3J0IGZv ciBuZXN0ZWQgUFYgaW50ZXJmYWNlIGVuYWJsZWQgKi8KQEAgLTgwLDMgKzg2LDc3IEBAIGxvbmcg ZG9fbmVzdGVkX3hlbl92ZXJzaW9uKGludCBjbWQsIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9p ZCkgYXJnKQogICAgICAgICByZXR1cm4gLUVPUE5PVFNVUFA7CiAgICAgfQogfQorCitzdGF0aWMg bG9uZyBuZXN0ZWRfYWRkX3RvX3BoeXNtYXAoc3RydWN0IHhlbl9hZGRfdG9fcGh5c21hcCB4YXRw KQoreworICAgIHN0cnVjdCBkb21haW4gKmQ7CisgICAgbG9uZyByZXQ7CisKKyAgICBpZiAoICF4 ZW5fbmVzdGVkICkKKyAgICAgICAgcmV0dXJuIC1FTk9TWVM7CisKKyAgICBpZiAoICh4YXRwLnNw YWNlICE9IFhFTk1BUFNQQUNFX3NoYXJlZF9pbmZvKSAmJgorICAgICAgICAgKHhhdHAuc3BhY2Ug IT0gWEVOTUFQU1BBQ0VfZ3JhbnRfdGFibGUpICkKKyAgICB7CisgICAgICAgIGdwcmludGsoWEVO TE9HX0VSUiwgIk5lc3RlZCBtZW1vcnkgb3A6IHVua25vd24geGF0cC5zcGFjZTogJXVcbiIsCisg ICAgICAgICAgICAgICAgeGF0cC5zcGFjZSk7CisgICAgICAgIHJldHVybiAtRUlOVkFMOworICAg IH0KKworICAgIGlmICggeGF0cC5kb21pZCAhPSBET01JRF9TRUxGICkKKyAgICAgICAgcmV0dXJu IC1FUEVSTTsKKworICAgIHJldCA9IHhzbV9uZXN0ZWRfYWRkX3RvX3BoeXNtYXAoWFNNX1BSSVYs IGN1cnJlbnQtPmRvbWFpbik7CisgICAgaWYgKCByZXQgKQorICAgICAgICByZXR1cm4gcmV0Owor CisgICAgZ3ByaW50ayhYRU5MT0dfREVCVUcsICJOZXN0ZWQgWEVOTUVNX2FkZF90b19waHlzbWFw OiAlZFxuIiwgeGF0cC5zcGFjZSk7CisKKyAgICBkID0gcmN1X2xvY2tfY3VycmVudF9kb21haW4o KTsKKworICAgIHJldCA9IHhlbl9oeXBlcmNhbGxfbWVtb3J5X29wKFhFTk1FTV9hZGRfdG9fcGh5 c21hcCwgJnhhdHApOworCisgICAgcmN1X3VubG9ja19kb21haW4oZCk7CisKKyAgICBpZiAoIHJl dCApCisgICAgICAgIGdwcmludGsoWEVOTE9HX0VSUiwgIk5lc3RlZCBtZW1vcnkgb3AgZmFpbGVk IGFkZF90b19waHlzbWFwIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgZm9yICVkIHdp dGggJWxkXG4iLCB4YXRwLnNwYWNlLCByZXQpOworICAgIHJldHVybiByZXQ7Cit9CisKK2xvbmcg ZG9fbmVzdGVkX21lbW9yeV9vcChpbnQgY21kLCBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHZvaWQp IGFyZykKK3sKKyAgICBzdHJ1Y3QgeGVuX2FkZF90b19waHlzbWFwIHhhdHA7CisKKyAgICBpZiAo IGNtZCAhPSBYRU5NRU1fYWRkX3RvX3BoeXNtYXAgKQorICAgIHsKKyAgICAgICAgZ3ByaW50ayhY RU5MT0dfRVJSLCAiTmVzdGVkIG1lbW9yeSBvcCAldSBub3QgaW1wbGVtZW50ZWQuXG4iLCBjbWQp OworICAgICAgICByZXR1cm4gLUVPUE5PVFNVUFA7CisgICAgfQorCisgICAgaWYgKCBjb3B5X2Zy b21fZ3Vlc3QoJnhhdHAsIGFyZywgMSkgKQorICAgICAgICByZXR1cm4gLUVGQVVMVDsKKworICAg IHJldHVybiBuZXN0ZWRfYWRkX3RvX3BoeXNtYXAoeGF0cCk7Cit9CisKKyNpZmRlZiBDT05GSUdf Q09NUEFUCitpbnQgY29tcGF0X25lc3RlZF9tZW1vcnlfb3AoaW50IGNtZCwgWEVOX0dVRVNUX0hB TkRMRV9QQVJBTSh2b2lkKSBhcmcpCit7CisgICAgc3RydWN0IGNvbXBhdF9hZGRfdG9fcGh5c21h cCBjbXA7CisgICAgc3RydWN0IHhlbl9hZGRfdG9fcGh5c21hcCAqbmF0ID0gQ09NUEFUX0FSR19Y TEFUX1ZJUlRfQkFTRTsKKworICAgIGlmICggY21kICE9IFhFTk1FTV9hZGRfdG9fcGh5c21hcCAp CisgICAgeworICAgICAgICBncHJpbnRrKFhFTkxPR19FUlIsICJOZXN0ZWQgbWVtb3J5IG9wICV1 IG5vdCBpbXBsZW1lbnRlZC5cbiIsIGNtZCk7CisgICAgICAgIHJldHVybiAtRU9QTk9UU1VQUDsK KyAgICB9CisKKyAgICBpZiAoIGNvcHlfZnJvbV9ndWVzdCgmY21wLCBhcmcsIDEpICkKKyAgICAg ICAgcmV0dXJuIC1FRkFVTFQ7CisKKyAgICBYTEFUX2FkZF90b19waHlzbWFwKG5hdCwgJmNtcCk7 CisKKyAgICByZXR1cm4gbmVzdGVkX2FkZF90b19waHlzbWFwKCpuYXQpOworfQorI2VuZGlmCmRp ZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHlwZXJjYWxsLmMgYi94ZW4vYXJjaC94ODYvaHlwZXJj YWxsLmMKaW5kZXggYjIyZjBjYTY1YS4uMmFhOGRjNWFjNiAxMDA2NDQKLS0tIGEveGVuL2FyY2gv eDg2L2h5cGVyY2FsbC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9oeXBlcmNhbGwuYwpAQCAtNzUsNiAr NzUsNyBAQCBjb25zdCBoeXBlcmNhbGxfYXJnc190IGh5cGVyY2FsbF9hcmdzX3RhYmxlW05SX2h5 cGVyY2FsbHNdID0KICNlbmRpZgogI2lmZGVmIENPTkZJR19YRU5fTkVTVEVECiAgICAgQVJHUyhu ZXN0ZWRfeGVuX3ZlcnNpb24sIDIpLAorICAgIENPTVAobmVzdGVkX21lbW9yeV9vcCwgMiwgMiks CiAjZW5kaWYKICAgICBBUkdTKG1jYSwgMSksCiAgICAgQVJHUyhhcmNoXzEsIDEpLApkaWZmIC0t Z2l0IGEveGVuL2FyY2gveDg2L3B2L2h5cGVyY2FsbC5jIGIveGVuL2FyY2gveDg2L3B2L2h5cGVy Y2FsbC5jCmluZGV4IDFlMDBkMDcyNzMuLjk2MTk4ZDMzMTMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNo L3g4Ni9wdi9oeXBlcmNhbGwuYworKysgYi94ZW4vYXJjaC94ODYvcHYvaHlwZXJjYWxsLmMKQEAg LTg2LDYgKzg2LDcgQEAgY29uc3QgaHlwZXJjYWxsX3RhYmxlX3QgcHZfaHlwZXJjYWxsX3RhYmxl W10gPSB7CiAjZW5kaWYKICNpZmRlZiBDT05GSUdfWEVOX05FU1RFRAogICAgIEhZUEVSQ0FMTChu ZXN0ZWRfeGVuX3ZlcnNpb24pLAorICAgIENPTVBBVF9DQUxMKG5lc3RlZF9tZW1vcnlfb3ApLAog I2VuZGlmCiAgICAgSFlQRVJDQUxMKG1jYSksCiAgICAgSFlQRVJDQUxMKGFyY2hfMSksCmRpZmYg LS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMveGVuLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMveGVu LmgKaW5kZXggMmY1YWM1ZWVkYy4uZTA4MWY1MmZjNCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUv cHVibGljL3hlbi5oCisrKyBiL3hlbi9pbmNsdWRlL3B1YmxpYy94ZW4uaApAQCAtMTIyLDYgKzEy Miw3IEBAIERFRklORV9YRU5fR1VFU1RfSEFORExFKHhlbl91bG9uZ190KTsKICNkZWZpbmUgX19I WVBFUlZJU09SX3hlbnBtdV9vcCAgICAgICAgICAgIDQwCiAjZGVmaW5lIF9fSFlQRVJWSVNPUl9k bV9vcCAgICAgICAgICAgICAgICA0MQogI2RlZmluZSBfX0hZUEVSVklTT1JfbmVzdGVkX3hlbl92 ZXJzaW9uICAgNDIKKyNkZWZpbmUgX19IWVBFUlZJU09SX25lc3RlZF9tZW1vcnlfb3AgICAgIDQz CiAKIC8qIEFyY2hpdGVjdHVyZS1zcGVjaWZpYyBoeXBlcmNhbGwgZGVmaW5pdGlvbnMuICovCiAj ZGVmaW5lIF9fSFlQRVJWSVNPUl9hcmNoXzAgICAgICAgICAgICAgICA0OApkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUveGVuL2h5cGVyY2FsbC5oIGIveGVuL2luY2x1ZGUveGVuL2h5cGVyY2FsbC5o CmluZGV4IDE1MTk0MDAyZDYuLmQzNzNiZDE3NjMgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hl bi9oeXBlcmNhbGwuaAorKysgYi94ZW4vaW5jbHVkZS94ZW4vaHlwZXJjYWxsLmgKQEAgLTE1NCw2 ICsxNTQsMTAgQEAgZG9fZG1fb3AoCiBleHRlcm4gbG9uZyBkb19uZXN0ZWRfeGVuX3ZlcnNpb24o CiAgICAgaW50IGNtZCwKICAgICBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHZvaWQpIGFyZyk7CisK K2V4dGVybiBsb25nIGRvX25lc3RlZF9tZW1vcnlfb3AoCisgICAgaW50IGNtZCwKKyAgICBYRU5f R1VFU1RfSEFORExFX1BBUkFNKHZvaWQpIGFyZyk7CiAjZW5kaWYKIAogI2lmZGVmIENPTkZJR19D T01QQVQKQEAgLTIyMiw2ICsyMjYsMTIgQEAgY29tcGF0X2RtX29wKAogICAgIHVuc2lnbmVkIGlu dCBucl9idWZzLAogICAgIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYnVmcyk7CiAKKyNp ZmRlZiBDT05GSUdfWEVOX05FU1RFRAorZXh0ZXJuIGludCBjb21wYXRfbmVzdGVkX21lbW9yeV9v cCgKKyAgICBpbnQgY21kLAorICAgIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKTsK KyNlbmRpZgorCiAjZW5kaWYKIAogdm9pZCBhcmNoX2dldF94ZW5fY2Fwcyh4ZW5fY2FwYWJpbGl0 aWVzX2luZm9fdCAqaW5mbyk7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94c20vZHVtbXkuaCBi L3hlbi9pbmNsdWRlL3hzbS9kdW1teS5oCmluZGV4IDgwMTFiZjJjYjQuLjE3Mzc1ZjZiOWYgMTAw NjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hzbS9kdW1teS5oCisrKyBiL3hlbi9pbmNsdWRlL3hzbS9k dW1teS5oCkBAIC03NDcsNiArNzQ3LDEzIEBAIHN0YXRpYyBYU01fSU5MSU5FIGludCB4c21fbmVz dGVkX3hlbl92ZXJzaW9uKFhTTV9ERUZBVUxUX0FSRwogICAgIFhTTV9BU1NFUlRfQUNUSU9OKFhT TV9QUklWKTsKICAgICByZXR1cm4geHNtX2RlZmF1bHRfYWN0aW9uKGFjdGlvbiwgZCwgTlVMTCk7 CiB9CisKK3N0YXRpYyBYU01fSU5MSU5FIGludCB4c21fbmVzdGVkX2FkZF90b19waHlzbWFwKFhT TV9ERUZBVUxUX0FSRworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3Qgc3RydWN0IGRvbWFpbiAqZCkKK3sKKyAgICBYU01fQVNTRVJUX0FDVElPTihY U01fUFJJVik7CisgICAgcmV0dXJuIHhzbV9kZWZhdWx0X2FjdGlvbihhY3Rpb24sIGQsIE5VTEwp OworfQogI2VuZGlmCiAKICNpbmNsdWRlIDxwdWJsaWMvdmVyc2lvbi5oPgpkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUveHNtL3hzbS5oIGIveGVuL2luY2x1ZGUveHNtL3hzbS5oCmluZGV4IDk2MDQ0 Y2I1NWEuLjkyMGQyZDkwODggMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hzbS94c20uaAorKysg Yi94ZW4vaW5jbHVkZS94c20veHNtLmgKQEAgLTE4OSw2ICsxODksNyBAQCBzdHJ1Y3QgeHNtX29w ZXJhdGlvbnMgewogI2VuZGlmCiAjaWZkZWYgQ09ORklHX1hFTl9ORVNURUQKICAgICBpbnQgKCpu ZXN0ZWRfeGVuX3ZlcnNpb24pIChjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQg Y21kKTsKKyAgICBpbnQgKCpuZXN0ZWRfYWRkX3RvX3BoeXNtYXApIChjb25zdCBzdHJ1Y3QgZG9t YWluICpkKTsKICNlbmRpZgogfTsKIApAQCAtNzM0LDYgKzczNSwxMiBAQCBzdGF0aWMgaW5saW5l IGludCB4c21fbmVzdGVkX3hlbl92ZXJzaW9uKHhzbV9kZWZhdWx0X3QgZGVmLAogICAgIHJldHVy biB4c21fb3BzLT5uZXN0ZWRfeGVuX3ZlcnNpb24oZCwgY21kKTsKIH0KIAorc3RhdGljIGlubGlu ZSBpbnQgeHNtX25lc3RlZF9hZGRfdG9fcGh5c21hcCh4c21fZGVmYXVsdF90IGRlZiwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGRvbWFp biAqZCkKK3sKKyAgICByZXR1cm4geHNtX29wcy0+bmVzdGVkX2FkZF90b19waHlzbWFwKGQpOwor fQorCiAjZW5kaWYgLyogQ09ORklHX1hFTl9ORVNURUQgKi8KIAogI2VuZGlmIC8qIFhTTV9OT19X UkFQUEVSUyAqLwpkaWZmIC0tZ2l0IGEveGVuL3hzbS9kdW1teS5jIGIveGVuL3hzbS9kdW1teS5j CmluZGV4IGVkMGE0YjA2OTEuLjVjZTI5YmNmZTUgMTAwNjQ0Ci0tLSBhL3hlbi94c20vZHVtbXku YworKysgYi94ZW4veHNtL2R1bW15LmMKQEAgLTE1OSw1ICsxNTksNiBAQCB2b2lkIF9faW5pdCB4 c21fZml4dXBfb3BzIChzdHJ1Y3QgeHNtX29wZXJhdGlvbnMgKm9wcykKICNlbmRpZgogI2lmZGVm IENPTkZJR19YRU5fTkVTVEVECiAgICAgc2V0X3RvX2R1bW15X2lmX251bGwob3BzLCBuZXN0ZWRf eGVuX3ZlcnNpb24pOworICAgIHNldF90b19kdW1teV9pZl9udWxsKG9wcywgbmVzdGVkX2FkZF90 b19waHlzbWFwKTsKICNlbmRpZgogfQpkaWZmIC0tZ2l0IGEveGVuL3hzbS9mbGFzay9ob29rcy5j IGIveGVuL3hzbS9mbGFzay9ob29rcy5jCmluZGV4IDI4MzUyNzlmZTcuLjE3YTgxYjg1ZjkgMTAw NjQ0Ci0tLSBhL3hlbi94c20vZmxhc2svaG9va3MuYworKysgYi94ZW4veHNtL2ZsYXNrL2hvb2tz LmMKQEAgLTE3NDksNiArMTc0OSwyMCBAQCBzdGF0aWMgaW50IGZsYXNrX2FyZ29fc2VuZChjb25z dCBzdHJ1Y3QgZG9tYWluICpkLCBjb25zdCBzdHJ1Y3QgZG9tYWluICp0KQogI2VuZGlmCiAKICNp ZmRlZiBDT05GSUdfWEVOX05FU1RFRAorc3RhdGljIGludCBkb21haW5faGFzX25lc3RlZF9wZXJt KGNvbnN0IHN0cnVjdCBkb21haW4gKmQsIHUxNiBjbGFzcywgdTMyIHBlcm0pCit7CisgICAgc3Ry dWN0IGF2Y19hdWRpdF9kYXRhIGFkOworCisgICAgQVZDX0FVRElUX0RBVEFfSU5JVCgmYWQsIE5P TkUpOworCisgICAgcmV0dXJuIGF2Y19oYXNfcGVybShkb21haW5fc2lkKGQpLCBTRUNJTklUU0lE X05FU1RFRFhFTiwgY2xhc3MsIHBlcm0sICZhZCk7Cit9CisKK3N0YXRpYyBpbnQgZmxhc2tfbmVz dGVkX2FkZF90b19waHlzbWFwKGNvbnN0IHN0cnVjdCBkb21haW4gKmQpCit7CisgICAgcmV0dXJu IGRvbWFpbl9oYXNfbmVzdGVkX3Blcm0oZCwgU0VDQ0xBU1NfTU1VLCBNTVVfX1BIWVNNQVApOwor fQorCiBzdGF0aWMgaW50IGZsYXNrX25lc3RlZF94ZW5fdmVyc2lvbihjb25zdCBzdHJ1Y3QgZG9t YWluICpkLCB1bnNpZ25lZCBpbnQgb3ApCiB7CiAgICAgcmV0dXJuIGRvbWFpbl9oYXNfeGVuX3Zl cnNpb24oZCwgU0VDSU5JVFNJRF9ORVNURURYRU4sIG9wKTsKQEAgLTE4OTcsNiArMTkxMSw3IEBA IHN0YXRpYyBzdHJ1Y3QgeHNtX29wZXJhdGlvbnMgZmxhc2tfb3BzID0gewogI2VuZGlmCiAjaWZk ZWYgQ09ORklHX1hFTl9ORVNURUQKICAgICAubmVzdGVkX3hlbl92ZXJzaW9uID0gZmxhc2tfbmVz dGVkX3hlbl92ZXJzaW9uLAorICAgIC5uZXN0ZWRfYWRkX3RvX3BoeXNtYXAgPSBmbGFza19uZXN0 ZWRfYWRkX3RvX3BoeXNtYXAsCiAjZW5kaWYKIH07CiAKLS0gCjIuMTcuMQoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVj dC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=