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 5F7E1C4332D for ; Thu, 19 Mar 2020 21:22:19 +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 261202072C for ; Thu, 19 Mar 2020 21:22:19 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="Xj5lATH5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 261202072C Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=infradead.org 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 1jF2c7-00029R-2O; Thu, 19 Mar 2020 21:22:03 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1jF2c5-000295-3r for xen-devel@lists.xenproject.org; Thu, 19 Mar 2020 21:22:01 +0000 X-Inumbo-ID: a6e0fde8-6a27-11ea-92cf-bc764e2007e4 Received: from merlin.infradead.org (unknown [2001:8b0:10b:1231::1]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id a6e0fde8-6a27-11ea-92cf-bc764e2007e4; Thu, 19 Mar 2020 21:21:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description; bh=3hAblW12irUlQuN3btyT41tUeEcWkTKGflBlA87LNuI=; b=Xj5lATH5GRvyzgQHGVC/29by5G YvYiYLSFRZqj4EmRdwduRoa4D89p+eSYcQK1g22mnoMD88xmhxKqCCWhLsMesDQmifpS4DE/SY2eq GAXhvuNalHV2W7DONSvQkGYgZ6mO7viOoGJpkRVELVRFYDK7bnJYHuXNHz5BpfksKIvt1LB25zIC0 e8Y+JCnTQZuzg9uRFOy0OhjnSLzzfXxzVStWfOcDLhiv8utEuI6vAOJP6qVYEY5F2HdJzK+wTCquy SWVwMr+OVTHklURvcFQJCWPQwdOhjBdmi40ejJLR3/pXSj4RaJvNuvUk3Q7mFeoggaavQDp1KPqal 8VFpsweg==; Received: from i7.infradead.org ([2001:8b0:10b:1:21e:67ff:fecb:7a92]) by merlin.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1jF2bv-0000nT-Db; Thu, 19 Mar 2020 21:21:51 +0000 Received: from dwoodhou by i7.infradead.org with local (Exim 4.92 #3 (Red Hat Linux)) id 1jF2bu-00B7lV-JG; Thu, 19 Mar 2020 21:21:50 +0000 From: David Woodhouse To: xen-devel@lists.xenproject.org Date: Thu, 19 Mar 2020 21:21:49 +0000 Message-Id: <20200319212150.2651419-1-dwmw2@infradead.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <759b48cc361af1136e3cf1658f3dcb1d2937db9c.camel@infradead.org> References: <759b48cc361af1136e3cf1658f3dcb1d2937db9c.camel@infradead.org> MIME-Version: 1.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by merlin.infradead.org. See http://www.infradead.org/rpr.html Subject: [Xen-devel] [PATCH 1/2] xen/mm: fold PGC_broken into PGC_state bits 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 , Ian Jackson , George Dunlap , hongyxia@amazon.com, 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" RnJvbTogRGF2aWQgV29vZGhvdXNlIDxkd213QGFtYXpvbi5jby51az4KCk9ubHkgUEdDX3N0YXRl X29mZmxpbmluZyBhbmQgUEdDX3N0YXRlX29mZmxpbmVkIGFyZSB2YWxpZCBpbiBjb25qdW5jdGlv bgp3aXRoIFBHQ19icm9rZW4uIFRoZSBvdGhlciB0d28gc3RhdGVzIChmcmVlIGFuZCBpbnVzZSkg d2VyZSBuZXZlciB2YWxpZApmb3IgYSBicm9rZW4gcGFnZS4KCkJ5IGZvbGRpbmcgUEdDX2Jyb2tl biBpbiwgd2UgY2FuIGhhdmUgdGhyZWUgYml0cyBmb3IgUEdDX3N0YXRlIHdoaWNoCmFsbG93cyB1 cCB0byA4IHN0YXRlcywgb2Ygd2hpY2ggNiBhcmUgY3VycmVudGx5IHVzZWQgYW5kIDIgYXJlIGF2 YWlsYWJsZQpmb3IgbmV3IHVzZSBjYXNlcy4KClNpZ25lZC1vZmYtYnk6IERhdmlkIFdvb2Rob3Vz ZSA8ZHdtd0BhbWF6b24uY28udWs+Ci0tLQogeGVuL2FyY2gveDg2L2RvbWN0bC5jICAgIHwgIDIg Ky0KIHhlbi9jb21tb24vcGFnZV9hbGxvYy5jICB8IDY2ICsrKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS1hcm0vbW0uaCB8IDM4ICsrKysrKysr KysrKysrKy0tLS0tLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L21tLmggfCAzNiArKysrKysrKysr KysrKysrLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKyksIDUzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9kb21jdGwuYyBiL3hlbi9hcmNoL3g4 Ni9kb21jdGwuYwppbmRleCBlZDg2NzYyZmE2Li5hNDExZjY0YWZhIDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvZG9tY3RsLmMKKysrIGIveGVuL2FyY2gveDg2L2RvbWN0bC5jCkBAIC00MjIsNyAr NDIyLDcgQEAgbG9uZyBhcmNoX2RvX2RvbWN0bCgKICAgICAgICAgICAgICAgICBpZiAoIHBhZ2Ut PnUuaW51c2UudHlwZV9pbmZvICYgUEdUX3Bpbm5lZCApCiAgICAgICAgICAgICAgICAgICAgIHR5 cGUgfD0gWEVOX0RPTUNUTF9QRklORk9fTFBJTlRBQjsKIAotICAgICAgICAgICAgICAgIGlmICgg cGFnZS0+Y291bnRfaW5mbyAmIFBHQ19icm9rZW4gKQorICAgICAgICAgICAgICAgIGlmICggcGFn ZV9pc19icm9rZW4ocGFnZSkgKQogICAgICAgICAgICAgICAgICAgICB0eXBlID0gWEVOX0RPTUNU TF9QRklORk9fQlJPS0VOOwogICAgICAgICAgICAgfQogCmRpZmYgLS1naXQgYS94ZW4vY29tbW9u L3BhZ2VfYWxsb2MuYyBiL3hlbi9jb21tb24vcGFnZV9hbGxvYy5jCmluZGV4IDc2ZDM3MjI2ZGYu LjhkNzJhNjRmNGUgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vcGFnZV9hbGxvYy5jCisrKyBiL3hl bi9jb21tb24vcGFnZV9hbGxvYy5jCkBAIC0xMDkzLDcgKzEwOTMsNyBAQCBzdGF0aWMgaW50IHJl c2VydmVfb2ZmbGluZWRfcGFnZShzdHJ1Y3QgcGFnZV9pbmZvICpoZWFkKQogICAgICAgICBzdHJ1 Y3QgcGFnZV9pbmZvICpwZzsKICAgICAgICAgaW50IG5leHRfb3JkZXI7CiAKLSAgICAgICAgaWYg KCBwYWdlX3N0YXRlX2lzKGN1cl9oZWFkLCBvZmZsaW5lZCkgKQorICAgICAgICBpZiAoIHBhZ2Vf aXNfb2ZmbGluZWQoY3VyX2hlYWQpICkKICAgICAgICAgewogICAgICAgICAgICAgY3VyX2hlYWQr KzsKICAgICAgICAgICAgIGlmICggZmlyc3RfZGlydHkgIT0gSU5WQUxJRF9ESVJUWV9JRFggJiYg Zmlyc3RfZGlydHkgKQpAQCAtMTExMyw3ICsxMTEzLDcgQEAgc3RhdGljIGludCByZXNlcnZlX29m ZmxpbmVkX3BhZ2Uoc3RydWN0IHBhZ2VfaW5mbyAqaGVhZCkKICAgICAgICAgICAgIGZvciAoIGkg PSAoMSA8PCBjdXJfb3JkZXIpLCBwZyA9IGN1cl9oZWFkICsgKDEgPDwgY3VyX29yZGVyICk7CiAg ICAgICAgICAgICAgICAgICBpIDwgKDEgPDwgbmV4dF9vcmRlcik7CiAgICAgICAgICAgICAgICAg ICBpKyssIHBnKysgKQotICAgICAgICAgICAgICAgIGlmICggcGFnZV9zdGF0ZV9pcyhwZywgb2Zm bGluZWQpICkKKyAgICAgICAgICAgICAgICBpZiAoIHBhZ2VfaXNfb2ZmbGluZWQocGcpICkKICAg ICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBpZiAoIGkgPT0gKCAxIDw8IG5l eHRfb3JkZXIpICkKICAgICAgICAgICAgIHsKQEAgLTExNDUsMTYgKzExNDUsMjAgQEAgc3RhdGlj IGludCByZXNlcnZlX29mZmxpbmVkX3BhZ2Uoc3RydWN0IHBhZ2VfaW5mbyAqaGVhZCkKIAogICAg IGZvciAoIGN1cl9oZWFkID0gaGVhZDsgY3VyX2hlYWQgPCBoZWFkICsgKCAxVUwgPDwgaGVhZF9v cmRlcik7IGN1cl9oZWFkKysgKQogICAgIHsKLSAgICAgICAgaWYgKCAhcGFnZV9zdGF0ZV9pcyhj dXJfaGVhZCwgb2ZmbGluZWQpICkKKyAgICAgICAgc3RydWN0IHBhZ2VfbGlzdF9oZWFkICpsaXN0 OworCisgICAgICAgIGlmICggcGFnZV9zdGF0ZV9pcyhjdXJfaGVhZCwgb2ZmbGluZWQpICkKKyAg ICAgICAgICAgIGxpc3QgPSAmcGFnZV9vZmZsaW5lZF9saXN0OworICAgICAgICBlbHNlIGlmIChw YWdlX3N0YXRlX2lzKGN1cl9oZWFkLCBicm9rZW4pICkKKyAgICAgICAgICAgIGxpc3QgPSAmcGFn ZV9icm9rZW5fbGlzdDsKKyAgICAgICAgZWxzZQogICAgICAgICAgICAgY29udGludWU7CiAKICAg ICAgICAgYXZhaWxbbm9kZV1bem9uZV0tLTsKICAgICAgICAgdG90YWxfYXZhaWxfcGFnZXMtLTsK ICAgICAgICAgQVNTRVJUKHRvdGFsX2F2YWlsX3BhZ2VzID49IDApOwogCi0gICAgICAgIHBhZ2Vf bGlzdF9hZGRfdGFpbChjdXJfaGVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Rf Yml0KF9QR0NfYnJva2VuLCAmY3VyX2hlYWQtPmNvdW50X2luZm8pID8KLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICZwYWdlX2Jyb2tlbl9saXN0IDogJnBhZ2Vfb2ZmbGluZWRfbGlzdCk7Cisg ICAgICAgIHBhZ2VfbGlzdF9hZGRfdGFpbChjdXJfaGVhZCwgbGlzdCk7CiAKICAgICAgICAgY291 bnQrKzsKICAgICB9CkBAIC0xNDA0LDEzICsxNDA4LDE2IEBAIHN0YXRpYyB2b2lkIGZyZWVfaGVh cF9wYWdlcygKICAgICAgICAgc3dpdGNoICggcGdbaV0uY291bnRfaW5mbyAmIFBHQ19zdGF0ZSAp CiAgICAgICAgIHsKICAgICAgICAgY2FzZSBQR0Nfc3RhdGVfaW51c2U6Ci0gICAgICAgICAgICBC VUdfT04ocGdbaV0uY291bnRfaW5mbyAmIFBHQ19icm9rZW4pOwogICAgICAgICAgICAgcGdbaV0u Y291bnRfaW5mbyA9IFBHQ19zdGF0ZV9mcmVlOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAg ICAgY2FzZSBQR0Nfc3RhdGVfb2ZmbGluaW5nOgotICAgICAgICAgICAgcGdbaV0uY291bnRfaW5m byA9IChwZ1tpXS5jb3VudF9pbmZvICYgUEdDX2Jyb2tlbikgfAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFBHQ19zdGF0ZV9vZmZsaW5lZDsKKyAgICAgICAgICAgIHBnW2ldLmNvdW50 X2luZm8gPSBQR0Nfc3RhdGVfb2ZmbGluZWQ7CisgICAgICAgICAgICB0YWludGVkID0gMTsKKyAg ICAgICAgICAgIGJyZWFrOworCisgICAgICAgIGNhc2UgUEdDX3N0YXRlX2Jyb2tlbl9vZmZsaW5p bmc6CisgICAgICAgICAgICBwZ1tpXS5jb3VudF9pbmZvID0gUEdDX3N0YXRlX2Jyb2tlbjsKICAg ICAgICAgICAgIHRhaW50ZWQgPSAxOwogICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTE1MjcsMTYg KzE1MzQsMTYgQEAgc3RhdGljIHVuc2lnbmVkIGxvbmcgbWFya19wYWdlX29mZmxpbmUoc3RydWN0 IHBhZ2VfaW5mbyAqcGcsIGludCBicm9rZW4pCiAgICAgZG8gewogICAgICAgICBueCA9IHggPSB5 OwogCi0gICAgICAgIGlmICggKCh4ICYgUEdDX3N0YXRlKSAhPSBQR0Nfc3RhdGVfb2ZmbGluZWQp ICYmCi0gICAgICAgICAgICAgKCh4ICYgUEdDX3N0YXRlKSAhPSBQR0Nfc3RhdGVfb2ZmbGluaW5n KSApCi0gICAgICAgIHsKLSAgICAgICAgICAgIG54ICY9IH5QR0Nfc3RhdGU7Ci0gICAgICAgICAg ICBueCB8PSAoKCh4ICYgUEdDX3N0YXRlKSA9PSBQR0Nfc3RhdGVfZnJlZSkKLSAgICAgICAgICAg ICAgICAgICA/IFBHQ19zdGF0ZV9vZmZsaW5lZCA6IFBHQ19zdGF0ZV9vZmZsaW5pbmcpOwotICAg ICAgICB9CisgICAgICAgIG54ICY9IH5QR0Nfc3RhdGU7CiAKLSAgICAgICAgaWYgKCBicm9rZW4g KQotICAgICAgICAgICAgbnggfD0gUEdDX2Jyb2tlbjsKKyAgICAgICAgLyogSWYgaXQgd2FzIGFs cmVhZHkgYnJva2VuLCBpdCBzdGF5cyBicm9rZW4gKi8KKyAgICAgICAgaWYgKCBwZ2NfaXNfYnJv a2VuKHgpICkKKyAgICAgICAgICAgIGJyb2tlbiA9IDE7CisKKyAgICAgICAgaWYgKCBwZ2NfaXNf b2ZmbGluZWQoeCkgfHwgcGdjX2lzKHgsIGZyZWUpICkKKyAgICAgICAgICAgIG54IHw9IGJyb2tl biA/IFBHQ19zdGF0ZV9icm9rZW4gOiBQR0Nfc3RhdGVfb2ZmbGluZWQ7CisgICAgICAgIGVsc2UK KyAgICAgICAgICAgIG54IHw9IGJyb2tlbiA/IFBHQ19zdGF0ZV9icm9rZW5fb2ZmbGluaW5nIDog UEdDX3N0YXRlX29mZmxpbmluZzsKIAogICAgICAgICBpZiAoIHggPT0gbnggKQogICAgICAgICAg ICAgYnJlYWs7CkBAIC0xNjA5LDcgKzE2MTYsNyBAQCBpbnQgb2ZmbGluZV9wYWdlKG1mbl90IG1m biwgaW50IGJyb2tlbiwgdWludDMyX3QgKnN0YXR1cykKICAgICAgKiBuZWVkIHRvIHByZXZlbnQg bWFsaWNpb3VzIGd1ZXN0IGFjY2VzcyB0aGUgYnJva2VuIHBhZ2UgYWdhaW4uCiAgICAgICogVW5k ZXIgc3VjaCBjYXNlLCBoeXBlcnZpc29yIHNodXRkb3duIGd1ZXN0LCBwcmV2ZW50aW5nIHJlY3Vy c2l2ZSBtY2UuCiAgICAgICovCi0gICAgaWYgKCAocGctPmNvdW50X2luZm8gJiBQR0NfYnJva2Vu KSAmJiAob3duZXIgPSBwYWdlX2dldF9vd25lcihwZykpICkKKyAgICBpZiAoIHBhZ2VfaXNfYnJv a2VuKHBnKSAmJiAob3duZXIgPSBwYWdlX2dldF9vd25lcihwZykpICkKICAgICB7CiAgICAgICAg ICpzdGF0dXMgPSBQR19PRkZMSU5FX0FHQUlOOwogICAgICAgICBkb21haW5fY3Jhc2gob3duZXIp OwpAQCAtMTYyMCw3ICsxNjI3LDcgQEAgaW50IG9mZmxpbmVfcGFnZShtZm5fdCBtZm4sIGludCBi cm9rZW4sIHVpbnQzMl90ICpzdGF0dXMpCiAKICAgICBvbGRfaW5mbyA9IG1hcmtfcGFnZV9vZmZs aW5lKHBnLCBicm9rZW4pOwogCi0gICAgaWYgKCBwYWdlX3N0YXRlX2lzKHBnLCBvZmZsaW5lZCkg KQorICAgIGlmICggcGFnZV9pc19vZmZsaW5lZChwZykgKQogICAgIHsKICAgICAgICAgcmVzZXJ2 ZV9oZWFwX3BhZ2UocGcpOwogCkBAIC0xNjk5LDE5ICsxNzA2LDE4IEBAIHVuc2lnbmVkIGludCBv bmxpbmVfcGFnZShtZm5fdCBtZm4sIHVpbnQzMl90ICpzdGF0dXMpCiAgICAgZG8gewogICAgICAg ICByZXQgPSAqc3RhdHVzID0gMDsKIAotICAgICAgICBpZiAoIHkgJiBQR0NfYnJva2VuICkKKyAg ICAgICAgaWYgKCBwZ2NfaXNfYnJva2VuKHkpICkKICAgICAgICAgewogICAgICAgICAgICAgcmV0 ID0gLUVJTlZBTDsKLSAgICAgICAgICAgICpzdGF0dXMgPSBQR19PTkxJTkVfRkFJTEVEIHxQR19P TkxJTkVfQlJPS0VOOworICAgICAgICAgICAgKnN0YXR1cyA9IFBHX09OTElORV9GQUlMRUQgfCBQ R19PTkxJTkVfQlJPS0VOOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLQotICAgICAg ICBpZiAoICh5ICYgUEdDX3N0YXRlKSA9PSBQR0Nfc3RhdGVfb2ZmbGluZWQgKQorICAgICAgICBl bHNlIGlmICggcGdjX2lzKHksIG9mZmxpbmVkKSApCiAgICAgICAgIHsKICAgICAgICAgICAgIHBh Z2VfbGlzdF9kZWwocGcsICZwYWdlX29mZmxpbmVkX2xpc3QpOwogICAgICAgICAgICAgKnN0YXR1 cyA9IFBHX09OTElORV9PTkxJTkVEOwogICAgICAgICB9Ci0gICAgICAgIGVsc2UgaWYgKCAoeSAm IFBHQ19zdGF0ZSkgPT0gUEdDX3N0YXRlX29mZmxpbmluZyApCisgICAgICAgIGVsc2UgaWYgKCBw Z2NfaXMoeSwgb2ZmbGluaW5nKSApCiAgICAgICAgIHsKICAgICAgICAgICAgICpzdGF0dXMgPSBQ R19PTkxJTkVfT05MSU5FRDsKICAgICAgICAgfQpAQCAtMTcyNiw3ICsxNzMyLDcgQEAgdW5zaWdu ZWQgaW50IG9ubGluZV9wYWdlKG1mbl90IG1mbiwgdWludDMyX3QgKnN0YXR1cykKIAogICAgIHNw aW5fdW5sb2NrKCZoZWFwX2xvY2spOwogCi0gICAgaWYgKCAoeSAmIFBHQ19zdGF0ZSkgPT0gUEdD X3N0YXRlX29mZmxpbmVkICkKKyAgICBpZiAoIHBnY19pcyh5LCBvZmZsaW5lZCkgKQogICAgICAg ICBmcmVlX2hlYXBfcGFnZXMocGcsIDAsIGZhbHNlKTsKIAogICAgIHJldHVybiByZXQ7CkBAIC0x NzQ3LDExICsxNzUzLDExIEBAIGludCBxdWVyeV9wYWdlX29mZmxpbmUobWZuX3QgbWZuLCB1aW50 MzJfdCAqc3RhdHVzKQogCiAgICAgcGcgPSBtZm5fdG9fcGFnZShtZm4pOwogCi0gICAgaWYgKCBw YWdlX3N0YXRlX2lzKHBnLCBvZmZsaW5pbmcpICkKKyAgICBpZiAoIHBhZ2VfaXNfb2ZmbGluaW5n KHBnKSApCiAgICAgICAgICpzdGF0dXMgfD0gUEdfT0ZGTElORV9TVEFUVVNfT0ZGTElORV9QRU5E SU5HOwotICAgIGlmICggcGctPmNvdW50X2luZm8gJiBQR0NfYnJva2VuICkKKyAgICBpZiAoIHBh Z2VfaXNfYnJva2VuKHBnKSApCiAgICAgICAgICpzdGF0dXMgfD0gUEdfT0ZGTElORV9TVEFUVVNf QlJPS0VOOwotICAgIGlmICggcGFnZV9zdGF0ZV9pcyhwZywgb2ZmbGluZWQpICkKKyAgICBpZiAo IHBhZ2VfaXNfb2ZmbGluZWQocGcpICkKICAgICAgICAgKnN0YXR1cyB8PSBQR19PRkZMSU5FX1NU QVRVU19PRkZMSU5FRDsKIAogICAgIHNwaW5fdW5sb2NrKCZoZWFwX2xvY2spOwpAQCAtMjUxOSw3 ICsyNTI1LDcgQEAgX19pbml0Y2FsbChwYWdlYWxsb2Nfa2V5aGFuZGxlcl9pbml0KTsKIAogdm9p ZCBzY3J1Yl9vbmVfcGFnZShzdHJ1Y3QgcGFnZV9pbmZvICpwZykKIHsKLSAgICBpZiAoIHVubGlr ZWx5KHBnLT5jb3VudF9pbmZvICYgUEdDX2Jyb2tlbikgKQorICAgIGlmICggdW5saWtlbHkocGFn ZV9pc19icm9rZW4ocGcpKSApCiAgICAgICAgIHJldHVybjsKIAogI2lmbmRlZiBOREVCVUcKZGlm ZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vbW0uaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0v bW0uaAppbmRleCA3ZGY5MTI4MGJjLi5hODc3NzkxZDFjIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVk ZS9hc20tYXJtL21tLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLWFybS9tbS5oCkBAIC0xMDgsMjEg KzEwOCwzNSBAQCBzdHJ1Y3QgcGFnZV9pbmZvCiAgIC8qIFBhZ2UgaXMgWGVuIGhlYXA/ICovCiAj ZGVmaW5lIF9QR0NfeGVuX2hlYXAgICAgIFBHX3NoaWZ0KDIpCiAjZGVmaW5lIFBHQ194ZW5faGVh cCAgICAgIFBHX21hc2soMSwgMikKLS8qIC4uLiAqLwotLyogUGFnZSBpcyBicm9rZW4/ICovCi0j ZGVmaW5lIF9QR0NfYnJva2VuICAgICAgIFBHX3NoaWZ0KDcpCi0jZGVmaW5lIFBHQ19icm9rZW4g ICAgICAgIFBHX21hc2soMSwgNykKLSAvKiBNdXR1YWxseS1leGNsdXNpdmUgcGFnZSBzdGF0ZXM6 IHsgaW51c2UsIG9mZmxpbmluZywgb2ZmbGluZWQsIGZyZWUgfS4gKi8KLSNkZWZpbmUgUEdDX3N0 YXRlICAgICAgICAgUEdfbWFzaygzLCA5KQotI2RlZmluZSBQR0Nfc3RhdGVfaW51c2UgICBQR19t YXNrKDAsIDkpCi0jZGVmaW5lIFBHQ19zdGF0ZV9vZmZsaW5pbmcgUEdfbWFzaygxLCA5KQotI2Rl ZmluZSBQR0Nfc3RhdGVfb2ZmbGluZWQgUEdfbWFzaygyLCA5KQotI2RlZmluZSBQR0Nfc3RhdGVf ZnJlZSAgICBQR19tYXNrKDMsIDkpCi0jZGVmaW5lIHBhZ2Vfc3RhdGVfaXMocGcsIHN0KSAoKChw ZyktPmNvdW50X2luZm8mUEdDX3N0YXRlKSA9PSBQR0Nfc3RhdGVfIyNzdCkKKyAvKgorICAqIE11 dHVhbGx5LWV4Y2x1c2l2ZSBwYWdlIHN0YXRlczoKKyAgKiB7IGludXNlLCBvZmZsaW5pbmcsIG9m ZmxpbmVkLCBmcmVlLCBicm9rZW5fb2ZmbGluaW5nLCBicm9rZW4gfQorICAqLworI2RlZmluZSBQ R0Nfc3RhdGUgICAgICAgICAgICAgICAgICBQR19tYXNrKDcsIDkpCisjZGVmaW5lIFBHQ19zdGF0 ZV9pbnVzZSAgICAgICAgICAgIFBHX21hc2soMCwgOSkKKyNkZWZpbmUgUEdDX3N0YXRlX29mZmxp bmluZyAgICAgICAgUEdfbWFzaygxLCA5KQorI2RlZmluZSBQR0Nfc3RhdGVfb2ZmbGluZWQgICAg ICAgICBQR19tYXNrKDIsIDkpCisjZGVmaW5lIFBHQ19zdGF0ZV9mcmVlICAgICAgICAgICAgIFBH X21hc2soMywgOSkKKyNkZWZpbmUgUEdDX3N0YXRlX2Jyb2tlbl9vZmZsaW5pbmcgUEdfbWFzayg0 LCA5KSAvKiBCcm9rZW4gYW5kIG9mZmxpbmluZyAqLworI2RlZmluZSBQR0Nfc3RhdGVfYnJva2Vu ICAgICAgICAgICBQR19tYXNrKDUsIDkpIC8qIEJyb2tlbiBhbmQgb2ZmbGluZWQgKi8KKworI2Rl ZmluZSBwZ2NfaXMocGdjLCBzdCkgICAgICAgICAgICAoKChwZ2MpICYgUEdDX3N0YXRlKSA9PSBQ R0Nfc3RhdGVfIyNzdCkKKyNkZWZpbmUgcGFnZV9zdGF0ZV9pcyhwZywgc3QpICAgICAgIHBnY19p cygocGcpLT5jb3VudF9pbmZvLCBzdCkKKworI2RlZmluZSBwZ2NfaXNfYnJva2VuKHBnYykgICAg ICAgICAocGdjX2lzKHBnYywgYnJva2VuKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwZ2NfaXMocGdjLCBicm9rZW5fb2ZmbGluaW5nKSkKKyNkZWZpbmUgcGdjX2lz X29mZmxpbmVkKHBnYykgICAgICAgKHBnY19pcyhwZ2MsIG9mZmxpbmVkKSB8fCBcCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ2NfaXMocGdjLCBicm9rZW4pKQorI2RlZmlu ZSBwZ2NfaXNfb2ZmbGluaW5nKHBnYykgICAgICAocGdjX2lzKHBnYywgb2ZmbGluaW5nKSB8fCBc CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ2NfaXMocGdjLCBicm9rZW5f b2ZmbGluaW5nKSkKKworI2RlZmluZSBwYWdlX2lzX2Jyb2tlbihwZykgICAgICAgICAocGdjX2lz X2Jyb2tlbigocGcpLT5jb3VudF9pbmZvKSkKKyNkZWZpbmUgcGFnZV9pc19vZmZsaW5lZChwZykg ICAgICAgKHBnY19pc19icm9rZW4oKHBnKS0+Y291bnRfaW5mbykpCisjZGVmaW5lIHBhZ2VfaXNf b2ZmbGluaW5nKHBnKSAgICAgIChwZ2NfaXNfYnJva2VuKChwZyktPmNvdW50X2luZm8pKQorCiAv KiBQYWdlIGlzIG5vdCByZWZlcmVuY2UgY291bnRlZCAqLwogI2RlZmluZSBfUEdDX2V4dHJhICAg ICAgICBQR19zaGlmdCgxMCkKICNkZWZpbmUgUEdDX2V4dHJhICAgICAgICAgUEdfbWFzaygxLCAx MCkKLQogLyogQ291bnQgb2YgcmVmZXJlbmNlcyB0byB0aGlzIGZyYW1lLiAqLwogI2RlZmluZSBQ R0NfY291bnRfd2lkdGggICBQR19zaGlmdCgxMCkKICNkZWZpbmUgUEdDX2NvdW50X21hc2sgICAg KCgxVUw8PFBHQ19jb3VudF93aWR0aCktMSkKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14 ODYvbW0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAppbmRleCBhMDZiMmZiODFmLi4xMjAz ZjFiMTc5IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L21tLmgKKysrIGIveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9tbS5oCkBAIC02NywxNiArNjcsMzIgQEAKICAvKiAzLWJpdCBQQVQvUENE L1BXVCBjYWNoZS1hdHRyaWJ1dGUgaGludC4gKi8KICNkZWZpbmUgUEdDX2NhY2hlYXR0cl9iYXNl IFBHX3NoaWZ0KDYpCiAjZGVmaW5lIFBHQ19jYWNoZWF0dHJfbWFzayBQR19tYXNrKDcsIDYpCi0g LyogUGFnZSBpcyBicm9rZW4/ICovCi0jZGVmaW5lIF9QR0NfYnJva2VuICAgICAgIFBHX3NoaWZ0 KDcpCi0jZGVmaW5lIFBHQ19icm9rZW4gICAgICAgIFBHX21hc2soMSwgNykKLSAvKiBNdXR1YWxs eS1leGNsdXNpdmUgcGFnZSBzdGF0ZXM6IHsgaW51c2UsIG9mZmxpbmluZywgb2ZmbGluZWQsIGZy ZWUgfS4gKi8KLSNkZWZpbmUgUEdDX3N0YXRlICAgICAgICAgUEdfbWFzaygzLCA5KQotI2RlZmlu ZSBQR0Nfc3RhdGVfaW51c2UgICBQR19tYXNrKDAsIDkpCi0jZGVmaW5lIFBHQ19zdGF0ZV9vZmZs aW5pbmcgUEdfbWFzaygxLCA5KQotI2RlZmluZSBQR0Nfc3RhdGVfb2ZmbGluZWQgUEdfbWFzaygy LCA5KQotI2RlZmluZSBQR0Nfc3RhdGVfZnJlZSAgICBQR19tYXNrKDMsIDkpCi0jZGVmaW5lIHBh Z2Vfc3RhdGVfaXMocGcsIHN0KSAoKChwZyktPmNvdW50X2luZm8mUEdDX3N0YXRlKSA9PSBQR0Nf c3RhdGVfIyNzdCkKKyAvKgorICAqIE11dHVhbGx5LWV4Y2x1c2l2ZSBwYWdlIHN0YXRlczoKKyAg KiB7IGludXNlLCBvZmZsaW5pbmcsIG9mZmxpbmVkLCBmcmVlLCBicm9rZW5fb2ZmbGluaW5nLCBi cm9rZW4gfQorICAqLworI2RlZmluZSBQR0Nfc3RhdGUgICAgICAgICAgICAgICAgICBQR19tYXNr KDcsIDkpCisjZGVmaW5lIFBHQ19zdGF0ZV9pbnVzZSAgICAgICAgICAgIFBHX21hc2soMCwgOSkK KyNkZWZpbmUgUEdDX3N0YXRlX29mZmxpbmluZyAgICAgICAgUEdfbWFzaygxLCA5KQorI2RlZmlu ZSBQR0Nfc3RhdGVfb2ZmbGluZWQgICAgICAgICBQR19tYXNrKDIsIDkpCisjZGVmaW5lIFBHQ19z dGF0ZV9mcmVlICAgICAgICAgICAgIFBHX21hc2soMywgOSkKKyNkZWZpbmUgUEdDX3N0YXRlX2Jy b2tlbl9vZmZsaW5pbmcgUEdfbWFzayg0LCA5KSAvKiBCcm9rZW4gYW5kIG9mZmxpbmluZyAqLwor I2RlZmluZSBQR0Nfc3RhdGVfYnJva2VuICAgICAgICAgICBQR19tYXNrKDUsIDkpIC8qIEJyb2tl biBhbmQgb2ZmbGluZWQgKi8KKworI2RlZmluZSBwZ2NfaXMocGdjLCBzdCkgICAgICAgICAgICAo KChwZ2MpICYgUEdDX3N0YXRlKSA9PSBQR0Nfc3RhdGVfIyNzdCkKKyNkZWZpbmUgcGFnZV9zdGF0 ZV9pcyhwZywgc3QpICAgICAgIHBnY19pcygocGcpLT5jb3VudF9pbmZvLCBzdCkKKworI2RlZmlu ZSBwZ2NfaXNfYnJva2VuKHBnYykgICAgICAgICAocGdjX2lzKHBnYywgYnJva2VuKSB8fCBcCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ2NfaXMocGdjLCBicm9rZW5fb2Zm bGluaW5nKSkKKyNkZWZpbmUgcGdjX2lzX29mZmxpbmVkKHBnYykgICAgICAgKHBnY19pcyhwZ2Ms IG9mZmxpbmVkKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ2Nf aXMocGdjLCBicm9rZW4pKQorI2RlZmluZSBwZ2NfaXNfb2ZmbGluaW5nKHBnYykgICAgICAocGdj X2lzKHBnYywgb2ZmbGluaW5nKSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwZ2NfaXMocGdjLCBicm9rZW5fb2ZmbGluaW5nKSkKKworI2RlZmluZSBwYWdlX2lzX2Jy b2tlbihwZykgICAgICAgICAocGdjX2lzX2Jyb2tlbigocGcpLT5jb3VudF9pbmZvKSkKKyNkZWZp bmUgcGFnZV9pc19vZmZsaW5lZChwZykgICAgICAgKHBnY19pc19icm9rZW4oKHBnKS0+Y291bnRf aW5mbykpCisjZGVmaW5lIHBhZ2VfaXNfb2ZmbGluaW5nKHBnKSAgICAgIChwZ2NfaXNfYnJva2Vu KChwZyktPmNvdW50X2luZm8pKQorCiAvKiBQYWdlIGlzIG5vdCByZWZlcmVuY2UgY291bnRlZCAq LwogI2RlZmluZSBfUEdDX2V4dHJhICAgICAgICBQR19zaGlmdCgxMCkKICNkZWZpbmUgUEdDX2V4 dHJhICAgICAgICAgUEdfbWFzaygxLCAxMCkKLS0gCjIuMjEuMAoKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVu LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcv bWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=