From: Thomas Garnier Subject: [PATCH v2 14/27] x86/percpu: Adapt percpu for PIE support Date: Tue, 13 Mar 2018 13:59:32 -0700 Message-ID: <20180313205945.245105-15-thgarnie@google.com> References: <20180313205945.245105-1-thgarnie@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: linux-arch@vger.kernel.org, kvm@vger.kernel.org, linux-pm@vger.kernel.org, x86@kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, linux-sparse@vger.kernel.org, linux-crypto@vger.kernel.org, kernel-hardening@lists.openwall.com, xen-devel@lists.xenproject.org To: Herbert Xu , "David S . Miller" , Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Peter Zijlstra , Josh Poimboeuf , Greg Kroah-Hartman , Kate Stewart , Thomas Garnier , Arnd Bergmann , Philippe Ombredanne , Arnaldo Carvalho de Melo , Andrey Ryabinin , Matthias Kaehlcke , Kees Cook , Tom Lendacky , "Kirill A . Shutemov" , Andy Lutomirski , Dominik Brodowski , Borislav Petkov , Borislav Petkov , "Raf Return-path: In-Reply-To: <20180313205945.245105-1-thgarnie@google.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" List-Id: linux-crypto.vger.kernel.org UGVycGN1IHVzZXMgYSBjbGV2ZXIgZGVzaWduIHdoZXJlIHRoZSAucGVyY3UgRUxGIHNlY3Rpb24g aGFzIGEgdmlydHVhbAphZGRyZXNzIG9mIHplcm8gYW5kIHRoZSByZWxvY2F0aW9uIGNvZGUgYXZv aWQgcmVsb2NhdGluZyBzcGVjaWZpYwpzeW1ib2xzLiBJdCBtYWtlcyB0aGUgY29kZSBzaW1wbGUg YW5kIGVhc2lseSBhZGFwdGFibGUgd2l0aCBvciB3aXRob3V0ClNNUCBzdXBwb3J0LgoKVGhpcyBk ZXNpZ24gaXMgaW5jb21wYXRpYmxlIHdpdGggUElFIGJlY2F1c2UgZ2VuZXJhdGVkIGNvZGUgYWx3 YXlzIHRyeSB0bwphY2Nlc3MgdGhlIHplcm8gdmlydHVhbCBhZGRyZXNzIHJlbGF0aXZlIHRvIHRo ZSBkZWZhdWx0IG1hcHBpbmcgYWRkcmVzcy4KSXQgYmVjb21lcyBpbXBvc3NpYmxlIHdoZW4gS0FT TFIgaXMgY29uZmlndXJlZCB0byBnbyBiZWxvdyAtMkcuIFRoaXMKcGF0Y2ggc29sdmVzIHRoaXMg cHJvYmxlbSBieSByZW1vdmluZyB0aGUgemVybyBtYXBwaW5nIGFuZCBhZGFwdGluZyB0aGUgR1MK YmFzZSB0byBiZSByZWxhdGl2ZSB0byB0aGUgZXhwZWN0ZWQgYWRkcmVzcy4gVGhlc2UgY2hhbmdl cyBhcmUgZG9uZSBvbmx5CndoZW4gUElFIGlzIGVuYWJsZWQuIFRoZSBvcmlnaW5hbCBpbXBsZW1l bnRhdGlvbiBpcyBrZXB0IGFzLWlzCmJ5IGRlZmF1bHQuCgpUaGUgYXNzZW1ibHkgYW5kIFBFUl9D UFUgbWFjcm9zIGFyZSBjaGFuZ2VkIHRvIHVzZSByZWxhdGl2ZSByZWZlcmVuY2VzCndoZW4gUElF IGlzIGVuYWJsZWQuCgpUaGUgS0FMTFNZTVNfQUJTT0xVVEVfUEVSQ1BVIGNvbmZpZ3VyYXRpb24g aXMgZGlzYWJsZWQgd2l0aCBQSUUgZ2l2ZW4KcGVyY3B1IHN5bWJvbHMgYXJlIG5vdCBhYnNvbHV0 ZSBpbiB0aGlzIGNhc2UuCgpQb3NpdGlvbiBJbmRlcGVuZGVudCBFeGVjdXRhYmxlIChQSUUpIHN1 cHBvcnQgd2lsbCBhbGxvdyB0byBleHRlbmRlZCB0aGUKS0FTTFIgcmFuZG9taXphdGlvbiByYW5n ZSBiZWxvdyB0aGUgLTJHIG1lbW9yeSBsaW1pdC4KClNpZ25lZC1vZmYtYnk6IFRob21hcyBHYXJu aWVyIDx0aGdhcm5pZUBnb29nbGUuY29tPgotLS0KIGFyY2gveDg2L2VudHJ5L2NhbGxpbmcuaCAg ICAgICB8ICAyICstCiBhcmNoL3g4Ni9lbnRyeS9lbnRyeV82NC5TICAgICAgfCAgNCArKy0tCiBh cmNoL3g4Ni9pbmNsdWRlL2FzbS9wZXJjcHUuaCAgfCAyNSArKysrKysrKysrKysrKysrKysrLS0t LS0tCiBhcmNoL3g4Ni9rZXJuZWwvY3B1L2NvbW1vbi5jICAgfCAgNCArKystCiBhcmNoL3g4Ni9r ZXJuZWwvaGVhZF82NC5TICAgICAgfCAgNCArKysrCiBhcmNoL3g4Ni9rZXJuZWwvc2V0dXBfcGVy Y3B1LmMgfCAgMiArLQogYXJjaC94ODYva2VybmVsL3ZtbGludXgubGRzLlMgIHwgMTMgKysrKysr KysrKystLQogYXJjaC94ODYvbGliL2NtcHhjaGcxNmJfZW11LlMgIHwgIDggKysrKy0tLS0KIGFy Y2gveDg2L3hlbi94ZW4tYXNtLlMgICAgICAgICB8IDEyICsrKysrKy0tLS0tLQogaW5pdC9LY29u ZmlnICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIDEwIGZpbGVzIGNoYW5nZWQsIDUyIGluc2Vy dGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2VudHJ5L2Nh bGxpbmcuaCBiL2FyY2gveDg2L2VudHJ5L2NhbGxpbmcuaAppbmRleCBiZTYzMzMwYzU1MTEuLjdi NDhkOTcxMTFiNSAxMDA2NDQKLS0tIGEvYXJjaC94ODYvZW50cnkvY2FsbGluZy5oCisrKyBiL2Fy Y2gveDg2L2VudHJ5L2NhbGxpbmcuaApAQCAtMjE2LDcgKzIxNiw3IEBAIEZvciAzMi1iaXQgd2Ug aGF2ZSB0aGUgZm9sbG93aW5nIGNvbnZlbnRpb25zIC0ga2VybmVsIGlzIGJ1aWx0IHdpdGgKIC5l bmRtCiAKICNkZWZpbmUgVEhJU19DUFVfdXNlcl9wY2lkX2ZsdXNoX21hc2sgICBcCi0JUEVSX0NQ VV9WQVIoY3B1X3RsYnN0YXRlKSArIFRMQl9TVEFURV91c2VyX3BjaWRfZmx1c2hfbWFzaworCVBF Ul9DUFVfVkFSKGNwdV90bGJzdGF0ZSArIFRMQl9TVEFURV91c2VyX3BjaWRfZmx1c2hfbWFzaykK IAogLm1hY3JvIFNXSVRDSF9UT19VU0VSX0NSM19OT1NUQUNLIHNjcmF0Y2hfcmVnOnJlcSBzY3Jh dGNoX3JlZzI6cmVxCiAJQUxURVJOQVRJVkUgImptcCAuTGVuZF9cQCIsICIiLCBYODZfRkVBVFVS RV9QVEkKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2VudHJ5L2VudHJ5XzY0LlMgYi9hcmNoL3g4Ni9l bnRyeS9lbnRyeV82NC5TCmluZGV4IGM1MzEyMzQ2ODM2NC4uZDM0Nzk0MzY4ZTIwIDEwMDY0NAot LS0gYS9hcmNoL3g4Ni9lbnRyeS9lbnRyeV82NC5TCisrKyBiL2FyY2gveDg2L2VudHJ5L2VudHJ5 XzY0LlMKQEAgLTM1OCw3ICszNTgsNyBAQCBFTlRSWShfX3N3aXRjaF90b19hc20pCiAKICNpZmRl ZiBDT05GSUdfQ0NfU1RBQ0tQUk9URUNUT1IKIAltb3ZxCVRBU0tfc3RhY2tfY2FuYXJ5KCVyc2kp LCAlcmJ4Ci0JbW92cQklcmJ4LCBQRVJfQ1BVX1ZBUihpcnFfc3RhY2tfdW5pb24pK3N0YWNrX2Nh bmFyeV9vZmZzZXQKKwltb3ZxCSVyYngsIFBFUl9DUFVfVkFSKGlycV9zdGFja191bmlvbiArIHN0 YWNrX2NhbmFyeV9vZmZzZXQpCiAjZW5kaWYKIAogI2lmZGVmIENPTkZJR19SRVRQT0xJTkUKQEAg LTg5Niw3ICs4OTYsNyBAQCBhcGljaW50ZXJydXB0IElSUV9XT1JLX1ZFQ1RPUgkJCWlycV93b3Jr X2ludGVycnVwdAkJc21wX2lycV93b3JrX2ludGVycnVwdAogLyoKICAqIEV4Y2VwdGlvbiBlbnRy eSBwb2ludHMuCiAgKi8KLSNkZWZpbmUgQ1BVX1RTU19JU1QoeCkgUEVSX0NQVV9WQVIoY3B1X3Rz c19ydykgKyAoVFNTX2lzdCArICgoeCkgLSAxKSAqIDgpCisjZGVmaW5lIENQVV9UU1NfSVNUKHgp IFBFUl9DUFVfVkFSKGNwdV90c3NfcncgKyAoVFNTX2lzdCArICgoeCkgLSAxKSAqIDgpKQogCiAu bWFjcm8gaWR0ZW50cnkgc3ltIGRvX3N5bSBoYXNfZXJyb3JfY29kZTpyZXEgcGFyYW5vaWQ9MCBz aGlmdF9pc3Q9LTEKIEVOVFJZKFxzeW0pCmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9pbmNsdWRlL2Fz bS9wZXJjcHUuaCBiL2FyY2gveDg2L2luY2x1ZGUvYXNtL3BlcmNwdS5oCmluZGV4IGEwNmIwNzM5 OWQxNy4uN2QxMjcxYjUzNmVhIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9wZXJj cHUuaAorKysgYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9wZXJjcHUuaApAQCAtNSw5ICs1LDExIEBA CiAjaWZkZWYgQ09ORklHX1g4Nl82NAogI2RlZmluZSBfX3BlcmNwdV9zZWcJCWdzCiAjZGVmaW5l IF9fcGVyY3B1X21vdl9vcAkJbW92cQorI2RlZmluZSBfX3BlcmNwdV9yZWwJCSglcmlwKQogI2Vs c2UKICNkZWZpbmUgX19wZXJjcHVfc2VnCQlmcwogI2RlZmluZSBfX3BlcmNwdV9tb3Zfb3AJCW1v dmwKKyNkZWZpbmUgX19wZXJjcHVfcmVsCiAjZW5kaWYKIAogI2lmZGVmIF9fQVNTRU1CTFlfXwpA QCAtMjgsMTAgKzMwLDE0IEBACiAjZGVmaW5lIFBFUl9DUFUodmFyLCByZWcpCQkJCQkJXAogCV9f cGVyY3B1X21vdl9vcCAlX19wZXJjcHVfc2VnOnRoaXNfY3B1X29mZiwgcmVnOwkJXAogCWxlYSB2 YXIocmVnKSwgcmVnCi0jZGVmaW5lIFBFUl9DUFVfVkFSKHZhcikJJV9fcGVyY3B1X3NlZzp2YXIK Ky8qIENvbXBhdGlibGUgd2l0aCBQb3NpdGlvbiBJbmRlcGVuZGVudCBDb2RlICovCisjZGVmaW5l IFBFUl9DUFVfVkFSKHZhcikJCSVfX3BlcmNwdV9zZWc6KHZhcikjI19fcGVyY3B1X3JlbAorLyog UmFyZSBhYnNvbHV0ZSByZWZlcmVuY2UgKi8KKyNkZWZpbmUgUEVSX0NQVV9WQVJfQUJTKHZhcikJ CSVfX3BlcmNwdV9zZWc6dmFyCiAjZWxzZSAvKiAhIFNNUCAqLwogI2RlZmluZSBQRVJfQ1BVKHZh ciwgcmVnKQlfX3BlcmNwdV9tb3Zfb3AgJHZhciwgcmVnCi0jZGVmaW5lIFBFUl9DUFVfVkFSKHZh cikJdmFyCisjZGVmaW5lIFBFUl9DUFVfVkFSKHZhcikJKHZhcikjI19fcGVyY3B1X3JlbAorI2Rl ZmluZSBQRVJfQ1BVX1ZBUl9BQlModmFyKQl2YXIKICNlbmRpZgkvKiBTTVAgKi8KIAogI2lmZGVm IENPTkZJR19YODZfNjRfU01QCkBAIC0yMDksMjcgKzIxNSwzNCBAQCBkbyB7CQkJCQkJCQkJXAog CXBmb19yZXRfXzsJCQkJCVwKIH0pCiAKKy8qIFBvc2l0aW9uIEluZGVwZW5kZW50IGNvZGUgdXNl cyByZWxhdGl2ZSBhZGRyZXNzZXMgb25seSAqLworI2lmZGVmIENPTkZJR19YODZfUElFCisjZGVm aW5lIF9fcGVyY3B1X3N0YWJsZV9hcmcgX19wZXJjcHVfYXJnKGExKQorI2Vsc2UKKyNkZWZpbmUg X19wZXJjcHVfc3RhYmxlX2FyZyBfX3BlcmNwdV9hcmcoUDEpCisjZW5kaWYKKwogI2RlZmluZSBw ZXJjcHVfc3RhYmxlX29wKG9wLCB2YXIpCQkJXAogKHsJCQkJCQkJXAogCXR5cGVvZih2YXIpIHBm b19yZXRfXzsJCQkJXAogCXN3aXRjaCAoc2l6ZW9mKHZhcikpIHsJCQkJXAogCWNhc2UgMToJCQkJ CQlcCi0JCWFzbShvcCAiYiAiX19wZXJjcHVfYXJnKFAxKSIsJTAiCVwKKwkJYXNtKG9wICJiICJf X3BlcmNwdV9zdGFibGVfYXJnICIsJTAiCVwKIAkJICAgIDogIj1xIiAocGZvX3JldF9fKQkJCVwK IAkJICAgIDogInAiICgmKHZhcikpKTsJCQlcCiAJCWJyZWFrOwkJCQkJXAogCWNhc2UgMjoJCQkJ CQlcCi0JCWFzbShvcCAidyAiX19wZXJjcHVfYXJnKFAxKSIsJTAiCVwKKwkJYXNtKG9wICJ3ICJf X3BlcmNwdV9zdGFibGVfYXJnICIsJTAiCVwKIAkJICAgIDogIj1yIiAocGZvX3JldF9fKQkJCVwK IAkJICAgIDogInAiICgmKHZhcikpKTsJCQlcCiAJCWJyZWFrOwkJCQkJXAogCWNhc2UgNDoJCQkJ CQlcCi0JCWFzbShvcCAibCAiX19wZXJjcHVfYXJnKFAxKSIsJTAiCVwKKwkJYXNtKG9wICJsICJf X3BlcmNwdV9zdGFibGVfYXJnICIsJTAiCVwKIAkJICAgIDogIj1yIiAocGZvX3JldF9fKQkJCVwK IAkJICAgIDogInAiICgmKHZhcikpKTsJCQlcCiAJCWJyZWFrOwkJCQkJXAogCWNhc2UgODoJCQkJ CQlcCi0JCWFzbShvcCAicSAiX19wZXJjcHVfYXJnKFAxKSIsJTAiCVwKKwkJYXNtKG9wICJxICJf X3BlcmNwdV9zdGFibGVfYXJnICIsJTAiCVwKIAkJICAgIDogIj1yIiAocGZvX3JldF9fKQkJCVwK IAkJICAgIDogInAiICgmKHZhcikpKTsJCQlcCiAJCWJyZWFrOwkJCQkJXApkaWZmIC0tZ2l0IGEv YXJjaC94ODYva2VybmVsL2NwdS9jb21tb24uYyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9u LmMKaW5kZXggMzQ4Y2Y0ODIxMjQwLi4wZTlhODdhMzRmNzYgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2 L2tlcm5lbC9jcHUvY29tbW9uLmMKKysrIGIvYXJjaC94ODYva2VybmVsL2NwdS9jb21tb24uYwpA QCAtNDg3LDcgKzQ4Nyw5IEBAIHZvaWQgbG9hZF9wZXJjcHVfc2VnbWVudChpbnQgY3B1KQogCWxv YWRzZWdtZW50KGZzLCBfX0tFUk5FTF9QRVJDUFUpOwogI2Vsc2UKIAlfX2xvYWRzZWdtZW50X3Np bXBsZShncywgMCk7Ci0Jd3Jtc3JsKE1TUl9HU19CQVNFLCAodW5zaWduZWQgbG9uZylwZXJfY3B1 KGlycV9zdGFja191bmlvbi5nc19iYXNlLCBjcHUpKTsKKwl3cm1zcmwoTVNSX0dTX0JBU0UsCisJ ICAgICAgICh1bnNpZ25lZCBsb25nKXBlcl9jcHUoaXJxX3N0YWNrX3VuaW9uLmdzX2Jhc2UsIGNw dSkgLQorCSAgICAgICAodW5zaWduZWQgbG9uZylfX3Blcl9jcHVfc3RhcnQpOwogI2VuZGlmCiAJ bG9hZF9zdGFja19jYW5hcnlfc2VnbWVudCgpOwogfQpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva2Vy bmVsL2hlYWRfNjQuUyBiL2FyY2gveDg2L2tlcm5lbC9oZWFkXzY0LlMKaW5kZXggNDg2NTJmM2Vj NDZhLi44NzYyNGUxZmUyMmYgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2tlcm5lbC9oZWFkXzY0LlMK KysrIGIvYXJjaC94ODYva2VybmVsL2hlYWRfNjQuUwpAQCAtMjY2LDcgKzI2NiwxMSBAQCBFTkRQ Uk9DKHN0YXJ0X2NwdTApCiAJR0xPQkFMKGluaXRpYWxfY29kZSkKIAkucXVhZAl4ODZfNjRfc3Rh cnRfa2VybmVsCiAJR0xPQkFMKGluaXRpYWxfZ3MpCisjaWZkZWYgQ09ORklHX1g4Nl9QSUUKKwku cXVhZAkwCisjZWxzZQogCS5xdWFkCUlOSVRfUEVSX0NQVV9WQVIoaXJxX3N0YWNrX3VuaW9uKQor I2VuZGlmCiAJR0xPQkFMKGluaXRpYWxfc3RhY2spCiAJLyoKIAkgKiBUaGUgU0laRU9GX1BUUkVH UyBnYXAgaXMgYSBjb252ZW50aW9uIHdoaWNoIGhlbHBzIHRoZSBpbi1rZXJuZWwKZGlmZiAtLWdp dCBhL2FyY2gveDg2L2tlcm5lbC9zZXR1cF9wZXJjcHUuYyBiL2FyY2gveDg2L2tlcm5lbC9zZXR1 cF9wZXJjcHUuYwppbmRleCBlYTU1NGY4MTJlZTEuLmY3NjU1OTc5ZjE5YSAxMDA2NDQKLS0tIGEv YXJjaC94ODYva2VybmVsL3NldHVwX3BlcmNwdS5jCisrKyBiL2FyY2gveDg2L2tlcm5lbC9zZXR1 cF9wZXJjcHUuYwpAQCAtMjYsNyArMjYsNyBAQAogREVGSU5FX1BFUl9DUFVfUkVBRF9NT1NUTFko aW50LCBjcHVfbnVtYmVyKTsKIEVYUE9SVF9QRVJfQ1BVX1NZTUJPTChjcHVfbnVtYmVyKTsKIAot I2lmZGVmIENPTkZJR19YODZfNjQKKyNpZiBkZWZpbmVkKENPTkZJR19YODZfNjQpICYmICFkZWZp bmVkKENPTkZJR19YODZfUElFKQogI2RlZmluZSBCT09UX1BFUkNQVV9PRkZTRVQgKCh1bnNpZ25l ZCBsb25nKV9fcGVyX2NwdV9sb2FkKQogI2Vsc2UKICNkZWZpbmUgQk9PVF9QRVJDUFVfT0ZGU0VU IDAKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC92bWxpbnV4Lmxkcy5TIGIvYXJjaC94ODYv a2VybmVsL3ZtbGludXgubGRzLlMKaW5kZXggMWM0M2EyZTgzOWZhLi40YTU5NTc5MDBkY2MgMTAw NjQ0Ci0tLSBhL2FyY2gveDg2L2tlcm5lbC92bWxpbnV4Lmxkcy5TCisrKyBiL2FyY2gveDg2L2tl cm5lbC92bWxpbnV4Lmxkcy5TCkBAIC0yMDksOSArMjA5LDE0IEBAIFNFQ1RJT05TCiAJLyoKIAkg KiBwZXJjcHUgb2Zmc2V0cyBhcmUgemVyby1iYXNlZCBvbiBTTVAuICBQRVJDUFVfVkFERFIoKSBj aGFuZ2VzIHRoZQogCSAqIG91dHB1dCBQSERSLCBzbyB0aGUgbmV4dCBvdXRwdXQgc2VjdGlvbiAt IC5pbml0LnRleHQgLSBzaG91bGQKLQkgKiBzdGFydCBhbm90aGVyIHNlZ21lbnQgLSBpbml0Lgor CSAqIHN0YXJ0IGFub3RoZXIgc2VnbWVudCAtIGluaXQuIEZvciBQb3NpdGlvbiBJbmRlcGVuZGVu dCBDb2RlLCB0aGUKKwkgKiBwZXItY3B1IHNlY3Rpb24gY2Fubm90IGJlIHplcm8tYmFzZWQgYmVj YXVzZSBldmVyeXRoaW5nIGlzIHJlbGF0aXZlLgogCSAqLworI2lmZGVmIENPTkZJR19YODZfUElF CisJUEVSQ1BVX1NFQ1RJT04oSU5URVJOT0RFX0NBQ0hFX0JZVEVTKQorI2Vsc2UKIAlQRVJDUFVf VkFERFIoSU5URVJOT0RFX0NBQ0hFX0JZVEVTLCAwLCA6cGVyY3B1KQorI2VuZGlmCiAJQVNTRVJU KFNJWkVPRiguZGF0YS4ucGVyY3B1KSA8IENPTkZJR19QSFlTSUNBTF9TVEFSVCwKIAkgICAgICAg InBlci1DUFUgZGF0YSB0b28gbGFyZ2UgLSBpbmNyZWFzZSBDT05GSUdfUEhZU0lDQUxfU1RBUlQi KQogI2VuZGlmCkBAIC0zODcsNyArMzkyLDExIEBAIFNFQ1RJT05TCiAgKiBQZXItY3B1IHN5bWJv bHMgd2hpY2ggbmVlZCB0byBiZSBvZmZzZXQgZnJvbSBfX3Blcl9jcHVfbG9hZAogICogZm9yIHRo ZSBib290IHByb2Nlc3Nvci4KICAqLworI2lmZGVmIENPTkZJR19YODZfUElFCisjZGVmaW5lIElO SVRfUEVSX0NQVSh4KSBpbml0X3Blcl9jcHVfXyMjeCA9IHgKKyNlbHNlCiAjZGVmaW5lIElOSVRf UEVSX0NQVSh4KSBpbml0X3Blcl9jcHVfXyMjeCA9IHggKyBfX3Blcl9jcHVfbG9hZAorI2VuZGlm CiBJTklUX1BFUl9DUFUoZ2R0X3BhZ2UpOwogSU5JVF9QRVJfQ1BVKGlycV9zdGFja191bmlvbik7 CiAKQEAgLTM5Nyw3ICs0MDYsNyBAQCBJTklUX1BFUl9DUFUoaXJxX3N0YWNrX3VuaW9uKTsKIC4g PSBBU1NFUlQoKF9lbmQgLSBfdGV4dCA8PSBLRVJORUxfSU1BR0VfU0laRSksCiAJICAgImtlcm5l bCBpbWFnZSBiaWdnZXIgdGhhbiBLRVJORUxfSU1BR0VfU0laRSIpOwogCi0jaWZkZWYgQ09ORklH X1NNUAorI2lmIGRlZmluZWQoQ09ORklHX1NNUCkgJiYgIWRlZmluZWQoQ09ORklHX1g4Nl9QSUUp CiAuID0gQVNTRVJUKChpcnFfc3RhY2tfdW5pb24gPT0gMCksCiAgICAgICAgICAgICJpcnFfc3Rh Y2tfdW5pb24gaXMgbm90IGF0IHN0YXJ0IG9mIHBlci1jcHUgYXJlYSIpOwogI2VuZGlmCmRpZmYg LS1naXQgYS9hcmNoL3g4Ni9saWIvY21weGNoZzE2Yl9lbXUuUyBiL2FyY2gveDg2L2xpYi9jbXB4 Y2hnMTZiX2VtdS5TCmluZGV4IDliMzMwMjQyZTc0MC4uMjU0OTUwNjA0YWU0IDEwMDY0NAotLS0g YS9hcmNoL3g4Ni9saWIvY21weGNoZzE2Yl9lbXUuUworKysgYi9hcmNoL3g4Ni9saWIvY21weGNo ZzE2Yl9lbXUuUwpAQCAtMzMsMTMgKzMzLDEzIEBAIEVOVFJZKHRoaXNfY3B1X2NtcHhjaGcxNmJf ZW11KQogCXB1c2hmcQogCWNsaQogCi0JY21wcSBQRVJfQ1BVX1ZBUigoJXJzaSkpLCAlcmF4CisJ Y21wcSBQRVJfQ1BVX1ZBUl9BQlMoKCVyc2kpKSwgJXJheAogCWpuZSAuTG5vdF9zYW1lCi0JY21w cSBQRVJfQ1BVX1ZBUig4KCVyc2kpKSwgJXJkeAorCWNtcHEgUEVSX0NQVV9WQVJfQUJTKDgoJXJz aSkpLCAlcmR4CiAJam5lIC5Mbm90X3NhbWUKIAotCW1vdnEgJXJieCwgUEVSX0NQVV9WQVIoKCVy c2kpKQotCW1vdnEgJXJjeCwgUEVSX0NQVV9WQVIoOCglcnNpKSkKKwltb3ZxICVyYngsIFBFUl9D UFVfVkFSX0FCUygoJXJzaSkpCisJbW92cSAlcmN4LCBQRVJfQ1BVX1ZBUl9BQlMoOCglcnNpKSkK IAogCXBvcGZxCiAJbW92ICQxLCAlYWwKZGlmZiAtLWdpdCBhL2FyY2gveDg2L3hlbi94ZW4tYXNt LlMgYi9hcmNoL3g4Ni94ZW4veGVuLWFzbS5TCmluZGV4IDgwMTllZGQwMTI1Yy4uYTVkNzNkMzIx OGJlIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni94ZW4veGVuLWFzbS5TCisrKyBiL2FyY2gveDg2L3hl bi94ZW4tYXNtLlMKQEAgLTIxLDcgKzIxLDcgQEAKIEVOVFJZKHhlbl9pcnFfZW5hYmxlX2RpcmVj dCkKIAlGUkFNRV9CRUdJTgogCS8qIFVubWFzayBldmVudHMgKi8KLQltb3ZiICQwLCBQRVJfQ1BV X1ZBUih4ZW5fdmNwdV9pbmZvKSArIFhFTl92Y3B1X2luZm9fbWFzaworCW1vdmIgJDAsIFBFUl9D UFVfVkFSKHhlbl92Y3B1X2luZm8gKyBYRU5fdmNwdV9pbmZvX21hc2spCiAKIAkvKgogCSAqIFBy ZWVtcHQgaGVyZSBkb2Vzbid0IG1hdHRlciBiZWNhdXNlIHRoYXQgd2lsbCBkZWFsIHdpdGggYW55 CkBAIC0zMCw3ICszMCw3IEBAIEVOVFJZKHhlbl9pcnFfZW5hYmxlX2RpcmVjdCkKIAkgKi8KIAog CS8qIFRlc3QgZm9yIHBlbmRpbmcgKi8KLQl0ZXN0YiAkMHhmZiwgUEVSX0NQVV9WQVIoeGVuX3Zj cHVfaW5mbykgKyBYRU5fdmNwdV9pbmZvX3BlbmRpbmcKKwl0ZXN0YiAkMHhmZiwgUEVSX0NQVV9W QVIoeGVuX3ZjcHVfaW5mbyArIFhFTl92Y3B1X2luZm9fcGVuZGluZykKIAlqeiAxZgogCiAJY2Fs bCBjaGVja19ldmVudHMKQEAgLTQ1LDcgKzQ1LDcgQEAgRU5UUlkoeGVuX2lycV9lbmFibGVfZGly ZWN0KQogICogbm9uLXplcm8uCiAgKi8KIEVOVFJZKHhlbl9pcnFfZGlzYWJsZV9kaXJlY3QpCi0J bW92YiAkMSwgUEVSX0NQVV9WQVIoeGVuX3ZjcHVfaW5mbykgKyBYRU5fdmNwdV9pbmZvX21hc2sK Kwltb3ZiICQxLCBQRVJfQ1BVX1ZBUih4ZW5fdmNwdV9pbmZvICsgWEVOX3ZjcHVfaW5mb19tYXNr KQogCXJldAogRU5EUFJPQyh4ZW5faXJxX2Rpc2FibGVfZGlyZWN0KQogCkBAIC01OSw3ICs1OSw3 IEBAIEVORFBST0MoeGVuX2lycV9kaXNhYmxlX2RpcmVjdCkKICAqIHg4NiB1c2Ugb3Bwb3NpdGUg c2Vuc2VzIChtYXNrIHZzIGVuYWJsZSkuCiAgKi8KIEVOVFJZKHhlbl9zYXZlX2ZsX2RpcmVjdCkK LQl0ZXN0YiAkMHhmZiwgUEVSX0NQVV9WQVIoeGVuX3ZjcHVfaW5mbykgKyBYRU5fdmNwdV9pbmZv X21hc2sKKwl0ZXN0YiAkMHhmZiwgUEVSX0NQVV9WQVIoeGVuX3ZjcHVfaW5mbyArIFhFTl92Y3B1 X2luZm9fbWFzaykKIAlzZXR6ICVhaAogCWFkZGIgJWFoLCAlYWgKIAlyZXQKQEAgLTgwLDcgKzgw LDcgQEAgRU5UUlkoeGVuX3Jlc3RvcmVfZmxfZGlyZWN0KQogI2Vsc2UKIAl0ZXN0YiAkWDg2X0VG TEFHU19JRj4+OCwgJWFoCiAjZW5kaWYKLQlzZXR6IFBFUl9DUFVfVkFSKHhlbl92Y3B1X2luZm8p ICsgWEVOX3ZjcHVfaW5mb19tYXNrCisJc2V0eiBQRVJfQ1BVX1ZBUih4ZW5fdmNwdV9pbmZvICsg WEVOX3ZjcHVfaW5mb19tYXNrKQogCS8qCiAJICogUHJlZW1wdCBoZXJlIGRvZXNuJ3QgbWF0dGVy IGJlY2F1c2UgdGhhdCB3aWxsIGRlYWwgd2l0aCBhbnkKIAkgKiBwZW5kaW5nIGludGVycnVwdHMu ICBUaGUgcGVuZGluZyBjaGVjayBtYXkgZW5kIHVwIGJlaW5nIHJ1bgpAQCAtODgsNyArODgsNyBA QCBFTlRSWSh4ZW5fcmVzdG9yZV9mbF9kaXJlY3QpCiAJICovCiAKIAkvKiBjaGVjayBmb3IgdW5t YXNrZWQgYW5kIHBlbmRpbmcgKi8KLQljbXB3ICQweDAwMDEsIFBFUl9DUFVfVkFSKHhlbl92Y3B1 X2luZm8pICsgWEVOX3ZjcHVfaW5mb19wZW5kaW5nCisJY21wdyAkMHgwMDAxLCBQRVJfQ1BVX1ZB Uih4ZW5fdmNwdV9pbmZvICsgWEVOX3ZjcHVfaW5mb19wZW5kaW5nKQogCWpueiAxZgogCWNhbGwg Y2hlY2tfZXZlbnRzCiAxOgpkaWZmIC0tZ2l0IGEvaW5pdC9LY29uZmlnIGIvaW5pdC9LY29uZmln CmluZGV4IDIyMWNhYzk1MDQ0Zi4uYWNjOTA4NzU0NmFjIDEwMDY0NAotLS0gYS9pbml0L0tjb25m aWcKKysrIGIvaW5pdC9LY29uZmlnCkBAIC0xMzY1LDcgKzEzNjUsNyBAQCBjb25maWcgS0FMTFNZ TVNfQUxMCiBjb25maWcgS0FMTFNZTVNfQUJTT0xVVEVfUEVSQ1BVCiAJYm9vbAogCWRlcGVuZHMg b24gS0FMTFNZTVMKLQlkZWZhdWx0IFg4Nl82NCAmJiBTTVAKKwlkZWZhdWx0IFg4Nl82NCAmJiBT TVAgJiYgIVg4Nl9QSUUKIAogY29uZmlnIEtBTExTWU1TX0JBU0VfUkVMQVRJVkUKIAlib29sCi0t IAoyLjE2LjIuNjYwLmc3MDk4ODc5NzFiLWdvb2cKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4v bGlzdGluZm8veGVuLWRldmVs