From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kees Cook Subject: Re: [PATCH v16 05/16] arm64: untag user pointers passed to memory syscalls Date: Fri, 7 Jun 2019 20:51:48 -0700 Message-ID: <201906072051.7B66635BE@keescook> References: <045a94326401693e015bf80c444a4d946a5c68ed.1559580831.git.andreyknvl@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <045a94326401693e015bf80c444a4d946a5c68ed.1559580831.git.andreyknvl@google.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Andrey Konovalov Cc: Mark Rutland , kvm@vger.kernel.org, Szabolcs Nagy , Catalin Marinas , Will Deacon , dri-devel@lists.freedesktop.org, linux-mm@kvack.org, Khalid Aziz , linux-kselftest@vger.kernel.org, Felix Kuehling , Vincenzo Frascino , Jacob Bramley , Leon Romanovsky , linux-rdma@vger.kernel.org, amd-gfx@lists.freedesktop.org, Christoph Hellwig , Jason Gunthorpe , Dmitry Vyukov , Dave Martin , Evgeniy Stepanov , linux-media@vger.kernel.org, Kevin Brodsky , Ruben Ayrapetyan , Ramana Radhakrishnan , Alex List-Id: linux-rdma@vger.kernel.org T24gTW9uLCBKdW4gMDMsIDIwMTkgYXQgMDY6NTU6MDdQTSArMDIwMCwgQW5kcmV5IEtvbm92YWxv diB3cm90ZToKPiBUaGlzIHBhdGNoIGlzIGEgcGFydCBvZiBhIHNlcmllcyB0aGF0IGV4dGVuZHMg YXJtNjQga2VybmVsIEFCSSB0byBhbGxvdyB0bwo+IHBhc3MgdGFnZ2VkIHVzZXIgcG9pbnRlcnMg KHdpdGggdGhlIHRvcCBieXRlIHNldCB0byBzb21ldGhpbmcgZWxzZSBvdGhlcgo+IHRoYW4gMHgw MCkgYXMgc3lzY2FsbCBhcmd1bWVudHMuCj4gCj4gVGhpcyBwYXRjaCBhbGxvd3MgdGFnZ2VkIHBv aW50ZXJzIHRvIGJlIHBhc3NlZCB0byB0aGUgZm9sbG93aW5nIG1lbW9yeQo+IHN5c2NhbGxzOiBn ZXRfbWVtcG9saWN5LCBtYWR2aXNlLCBtYmluZCwgbWluY29yZSwgbWxvY2ssIG1sb2NrMiwgbXBy b3RlY3QsCj4gbXJlbWFwLCBtc3luYywgbXVubG9jay4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBBbmRy ZXkgS29ub3ZhbG92IDxhbmRyZXlrbnZsQGdvb2dsZS5jb20+CgpSZXZpZXdlZC1ieTogS2VlcyBD b29rIDxrZWVzY29va0BjaHJvbWl1bS5vcmc+CgotS2VlcwoKPiAtLS0KPiAgbW0vbWFkdmlzZS5j ICAgfCAyICsrCj4gIG1tL21lbXBvbGljeS5jIHwgMyArKysKPiAgbW0vbWluY29yZS5jICAgfCAy ICsrCj4gIG1tL21sb2NrLmMgICAgIHwgNCArKysrCj4gIG1tL21wcm90ZWN0LmMgIHwgMiArKwo+ ICBtbS9tcmVtYXAuYyAgICB8IDIgKysKPiAgbW0vbXN5bmMuYyAgICAgfCAyICsrCj4gIDcgZmls ZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9tbS9tYWR2aXNl LmMgYi9tbS9tYWR2aXNlLmMKPiBpbmRleCA2MjgwMjJlNjc0YTcuLjM5YjgyZjhhNjk4ZiAxMDA2 NDQKPiAtLS0gYS9tbS9tYWR2aXNlLmMKPiArKysgYi9tbS9tYWR2aXNlLmMKPiBAQCAtODEwLDYg KzgxMCw4IEBAIFNZU0NBTExfREVGSU5FMyhtYWR2aXNlLCB1bnNpZ25lZCBsb25nLCBzdGFydCwg c2l6ZV90LCBsZW5faW4sIGludCwgYmVoYXZpb3IpCj4gIAlzaXplX3QgbGVuOwo+ICAJc3RydWN0 IGJsa19wbHVnIHBsdWc7Cj4gIAo+ICsJc3RhcnQgPSB1bnRhZ2dlZF9hZGRyKHN0YXJ0KTsKPiAr Cj4gIAlpZiAoIW1hZHZpc2VfYmVoYXZpb3JfdmFsaWQoYmVoYXZpb3IpKQo+ICAJCXJldHVybiBl cnJvcjsKPiAgCj4gZGlmZiAtLWdpdCBhL21tL21lbXBvbGljeS5jIGIvbW0vbWVtcG9saWN5LmMK PiBpbmRleCAwMTYwMGQ4MGFlMDEuLjc4ZTBhODhiMjY4MCAxMDA2NDQKPiAtLS0gYS9tbS9tZW1w b2xpY3kuYwo+ICsrKyBiL21tL21lbXBvbGljeS5jCj4gQEAgLTEzNjAsNiArMTM2MCw3IEBAIHN0 YXRpYyBsb25nIGtlcm5lbF9tYmluZCh1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25n IGxlbiwKPiAgCWludCBlcnI7Cj4gIAl1bnNpZ25lZCBzaG9ydCBtb2RlX2ZsYWdzOwo+ICAKPiAr CXN0YXJ0ID0gdW50YWdnZWRfYWRkcihzdGFydCk7Cj4gIAltb2RlX2ZsYWdzID0gbW9kZSAmIE1Q T0xfTU9ERV9GTEFHUzsKPiAgCW1vZGUgJj0gfk1QT0xfTU9ERV9GTEFHUzsKPiAgCWlmIChtb2Rl ID49IE1QT0xfTUFYKQo+IEBAIC0xNTE3LDYgKzE1MTgsOCBAQCBzdGF0aWMgaW50IGtlcm5lbF9n ZXRfbWVtcG9saWN5KGludCBfX3VzZXIgKnBvbGljeSwKPiAgCWludCB1bmluaXRpYWxpemVkX3Zh cihwdmFsKTsKPiAgCW5vZGVtYXNrX3Qgbm9kZXM7Cj4gIAo+ICsJYWRkciA9IHVudGFnZ2VkX2Fk ZHIoYWRkcik7Cj4gKwo+ICAJaWYgKG5tYXNrICE9IE5VTEwgJiYgbWF4bm9kZSA8IG5yX25vZGVf aWRzKQo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAKPiBkaWZmIC0tZ2l0IGEvbW0vbWluY29yZS5j IGIvbW0vbWluY29yZS5jCj4gaW5kZXggYzNmMDU4YmQwZmFmLi42NGMzMjJlZDg0NWMgMTAwNjQ0 Cj4gLS0tIGEvbW0vbWluY29yZS5jCj4gKysrIGIvbW0vbWluY29yZS5jCj4gQEAgLTI0OSw2ICsy NDksOCBAQCBTWVNDQUxMX0RFRklORTMobWluY29yZSwgdW5zaWduZWQgbG9uZywgc3RhcnQsIHNp emVfdCwgbGVuLAo+ICAJdW5zaWduZWQgbG9uZyBwYWdlczsKPiAgCXVuc2lnbmVkIGNoYXIgKnRt cDsKPiAgCj4gKwlzdGFydCA9IHVudGFnZ2VkX2FkZHIoc3RhcnQpOwo+ICsKPiAgCS8qIENoZWNr IHRoZSBzdGFydCBhZGRyZXNzOiBuZWVkcyB0byBiZSBwYWdlLWFsaWduZWQuLiAqLwo+ICAJaWYg KHN0YXJ0ICYgflBBR0VfTUFTSykKPiAgCQlyZXR1cm4gLUVJTlZBTDsKPiBkaWZmIC0tZ2l0IGEv bW0vbWxvY2suYyBiL21tL21sb2NrLmMKPiBpbmRleCAwODBmM2IzNjQxNWIuLmU4MjYwOWVhYTQy OCAxMDA2NDQKPiAtLS0gYS9tbS9tbG9jay5jCj4gKysrIGIvbW0vbWxvY2suYwo+IEBAIC02NzQs NiArNjc0LDggQEAgc3RhdGljIF9fbXVzdF9jaGVjayBpbnQgZG9fbWxvY2sodW5zaWduZWQgbG9u ZyBzdGFydCwgc2l6ZV90IGxlbiwgdm1fZmxhZ3NfdCBmbGEKPiAgCXVuc2lnbmVkIGxvbmcgbG9j a19saW1pdDsKPiAgCWludCBlcnJvciA9IC1FTk9NRU07Cj4gIAo+ICsJc3RhcnQgPSB1bnRhZ2dl ZF9hZGRyKHN0YXJ0KTsKPiArCj4gIAlpZiAoIWNhbl9kb19tbG9jaygpKQo+ICAJCXJldHVybiAt RVBFUk07Cj4gIAo+IEBAIC03MzUsNiArNzM3LDggQEAgU1lTQ0FMTF9ERUZJTkUyKG11bmxvY2ss IHVuc2lnbmVkIGxvbmcsIHN0YXJ0LCBzaXplX3QsIGxlbikKPiAgewo+ICAJaW50IHJldDsKPiAg Cj4gKwlzdGFydCA9IHVudGFnZ2VkX2FkZHIoc3RhcnQpOwo+ICsKPiAgCWxlbiA9IFBBR0VfQUxJ R04obGVuICsgKG9mZnNldF9pbl9wYWdlKHN0YXJ0KSkpOwo+ICAJc3RhcnQgJj0gUEFHRV9NQVNL Owo+ICAKPiBkaWZmIC0tZ2l0IGEvbW0vbXByb3RlY3QuYyBiL21tL21wcm90ZWN0LmMKPiBpbmRl eCBiZjM4ZGZiYmI0YjQuLjE5Zjk4MWI3MzNiYyAxMDA2NDQKPiAtLS0gYS9tbS9tcHJvdGVjdC5j Cj4gKysrIGIvbW0vbXByb3RlY3QuYwo+IEBAIC00NjUsNiArNDY1LDggQEAgc3RhdGljIGludCBk b19tcHJvdGVjdF9wa2V5KHVuc2lnbmVkIGxvbmcgc3RhcnQsIHNpemVfdCBsZW4sCj4gIAljb25z dCBib29sIHJpZXIgPSAoY3VycmVudC0+cGVyc29uYWxpdHkgJiBSRUFEX0lNUExJRVNfRVhFQykg JiYKPiAgCQkJCShwcm90ICYgUFJPVF9SRUFEKTsKPiAgCj4gKwlzdGFydCA9IHVudGFnZ2VkX2Fk ZHIoc3RhcnQpOwo+ICsKPiAgCXByb3QgJj0gfihQUk9UX0dST1dTRE9XTnxQUk9UX0dST1dTVVAp Owo+ICAJaWYgKGdyb3dzID09IChQUk9UX0dST1dTRE9XTnxQUk9UX0dST1dTVVApKSAvKiBjYW4n dCBiZSBib3RoICovCj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gZGlmZiAtLWdpdCBhL21tL21yZW1h cC5jIGIvbW0vbXJlbWFwLmMKPiBpbmRleCBmYzI0MWQyM2NkOTcuLjFkOTgyODFmNzIwNCAxMDA2 NDQKPiAtLS0gYS9tbS9tcmVtYXAuYwo+ICsrKyBiL21tL21yZW1hcC5jCj4gQEAgLTYwNiw2ICs2 MDYsOCBAQCBTWVNDQUxMX0RFRklORTUobXJlbWFwLCB1bnNpZ25lZCBsb25nLCBhZGRyLCB1bnNp Z25lZCBsb25nLCBvbGRfbGVuLAo+ICAJTElTVF9IRUFEKHVmX3VubWFwX2Vhcmx5KTsKPiAgCUxJ U1RfSEVBRCh1Zl91bm1hcCk7Cj4gIAo+ICsJYWRkciA9IHVudGFnZ2VkX2FkZHIoYWRkcik7Cj4g Kwo+ICAJaWYgKGZsYWdzICYgfihNUkVNQVBfRklYRUQgfCBNUkVNQVBfTUFZTU9WRSkpCj4gIAkJ cmV0dXJuIHJldDsKPiAgCj4gZGlmZiAtLWdpdCBhL21tL21zeW5jLmMgYi9tbS9tc3luYy5jCj4g aW5kZXggZWYzMGE0Mjk2MjNhLi5jM2JkM2U3NWY2ODcgMTAwNjQ0Cj4gLS0tIGEvbW0vbXN5bmMu Ywo+ICsrKyBiL21tL21zeW5jLmMKPiBAQCAtMzcsNiArMzcsOCBAQCBTWVNDQUxMX0RFRklORTMo bXN5bmMsIHVuc2lnbmVkIGxvbmcsIHN0YXJ0LCBzaXplX3QsIGxlbiwgaW50LCBmbGFncykKPiAg CWludCB1bm1hcHBlZF9lcnJvciA9IDA7Cj4gIAlpbnQgZXJyb3IgPSAtRUlOVkFMOwo+ICAKPiAr CXN0YXJ0ID0gdW50YWdnZWRfYWRkcihzdGFydCk7Cj4gKwo+ICAJaWYgKGZsYWdzICYgfihNU19B U1lOQyB8IE1TX0lOVkFMSURBVEUgfCBNU19TWU5DKSkKPiAgCQlnb3RvIG91dDsKPiAgCWlmIChv ZmZzZXRfaW5fcGFnZShzdGFydCkpCj4gLS0gCj4gMi4yMi4wLnJjMS4zMTEuZzVkNzU3M2ExNTEt Z29vZwo+IAoKLS0gCktlZXMgQ29vawpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWw=