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,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 8368CC433FF for ; Wed, 14 Aug 2019 13:39:17 +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 4EB6B2083B for ; Wed, 14 Aug 2019 13:39:17 +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="iNRGeh1O" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4EB6B2083B Authentication-Results: mail.kernel.org; dmarc=none (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 1hxtUR-0007Fz-Bu; Wed, 14 Aug 2019 13:38:59 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hxtUQ-0007Fr-Oc for xen-devel@lists.xenproject.org; Wed, 14 Aug 2019 13:38:58 +0000 X-Inumbo-ID: dd56cb5e-be98-11e9-9a41-7bacd4028f1b Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id dd56cb5e-be98-11e9-9a41-7bacd4028f1b; Wed, 14 Aug 2019 13:38:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1565789937; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=xRBHsxF99Fi4jK6hb3aMwngDfozyJw28kwfm7JDqIgQ=; b=iNRGeh1OHXHbp+16fnGmMi3HAfbSMc5xGU7pro1xFsXD5BjcmStfzdAO yOQZ6CnbA+cFhYJjFkk0XaQX6UA1RTfeTuHAfsrinD+GlDfpSOU3cf/Do mHuhCgmhJSwPEyFPYAxrx4PzULR75sXt45PPdpAfXUMj+nkpsfROomrEf E=; Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=paul.durrant@citrix.com; spf=Pass smtp.mailfrom=Paul.Durrant@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa5.hc3370-68.iphmx.com: no sender authenticity information available from domain of paul.durrant@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="Paul.Durrant@citrix.com"; x-sender="paul.durrant@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa5.hc3370-68.iphmx.com: domain of Paul.Durrant@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa5.hc3370-68.iphmx.com; envelope-from="Paul.Durrant@citrix.com"; x-sender="Paul.Durrant@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 ~all" Received-SPF: None (esa5.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=esa5.hc3370-68.iphmx.com; envelope-from="Paul.Durrant@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: JOGW1AFQK7tAgCJ1d33Xz2/dv5NVYTWiTO9wpp7wjNngM1S4pIOjTMaYDplTb3CYtvT62piLq2 TiOKSp0M3njDU5WnhkuyBxsBG5JOTUk7ygCjDM0czym4Wqe5MAVQQSrNogXM1ga106pvmlir6s fdbFC7k18UcnMVe8l/zhvvqfopOLsyXdBCOlYuAFQigdnxMyfZD/Xp8VZqa2J8jQYgkywQ9/KZ 67SsW6gWct3aRcoj5/TlLYnxg7zvRVaUpdn8O6mex9kWvKyKzL09IcQ2zKPnNUuSaQ9PvifDAl 7L0= X-SBRS: 2.7 X-MesageID: 4409643 X-Ironport-Server: esa5.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,385,1559534400"; d="scan'208";a="4409643" From: Paul Durrant To: Date: Wed, 14 Aug 2019 14:38:47 +0100 Message-ID: <20190814133852.20491-6-paul.durrant@citrix.com> X-Mailer: git-send-email 2.20.1.2.gb21ebb671 In-Reply-To: <20190814133852.20491-1-paul.durrant@citrix.com> References: <20190814133852.20491-1-paul.durrant@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH v5 05/10] domain: introduce XEN_DOMCTL_CDF_iommu flag 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 , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Paul Durrant , Jan Beulich , Anthony PERARD , 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" VGhpcyBwYXRjaCBpbnRyb2R1Y2VzIGEgY29tbW9uIGRvbWFpbiBjcmVhdGlvbiBmbGFnIHRvIGRl dGVybWluZSB3aGV0aGVyCnRoZSBkb21haW4gaXMgcGVybWl0dGVkIHRvIG1ha2UgdXNlIG9mIHRo ZSBJT01NVS4gQ3VycmVudGx5IHRoZSBmbGFnIGlzCmFsd2F5cyBzZXQgKGZvciBib3RoIGRvbTAg YW5kIGRvbVUpIGlmIHRoZSBJT01NVSBpcyBnbG9iYWxseSBlbmFibGVkCihpLmUuIGlvbW11X2Vu YWJsZWQgPT0gMSkuIHNhbml0aXNlX2RvbWFpbl9jb25maWcoKSBpcyBtb2RpZmllZCB0byByZWpl Y3QKdGhlIGZsYWcgaWYgIWlvbW11X2VuYWJsZWQuCgpBIG5ldyBoZWxwZXIgZnVuY3Rpb24sIGlz X2lvbW11X2VuYWJsZWQoKSwgaXMgYWRkZWQgdG8gdGVzdCB0aGUgZmxhZyBhbmQKaW9tbXVfZG9t YWluX2luaXQoKSB3aWxsIHJldHVybiBpbW1lZGlhdGVseSBpZiAhaXNfaW9tbXVfZW5hYmxlZCgp LiBUaGlzIGlzCnNsaWdodGx5IGRpZmZlcmVudCB0byB0aGUgcHJldmlvdXMgYmVoYXZpb3VyIGJh c2VkIG9uICFpb21tdV9lbmFibGVkIHdoZXJlCnRoZSBjYWxsIHRvIGFyY2hfaW9tbXVfZG9tYWlu X2luaXQoKSB3YXMgbWFkZSByZWdhcmRsZXNzLCBob3dldmVyIGl0IGFwcGVhcnMKdGhhdCB0aGlz IGNhbGwgd2FzIG9ubHkgbmVjZXNzYXJ5IHRvIGluaXRpYWxpemUgdGhlIGR0X2RldmljZXMgbGlz dCBmb3IgQVJNCnN1Y2ggdGhhdCBpb21tdV9yZWxlYXNlX2R0X2RldmljZXMoKSBjYW4gYmUgY2Fs bGVkIHVuY29uZGl0aW9uYWxseSBieQpkb21haW5fcmVsaW5xdWlzaF9yZXNvdXJjZXMoKS4gQWRk aW5nIGEgc2ltcGxlIGNoZWNrIG9mIGlzX2lvbW11X2VuYWJsZWQoKQppbnRvIGlvbW11X3JlbGVh c2VfZHRfZGV2aWNlcygpIGtlZXBzIHRoaXMgdW5jb25kaXRpb25hbCBjYWxsIHdvcmtpbmcuCgpO byBmdW5jdGlvbmFsIGNoYW5nZSBzaG91bGQgYmUgb2JzZXJ2ZWQgd2l0aCB0aGlzIHBhdGNoIGFw cGxpZWQuCgpTdWJzZXF1ZW50IHBhdGNoZXMgd2lsbCBhbGxvdyB0aGUgdG9vbHN0YWNrIHRvIGNv bnRyb2wgd2hldGhlciB1c2Ugb2YgdGhlCklPTU1VIGlzIGVuYWJsZWQgZm9yIGEgZG9tYWluLgoK Tk9URTogVGhlIGludHJvZHVjdGlvbiBvZiB0aGUgaXNfaW9tbXVfZW5hYmxlZCgpIGhlbHBlciBm dW5jdGlvbiBtaWdodAogICAgICBzZWVtIGV4Y2Vzc2l2ZSBidXQgaXRzIHVzZSBpcyBleHBlY3Rl ZCB0byBpbmNyZWFzZSB3aXRoIHN1YnNlcXVlbnQKICAgICAgcGF0Y2hlcy4gQWxzbywgaGF2aW5n IGlvbW11X2RvbWFpbl9pbml0KCkgYmFpbCBiZWZvcmUgY2FsbGluZwogICAgICBhcmNoX2lvbW11 X2RvbWFpbl9pbml0KCkgaXMgbm90IHN0cmljdGx5IG5lY2Vzc2FyeSwgYnV0IEkgdGhpbmsgdGhl CiAgICAgIGNvbnNlcXVlbnQgYWRkaXRpb24gb2YgdGhlIGNhbGwgdG8gaXNfaW9tbXVfZW5hYmxl ZCgpIGluCiAgICAgIGlvbW11X3JlbGVhc2VfZHRfZGV2aWNlcygpIG1ha2VzIHRoZSBjb2RlIGNs ZWFyZXIuCgpTaWduZWQtb2ZmLWJ5OiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXgu Y29tPgotLS0KQ2M6IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBldS5jaXRyaXguY29tPgpDYzog V2VpIExpdSA8d2xAeGVuLm9yZz4KQ2M6IEFudGhvbnkgUEVSQVJEIDxhbnRob255LnBlcmFyZEBj aXRyaXguY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4K Q2M6IEdlb3JnZSBEdW5sYXAgPEdlb3JnZS5EdW5sYXBAZXUuY2l0cml4LmNvbT4KQ2M6IEphbiBC ZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IEp1bGllbiBHcmFsbCA8anVsaWVuLmdyYWxs QGFybS5jb20+CkNjOiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxrQG9yYWNsZS5j b20+CkNjOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+CkNjOiBU aW0gRGVlZ2FuIDx0aW1AeGVuLm9yZz4KQ2M6IFZvbG9keW15ciBCYWJjaHVrIDxWb2xvZHlteXJf QmFiY2h1a0BlcGFtLmNvbT4KQ2M6ICJSb2dlciBQYXUgTW9ubsOpIiA8cm9nZXIucGF1QGNpdHJp eC5jb20+CgpQcmV2aW91c2x5IHBhcnQgb2Ygc2VyaWVzIGh0dHBzOi8vbGlzdHMueGVucHJvamVj dC5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwvMjAxOS0wNy9tc2cwMjI2Ny5odG1sCgp2NToK IC0gTW92ZSBpc19pb21tdV9lbmFibGVkKCkgY2hlY2sgaW50byBpb21tdV9kb21haW5faW5pdCgp CiAtIFJlamVjdCBYRU5fRE9NQ1RMX0NERl9pb21tdSBpbiBzYW5pdGlzZV9kb21haW5fY29uZmln KCkgaWYgIWlvbW11X2VuYWJsZWQKIC0gVXNlIGV2YWx1YXRlX25vc3BlYygpIGluIGRlZmludGlv biBvZiBpc19pb21tdV9lbmFibGVkKCkKLS0tCiB0b29scy9saWJ4bC9saWJ4bF9jcmVhdGUuYyAg ICAgICAgICAgIHwgOCArKysrKysrKwogeGVuL2FyY2gvYXJtL2RvbWFpbi5jICAgICAgICAgICAg ICAgICB8IDEgLQogeGVuL2FyY2gvYXJtL3NldHVwLmMgICAgICAgICAgICAgICAgICB8IDMgKysr CiB4ZW4vYXJjaC94ODYvc2V0dXAuYyAgICAgICAgICAgICAgICAgIHwgMyArKysKIHhlbi9jb21t b24vZG9tYWluLmMgICAgICAgICAgICAgICAgICAgfCA5ICsrKysrKysrLQogeGVuL2RyaXZlcnMv cGFzc3Rocm91Z2gvZGV2aWNlX3RyZWUuYyB8IDMgKysrCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC9pb21tdS5jICAgICAgIHwgNiArKystLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaCAg ICAgICAgICAgfCA0ICsrKysKIHhlbi9pbmNsdWRlL3hlbi9zY2hlZC5oICAgICAgICAgICAgICAg fCA1ICsrKysrCiA5IGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfY3JlYXRlLmMgYi90b29scy9saWJ4 bC9saWJ4bF9jcmVhdGUuYwppbmRleCAwM2NlMTY2ZjRmLi4wNTBlZjA0MmNkIDEwMDY0NAotLS0g YS90b29scy9saWJ4bC9saWJ4bF9jcmVhdGUuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9jcmVh dGUuYwpAQCAtNTU1LDYgKzU1NSw3IEBAIGludCBsaWJ4bF9fZG9tYWluX21ha2UobGlieGxfX2dj ICpnYywgbGlieGxfZG9tYWluX2NvbmZpZyAqZF9jb25maWcsCiAgICAgICAgICAgICAubWF4X2dy YW50X2ZyYW1lcyA9IGJfaW5mby0+bWF4X2dyYW50X2ZyYW1lcywKICAgICAgICAgICAgIC5tYXhf bWFwdHJhY2tfZnJhbWVzID0gYl9pbmZvLT5tYXhfbWFwdHJhY2tfZnJhbWVzLAogICAgICAgICB9 OworICAgICAgICBsaWJ4bF9waHlzaW5mbyBwaHlzaW5mbzsKIAogICAgICAgICBpZiAoaW5mby0+ dHlwZSAhPSBMSUJYTF9ET01BSU5fVFlQRV9QVikgewogICAgICAgICAgICAgY3JlYXRlLmZsYWdz IHw9IFhFTl9ET01DVExfQ0RGX2h2bV9ndWVzdDsKQEAgLTU2NCw2ICs1NjUsMTMgQEAgaW50IGxp YnhsX19kb21haW5fbWFrZShsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kb21haW5fY29uZmlnICpkX2Nv bmZpZywKICAgICAgICAgICAgICAgICBsaWJ4bF9kZWZib29sX3ZhbChpbmZvLT5vb3MpID8gMCA6 IFhFTl9ET01DVExfQ0RGX29vc19vZmY7CiAgICAgICAgIH0KIAorICAgICAgICByYyA9IGxpYnhs X2dldF9waHlzaW5mbyhjdHgsICZwaHlzaW5mbyk7CisgICAgICAgIGlmIChyYyA8IDApCisgICAg ICAgICAgICBnb3RvIG91dDsKKworICAgICAgICBpZiAocGh5c2luZm8uY2FwX2h2bV9kaXJlY3Rp bykKKyAgICAgICAgICAgIGNyZWF0ZS5mbGFncyB8PSBYRU5fRE9NQ1RMX0NERl9pb21tdTsKKwog ICAgICAgICAvKiBVbHRpbWF0ZWx5LCBoYW5kbGUgaXMgYW4gYXJyYXkgb2YgMTYgdWludDhfdCwg c2FtZSBhcyB1dWlkICovCiAgICAgICAgIGxpYnhsX3V1aWRfY29weShjdHgsIChsaWJ4bF91dWlk ICopJmNyZWF0ZS5oYW5kbGUsICZpbmZvLT51dWlkKTsKIApkaWZmIC0tZ2l0IGEveGVuL2FyY2gv YXJtL2RvbWFpbi5jIGIveGVuL2FyY2gvYXJtL2RvbWFpbi5jCmluZGV4IDk0MWJiZmY0ZmUuLjNm ZjE5YmMxY2EgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9kb21haW4uYworKysgYi94ZW4vYXJj aC9hcm0vZG9tYWluLmMKQEAgLTY3Myw3ICs2NzMsNiBAQCBpbnQgYXJjaF9kb21haW5fY3JlYXRl KHN0cnVjdCBkb21haW4gKmQsCiAKICAgICBBU1NFUlQoY29uZmlnICE9IE5VTEwpOwogCi0gICAg LyogcDJtX2luaXQgcmVsaWVzIG9uIHNvbWUgdmFsdWUgaW5pdGlhbGl6ZWQgYnkgdGhlIElPTU1V IHN1YnN5c3RlbSAqLwogICAgIGlmICggKHJjID0gaW9tbXVfZG9tYWluX2luaXQoZCkpICE9IDAg KQogICAgICAgICBnb3RvIGZhaWw7CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9zZXR1cC5j IGIveGVuL2FyY2gvYXJtL3NldHVwLmMKaW5kZXggMjE1NzQ2YTVjMy4uZmNhMWU2MjkwMSAxMDA2 NDQKLS0tIGEveGVuL2FyY2gvYXJtL3NldHVwLmMKKysrIGIveGVuL2FyY2gvYXJtL3NldHVwLmMK QEAgLTkxNCw2ICs5MTQsOSBAQCB2b2lkIF9faW5pdCBzdGFydF94ZW4odW5zaWduZWQgbG9uZyBi b290X3BoeXNfb2Zmc2V0LAogICAgIGRvbTBfY2ZnLmFyY2gudGVlX3R5cGUgPSB0ZWVfZ2V0X3R5 cGUoKTsKICAgICBkb20wX2NmZy5tYXhfdmNwdXMgPSBkb20wX21heF92Y3B1cygpOwogCisgICAg aWYgKCBpb21tdV9lbmFibGVkICkKKyAgICAgICAgZG9tMF9jZmcuZmxhZ3MgfD0gWEVOX0RPTUNU TF9DREZfaW9tbXU7CisKICAgICBkb20wID0gZG9tYWluX2NyZWF0ZSgwLCAmZG9tMF9jZmcsIHRy dWUpOwogICAgIGlmICggSVNfRVJSKGRvbTApIHx8IChhbGxvY19kb20wX3ZjcHUwKGRvbTApID09 IE5VTEwpICkKICAgICAgICAgcGFuaWMoIkVycm9yIGNyZWF0aW5nIGRvbWFpbiAwXG4iKTsKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9zZXR1cC5jIGIveGVuL2FyY2gveDg2L3NldHVwLmMKaW5k ZXggZDBiMzViMGNlMi4uZmEyMjZhMmJhYiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3NldHVw LmMKKysrIGIveGVuL2FyY2gveDg2L3NldHVwLmMKQEAgLTE3MzMsNiArMTczMyw5IEBAIHZvaWQg X19pbml0IG5vcmV0dXJuIF9fc3RhcnRfeGVuKHVuc2lnbmVkIGxvbmcgbWJpX3ApCiAgICAgfQog ICAgIGRvbTBfY2ZnLm1heF92Y3B1cyA9IGRvbTBfbWF4X3ZjcHVzKCk7CiAKKyAgICBpZiAoIGlv bW11X2VuYWJsZWQgKQorICAgICAgICBkb20wX2NmZy5mbGFncyB8PSBYRU5fRE9NQ1RMX0NERl9p b21tdTsKKwogICAgIC8qIENyZWF0ZSBpbml0aWFsIGRvbWFpbiAwLiAqLwogICAgIGRvbTAgPSBk b21haW5fY3JlYXRlKGdldF9pbml0aWFsX2RvbWFpbl9pZCgpLCAmZG9tMF9jZmcsICFwdl9zaGlt KTsKICAgICBpZiAoIElTX0VSUihkb20wKSB8fCAoYWxsb2NfZG9tMF92Y3B1MChkb20wKSA9PSBO VUxMKSApCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVuL2NvbW1vbi9kb21h aW4uYwppbmRleCA3NmU2OTc2NjE3Li5lODMyYTVjNGFhIDEwMDY0NAotLS0gYS94ZW4vY29tbW9u L2RvbWFpbi5jCisrKyBiL3hlbi9jb21tb24vZG9tYWluLmMKQEAgLTMwMSw3ICszMDEsOCBAQCBz dGF0aWMgaW50IHNhbml0aXNlX2RvbWFpbl9jb25maWcoc3RydWN0IHhlbl9kb21jdGxfY3JlYXRl ZG9tYWluICpjb25maWcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5fRE9NQ1RMX0NE Rl9oYXAgfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX0RPTUNUTF9DREZfczNfaW50 ZWdyaXR5IHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhFTl9ET01DVExfQ0RGX29vc19v ZmYgfAotICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX0RPTUNUTF9DREZfeHNfZG9tYWlu KSApCisgICAgICAgICAgICAgICAgICAgICAgICAgICBYRU5fRE9NQ1RMX0NERl94c19kb21haW4g fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgWEVOX0RPTUNUTF9DREZfaW9tbXUpICkKICAg ICB7CiAgICAgICAgIGRwcmludGsoWEVOTE9HX0lORk8sICJVbmtub3duIENERiBmbGFncyAlI3hc biIsIGNvbmZpZy0+ZmxhZ3MpOwogICAgICAgICByZXR1cm4gLUVJTlZBTDsKQEAgLTMyOCw2ICsz MjksMTIgQEAgc3RhdGljIGludCBzYW5pdGlzZV9kb21haW5fY29uZmlnKHN0cnVjdCB4ZW5fZG9t Y3RsX2NyZWF0ZWRvbWFpbiAqY29uZmlnKQogICAgICAgICBjb25maWctPmZsYWdzIHw9IFhFTl9E T01DVExfQ0RGX29vc19vZmY7CiAgICAgfQogCisgICAgaWYgKCAoY29uZmlnLT5mbGFncyAmIFhF Tl9ET01DVExfQ0RGX2lvbW11KSAmJiAhaW9tbXVfZW5hYmxlZCApCisgICAgeworICAgICAgICBk cHJpbnRrKFhFTkxPR19JTkZPLCAiSU9NTVUgaXMgbm90IGVuYWJsZWRcbiIpOworICAgICAgICBy ZXR1cm4gLUVJTlZBTDsKKyAgICB9CisKICAgICByZXR1cm4gYXJjaF9zYW5pdGlzZV9kb21haW5f Y29uZmlnKGNvbmZpZyk7CiB9CiAKZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdo L2RldmljZV90cmVlLmMgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9kZXZpY2VfdHJlZS5jCmlu ZGV4IGI2ZWFhZTcyODMuLmQzMmIxNzI2NjQgMTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0 aHJvdWdoL2RldmljZV90cmVlLmMKKysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvZGV2aWNl X3RyZWUuYwpAQCAtMTE5LDYgKzExOSw5IEBAIGludCBpb21tdV9yZWxlYXNlX2R0X2RldmljZXMo c3RydWN0IGRvbWFpbiAqZCkKICAgICBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUgKmRldiwgKl9kZXY7 CiAgICAgaW50IHJjOwogCisgICAgaWYgKCAhaXNfaW9tbXVfZW5hYmxlZChkKSApCisgICAgICAg IHJldHVybiAwOworCiAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGRldiwgX2RldiwgJmhk LT5kdF9kZXZpY2VzLCBkb21haW5fbGlzdCkKICAgICB7CiAgICAgICAgIHJjID0gaW9tbXVfZGVh c3NpZ25fZHRfZGV2aWNlKGQsIGRldik7CmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhy b3VnaC9pb21tdS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvaW9tbXUuYwppbmRleCAzN2Vi MGY3ZDAxLi5lNjFkM2QxMzY4IDEwMDY0NAotLS0gYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9p b21tdS5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvbW11LmMKQEAgLTE1MSwxMyAr MTUxLDEzIEBAIGludCBpb21tdV9kb21haW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKQogICAgIHN0 cnVjdCBkb21haW5faW9tbXUgKmhkID0gZG9tX2lvbW11KGQpOwogICAgIGludCByZXQgPSAwOwog CisgICAgaWYgKCAhaXNfaW9tbXVfZW5hYmxlZChkKSApCisgICAgICAgIHJldHVybiAwOworCiAg ICAgcmV0ID0gYXJjaF9pb21tdV9kb21haW5faW5pdChkKTsKICAgICBpZiAoIHJldCApCiAgICAg ICAgIHJldHVybiByZXQ7CiAKLSAgICBpZiAoICFpb21tdV9lbmFibGVkICkKLSAgICAgICAgcmV0 dXJuIDA7Ci0KICAgICBoZC0+cGxhdGZvcm1fb3BzID0gaW9tbXVfZ2V0X29wcygpOwogICAgIHJl dHVybiBoZC0+cGxhdGZvcm1fb3BzLT5pbml0KGQpOwogfQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1 ZGUvcHVibGljL2RvbWN0bC5oIGIveGVuL2luY2x1ZGUvcHVibGljL2RvbWN0bC5oCmluZGV4IDE5 NDg2ZDVlMzIuLjNmODJjNzg4NzAgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21j dGwuaAorKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvZG9tY3RsLmgKQEAgLTY0LDYgKzY0LDEwIEBA IHN0cnVjdCB4ZW5fZG9tY3RsX2NyZWF0ZWRvbWFpbiB7CiAgLyogSXMgdGhpcyBhIHhlbnN0b3Jl IGRvbWFpbj8gKi8KICNkZWZpbmUgX1hFTl9ET01DVExfQ0RGX3hzX2RvbWFpbiAgICAgNAogI2Rl ZmluZSBYRU5fRE9NQ1RMX0NERl94c19kb21haW4gICAgICAoMVU8PF9YRU5fRE9NQ1RMX0NERl94 c19kb21haW4pCisgLyogU2hvdWxkIHRoaXMgZG9tYWluIGJlIHBlcm1pdHRlZCB0byB1c2UgdGhl IElPTU1VPyAqLworI2RlZmluZSBfWEVOX0RPTUNUTF9DREZfaW9tbXUgICAgICAgICA1CisjZGVm aW5lIFhFTl9ET01DVExfQ0RGX2lvbW11ICAgICAgICAgICgxVTw8X1hFTl9ET01DVExfQ0RGX2lv bW11KQorCiAgICAgdWludDMyX3QgZmxhZ3M7CiAKICAgICAvKgpkaWZmIC0tZ2l0IGEveGVuL2lu Y2x1ZGUveGVuL3NjaGVkLmggYi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAppbmRleCBhNjIxNjFj YzU0Li4wN2VkNjY5MTNhIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaAorKysg Yi94ZW4vaW5jbHVkZS94ZW4vc2NoZWQuaApAQCAtOTgxLDYgKzk4MSwxMSBAQCBzdGF0aWMgaW5s aW5lIGJvb2wgaXNfeGVuc3RvcmVfZG9tYWluKGNvbnN0IHN0cnVjdCBkb21haW4gKmQpCiAgICAg cmV0dXJuIGQtPm9wdGlvbnMgJiBYRU5fRE9NQ1RMX0NERl94c19kb21haW47CiB9CiAKK3N0YXRp YyBpbmxpbmUgYm9vbCBpc19pb21tdV9lbmFibGVkKGNvbnN0IHN0cnVjdCBkb21haW4gKmQpCit7 CisgICAgcmV0dXJuIGV2YWx1YXRlX25vc3BlYyhkLT5vcHRpb25zICYgWEVOX0RPTUNUTF9DREZf aW9tbXUpOworfQorCiBleHRlcm4gYm9vbCBzY2hlZF9zbXRfcG93ZXJfc2F2aW5nczsKIAogZXh0 ZXJuIGVudW0gY3B1ZnJlcV9jb250cm9sbGVyIHsKLS0gCjIuMjAuMS4yLmdiMjFlYmI2NzEKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3Rz LnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs