From: Thomas Garnier Subject: [PATCH v1 10/27] x86/boot/64: Adapt assembly for PIE support Date: Wed, 11 Oct 2017 13:30:10 -0700 Message-ID: <20171011203027.11248-11-thgarnie@google.com> References: <20171011203027.11248-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 , Arnd Bergmann , Thomas Garnier , Kees Cook , Andrey Ryabinin , Matthias Kaehlcke , Tom Lendacky , Andy Lutomirski , "Kirill A . Shutemov" , Borislav Petkov , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Juergen Gross , Chris Wright , Alok Kataria , Rusty Russell , Tejun Heo In-Reply-To: <20171011203027.11248-1-thgarnie@google.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" List-Id: linux-crypto.vger.kernel.org Q2hhbmdlIHRoZSBhc3NlbWJseSBjb2RlIHRvIHVzZSBvbmx5IHJlbGF0aXZlIHJlZmVyZW5jZXMg b2Ygc3ltYm9scyBmb3IgdGhlCmtlcm5lbCB0byBiZSBQSUUgY29tcGF0aWJsZS4KCkVhcmx5IGF0 IGJvb3QsIHRoZSBrZXJuZWwgaXMgbWFwcGVkIGF0IGEgdGVtcG9yYXJ5IGFkZHJlc3Mgd2hpbGUg cHJlcGFyaW5nCnRoZSBwYWdlIHRhYmxlLiBUbyBrbm93IHRoZSBjaGFuZ2VzIG5lZWRlZCBmb3Ig dGhlIHBhZ2UgdGFibGUgd2l0aCBLQVNMUiwKdGhlIGJvb3QgY29kZSBjYWxjdWxhdGUgdGhlIGRp ZmZlcmVuY2UgYmV0d2VlbiB0aGUgZXhwZWN0ZWQgYWRkcmVzcyBvZiB0aGUKa2VybmVsIGFuZCB0 aGUgb25lIGNob3NlbiBieSBLQVNMUi4gSXQgZG9lcyBub3Qgd29yayB3aXRoIFBJRSBiZWNhdXNl IGFsbApzeW1ib2xzIGluIGNvZGUgYXJlIHJlbGF0aXZlcy4gSW5zdGVhZCBvZiBnZXR0aW5nIHRo ZSBmdXR1cmUgcmVsb2NhdGVkCnZpcnR1YWwgYWRkcmVzcywgeW91IHdpbGwgZ2V0IHRoZSBjdXJy ZW50IHRlbXBvcmFyeSBtYXBwaW5nLiBUaGUgc29sdXRpb24KaXMgdXNpbmcgZ2xvYmFsIHZhcmlh YmxlcyB0aGF0IHdpbGwgYmUgcmVsb2NhdGVkIGFzIGV4cGVjdGVkLgoKUG9zaXRpb24gSW5kZXBl bmRlbnQgRXhlY3V0YWJsZSAoUElFKSBzdXBwb3J0IHdpbGwgYWxsb3cgdG8gZXh0ZW5kZWQgdGhl CktBU0xSIHJhbmRvbWl6YXRpb24gcmFuZ2UgYmVsb3cgdGhlIC0yRyBtZW1vcnkgbGltaXQuCgpT aWduZWQtb2ZmLWJ5OiBUaG9tYXMgR2FybmllciA8dGhnYXJuaWVAZ29vZ2xlLmNvbT4KLS0tCiBh cmNoL3g4Ni9rZXJuZWwvaGVhZF82NC5TIHwgMjYgKysrKysrKysrKysrKysrKysrKystLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2FyY2gveDg2L2tlcm5lbC9oZWFkXzY0LlMgYi9hcmNoL3g4Ni9rZXJuZWwvaGVhZF82 NC5TCmluZGV4IDQyZTMyYzJlNTFiYi4uMzJkMTg5OWY0OGRmIDEwMDY0NAotLS0gYS9hcmNoL3g4 Ni9rZXJuZWwvaGVhZF82NC5TCisrKyBiL2FyY2gveDg2L2tlcm5lbC9oZWFkXzY0LlMKQEAgLTg2 LDggKzg2LDIxIEBAIHN0YXJ0dXBfNjQ6CiAJcG9wcQklcnNpCiAKIAkvKiBGb3JtIHRoZSBDUjMg dmFsdWUgYmVpbmcgc3VyZSB0byBpbmNsdWRlIHRoZSBDUjMgbW9kaWZpZXIgKi8KLQlhZGRxCSQo ZWFybHlfdG9wX3BndCAtIF9fU1RBUlRfS0VSTkVMX21hcCksICVyYXgKKwlhZGRxICAgIF9lYXJs eV90b3BfcGd0X29mZnNldCglcmlwKSwgJXJheAogCWptcCAxZgorCisJLyoKKwkgKiBQb3NpdGlv biBJbmRlcGVuZGVudCBDb2RlIHRha2VzIG9ubHkgcmVsYXRpdmUgcmVmZXJlbmNlcyBpbiBjb2Rl CisJICogbWVhbmluZyBhIGdsb2JhbCB2YXJpYWJsZSBhZGRyZXNzIGlzIHJlbGF0aXZlIHRvIFJJ UCBhbmQgbm90IGl0cworCSAqIGZ1dHVyZSB2aXJ0dWFsIGFkZHJlc3MuIEdsb2JhbCB2YXJpYWJs ZXMgY2FuIGJlIHVzZWQgaW5zdGVhZCBhcyB0aGV5CisJICogYXJlIHN0aWxsIHJlbG9jYXRlZCBv biB0aGUgZXhwZWN0ZWQga2VybmVsIG1hcHBpbmcgYWRkcmVzcy4KKwkgKi8KKwkuYWxpZ24gOAor X2Vhcmx5X3RvcF9wZ3Rfb2Zmc2V0OgorCS5xdWFkIGVhcmx5X3RvcF9wZ3QgLSBfX1NUQVJUX0tF Uk5FTF9tYXAKK19pbml0X3RvcF9vZmZzZXQ6CisJLnF1YWQgaW5pdF90b3BfcGd0IC0gX19TVEFS VF9LRVJORUxfbWFwCisKIEVOVFJZKHNlY29uZGFyeV9zdGFydHVwXzY0KQogCVVOV0lORF9ISU5U X0VNUFRZCiAJLyoKQEAgLTExNiw3ICsxMjksNyBAQCBFTlRSWShzZWNvbmRhcnlfc3RhcnR1cF82 NCkKIAlwb3BxCSVyc2kKIAogCS8qIEZvcm0gdGhlIENSMyB2YWx1ZSBiZWluZyBzdXJlIHRvIGlu Y2x1ZGUgdGhlIENSMyBtb2RpZmllciAqLwotCWFkZHEJJChpbml0X3RvcF9wZ3QgLSBfX1NUQVJU X0tFUk5FTF9tYXApLCAlcmF4CisJYWRkcSAgICBfaW5pdF90b3Bfb2Zmc2V0KCVyaXApLCAlcmF4 CiAxOgogCiAJLyogRW5hYmxlIFBBRSBtb2RlLCBQR0UgYW5kIExBNTcgKi8KQEAgLTEzMSw3ICsx NDQsNyBAQCBFTlRSWShzZWNvbmRhcnlfc3RhcnR1cF82NCkKIAltb3ZxCSVyYXgsICVjcjMKIAog CS8qIEVuc3VyZSBJIGFtIGV4ZWN1dGluZyBmcm9tIHZpcnR1YWwgYWRkcmVzc2VzICovCi0JbW92 cQkkMWYsICVyYXgKKwltb3ZhYnMgICQxZiwgJXJheAogCWptcAkqJXJheAogMToKIAlVTldJTkRf SElOVF9FTVBUWQpAQCAtMjMwLDExICsyNDMsMTIgQEAgRU5UUlkoc2Vjb25kYXJ5X3N0YXJ0dXBf NjQpCiAJICoJUkVYLlcgKyBGRiAvNSBKTVAgbTE2OjY0IEp1bXAgZmFyLCBhYnNvbHV0ZSBpbmRp cmVjdCwKIAkgKgkJYWRkcmVzcyBnaXZlbiBpbiBtMTY6NjQuCiAJICovCi0JcHVzaHEJJC5MYWZ0 ZXJfbHJldAkjIHB1dCByZXR1cm4gYWRkcmVzcyBvbiBzdGFjayBmb3IgdW53aW5kZXIKKwlsZWFx CS5MYWZ0ZXJfbHJldCglcmlwKSwgJXJheAorCXB1c2hxCSVyYXgJCSMgcHV0IHJldHVybiBhZGRy ZXNzIG9uIHN0YWNrIGZvciB1bndpbmRlcgogCXhvcnEJJXJicCwgJXJicAkjIGNsZWFyIGZyYW1l IHBvaW50ZXIKLQltb3ZxCWluaXRpYWxfY29kZSglcmlwKSwgJXJheAorCWxlYXEJaW5pdGlhbF9j b2RlKCVyaXApLCAlcmF4CiAJcHVzaHEJJF9fS0VSTkVMX0NTCSMgc2V0IGNvcnJlY3QgY3MKLQlw dXNocQklcmF4CQkjIHRhcmdldCBhZGRyZXNzIGluIG5lZ2F0aXZlIHNwYWNlCisJcHVzaHEJKCVy YXgpCQkjIHRhcmdldCBhZGRyZXNzIGluIG5lZ2F0aXZlIHNwYWNlCiAJbHJldHEKIC5MYWZ0ZXJf bHJldDoKIEVORChzZWNvbmRhcnlfc3RhcnR1cF82NCkKLS0gCjIuMTUuMC5yYzAuMjcxLmczNmI2 NjllZGNjLWdvb2cKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBz Oi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK