From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Micha=C5=82=20Winiarski?= Subject: [PATCH v4] drm/i915: Avoid writing relocs with addresses in non-canonical form Date: Fri, 18 Dec 2015 21:01:03 +0100 Message-ID: <1450468863-9268-1-git-send-email-michal.winiarski@intel.com> References: <1449843217-29875-1-git-send-email-michal.winiarski@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 9E9756EA16 for ; Fri, 18 Dec 2015 12:01:36 -0800 (PST) In-Reply-To: <1449843217-29875-1-git-send-email-michal.winiarski@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org QWNjb3JkaW5nIHRvIGJzcGVjLCBzb21lIHBhcnRzIG9mIEhXIHJlcXVpcmUgdGhlIGFkZHJlc3Nl cyB0byBiZSBpbgphIGNhbm9uaWNhbCBmb3JtLCB3aGVyZSBiaXRzIFs2Mzo0OF0gPT0gWzQ3XS4g TGV0J3MgY29udmVydCBhZGRyZXNzZXMgdG8KY2Fub25pY2FsIGZvcm0gcHJpb3IgdG8gcmVsb2Nh dGluZyBhbmQgcmV0dXJuIGNvbnZlcnRlZCBvZmZzZXRzIHRvCnVzZXJzcGFjZS4gV2UgYWxzbyBu ZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IHVzZXJzcGFjZSBpcyB1c2luZyBhZGRyZXNzZXMKaW4gY2Fu b25pY2FsIGZvcm0gaW4gY2FzZSBvZiBzb2Z0cGluLgoKdjI6IFdoaXRlc3BhY2UgZml4dXAsIGdl bjhfY2Fub25pY2FsX2FkZHIgZGVzY3JpcHRpb24gKENocmlzLCBWaWxsZSkKdjM6IFJlYmFzZSBv biB0b3Agb2Ygc29mdHBpbiwgZml4IGEgaG9sZSBpbiByZWxvY2F0ZV9lbnRyeSwKICAgIHMvZXhw ZWN0L3JlcXVpcmUgKENocmlzKQp2NDogSGFuZGxlIHNvZnRwaW4gaW4gdmFsaWRhdGVfZXhlY19s aXN0IChDaHJpcykKCkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4K Q2M6IE1pY2hlbCBUaGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+CkNjOiBWaWxsZSBT eXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBN aWNoYcWCIFdpbmlhcnNraSA8bWljaGFsLndpbmlhcnNraUBpbnRlbC5jb20+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIHwgNDUgKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgNiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVj YnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKaW5k ZXggNWQwMWVhNi4uODdkOTg4NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fZXhlY2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4 ZWNidWZmZXIuYwpAQCAtMjQ5LDYgKzI0OSwyNSBAQCBzdGF0aWMgaW5saW5lIGludCB1c2VfY3B1 X3JlbG9jKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJCW9iai0+Y2FjaGVfbGV2 ZWwgIT0gSTkxNV9DQUNIRV9OT05FKTsKIH0KIAorLyogVXNlZCB0byBjb252ZXJ0IGFueSBhZGRy ZXNzIHRvIGNhbm9uaWNhbCBmb3JtLgorICogU3RhcnRpbmcgZnJvbSBnZW44LCBzb21lIGNvbW1h bmRzIChlLmcuIFNUQVRFX0JBU0VfQUREUkVTUywKKyAqIE1JX0xPQURfUkVHSVNURVJfTUVNIGFu ZCBvdGhlcnMsIHNlZSBCcm9hZHdlbGwgUFJNIFZvbDJhKSByZXF1aXJlIHRoZQorICogYWRkcmVz c2VzIHRvIGJlIGluIGEgY2Fub25pY2FsIGZvcm06CisgKiAiR3JhcGhpY3NBZGRyZXNzWzYzOjQ4 XSBhcmUgaWdub3JlZCBieSB0aGUgSFcgYW5kIGFzc3VtZWQgdG8gYmUgaW4gY29ycmVjdAorICog Y2Fub25pY2FsIGZvcm0gWzYzOjQ4XSA9PSBbNDddLiIKKyAqLworc3RhdGljIGlubGluZSB1aW50 NjRfdCBnZW44X2Nhbm9uaWNhbF9hZGRyKHVpbnQ2NF90IGFkZHJlc3MpCit7CisJcmV0dXJuICgo aW50NjRfdClhZGRyZXNzIDw8IDE2KSA+PiAxNjsKK30KKworc3RhdGljIGlubGluZSB1aW50NjRf dAorcmVsb2NhdGlvbl90YXJnZXQoc3RydWN0IGRybV9pOTE1X2dlbV9yZWxvY2F0aW9uX2VudHJ5 ICpyZWxvYywKKwkJICB1aW50NjRfdCB0YXJnZXRfb2Zmc2V0KQoreworCXJldHVybiBnZW44X2Nh bm9uaWNhbF9hZGRyKChpbnQpcmVsb2MtPmRlbHRhICsgdGFyZ2V0X29mZnNldCk7Cit9CisKIHN0 YXRpYyBpbnQKIHJlbG9jYXRlX2VudHJ5X2NwdShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAq b2JqLAogCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlbG9jYXRpb25fZW50cnkgKnJlbG9jLApA QCAtMjU2LDcgKzI3NSw3IEBAIHJlbG9jYXRlX2VudHJ5X2NwdShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBvYmotPmJhc2UuZGV2 OwogCXVpbnQzMl90IHBhZ2Vfb2Zmc2V0ID0gb2Zmc2V0X2luX3BhZ2UocmVsb2MtPm9mZnNldCk7 Ci0JdWludDY0X3QgZGVsdGEgPSByZWxvYy0+ZGVsdGEgKyB0YXJnZXRfb2Zmc2V0OworCXVpbnQ2 NF90IGRlbHRhID0gcmVsb2NhdGlvbl90YXJnZXQocmVsb2MsIHRhcmdldF9vZmZzZXQpOwogCWNo YXIgKnZhZGRyOwogCWludCByZXQ7CiAKQEAgLTI5Miw3ICszMTEsNyBAQCByZWxvY2F0ZV9lbnRy eV9ndHQoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIHsKIAlzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2ID0gb2JqLT5iYXNlLmRldjsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwotCXVpbnQ2NF90IGRlbHRhID0gcmVsb2MtPmRlbHRh ICsgdGFyZ2V0X29mZnNldDsKKwl1aW50NjRfdCBkZWx0YSA9IHJlbG9jYXRpb25fdGFyZ2V0KHJl bG9jLCB0YXJnZXRfb2Zmc2V0KTsKIAl1aW50NjRfdCBvZmZzZXQ7CiAJdm9pZCBfX2lvbWVtICpy ZWxvY19wYWdlOwogCWludCByZXQ7CkBAIC0zNDcsNyArMzY2LDcgQEAgcmVsb2NhdGVfZW50cnlf Y2xmbHVzaChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogewogCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXYgPSBvYmotPmJhc2UuZGV2OwogCXVpbnQzMl90IHBhZ2Vfb2Zmc2V0ID0gb2Zm c2V0X2luX3BhZ2UocmVsb2MtPm9mZnNldCk7Ci0JdWludDY0X3QgZGVsdGEgPSAoaW50KXJlbG9j LT5kZWx0YSArIHRhcmdldF9vZmZzZXQ7CisJdWludDY0X3QgZGVsdGEgPSByZWxvY2F0aW9uX3Rh cmdldChyZWxvYywgdGFyZ2V0X29mZnNldCk7CiAJY2hhciAqdmFkZHI7CiAJaW50IHJldDsKIApA QCAtMzk1LDcgKzQxNCw3IEBAIGk5MTVfZ2VtX2V4ZWNidWZmZXJfcmVsb2NhdGVfZW50cnkoc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAl0YXJnZXRfaTkxNV9vYmogPSB0YXJnZXRf dm1hLT5vYmo7CiAJdGFyZ2V0X29iaiA9ICZ0YXJnZXRfdm1hLT5vYmotPmJhc2U7CiAKLQl0YXJn ZXRfb2Zmc2V0ID0gdGFyZ2V0X3ZtYS0+bm9kZS5zdGFydDsKKwl0YXJnZXRfb2Zmc2V0ID0gZ2Vu OF9jYW5vbmljYWxfYWRkcih0YXJnZXRfdm1hLT5ub2RlLnN0YXJ0KTsKIAogCS8qIFNhbmR5YnJp ZGdlIFBQR1RUIGVycmF0YTogV2UgbmVlZCBhIGdsb2JhbCBndHQgbWFwcGluZyBmb3IgTUkgYW5k CiAJICogcGlwZV9jb250cm9sIHdyaXRlcyBiZWNhdXNlIHRoZSBncHUgZG9lc24ndCBwcm9wZXJs eSByZWRpcmVjdCB0aGVtCkBAIC01ODMsNiArNjAyLDcgQEAgaTkxNV9nZW1fZXhlY2J1ZmZlcl9y ZXNlcnZlX3ZtYShzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqb2JqID0gdm1hLT5vYmo7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIg KmVudHJ5ID0gdm1hLT5leGVjX2VudHJ5OwogCXVpbnQ2NF90IGZsYWdzOworCXVpbnQ2NF90IG9m ZnNldDsKIAlpbnQgcmV0OwogCiAJZmxhZ3MgPSBQSU5fVVNFUjsKQEAgLTYyNSw4ICs2NDUsOSBA QCBpOTE1X2dlbV9leGVjYnVmZmVyX3Jlc2VydmVfdm1hKHN0cnVjdCBpOTE1X3ZtYSAqdm1hLAog CQkJZW50cnktPmZsYWdzIHw9IF9fRVhFQ19PQkpFQ1RfSEFTX0ZFTkNFOwogCX0KIAotCWlmIChl bnRyeS0+b2Zmc2V0ICE9IHZtYS0+bm9kZS5zdGFydCkgewotCQllbnRyeS0+b2Zmc2V0ID0gdm1h LT5ub2RlLnN0YXJ0OworCW9mZnNldCA9IGdlbjhfY2Fub25pY2FsX2FkZHIodm1hLT5ub2RlLnN0 YXJ0KTsKKwlpZiAoZW50cnktPm9mZnNldCAhPSBvZmZzZXQpIHsKKwkJZW50cnktPm9mZnNldCA9 IG9mZnNldDsKIAkJKm5lZWRfcmVsb2MgPSB0cnVlOwogCX0KIApAQCAtOTk0LDYgKzEwMTUsMTgg QEAgdmFsaWRhdGVfZXhlY19saXN0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCWlmIChleGVj W2ldLmZsYWdzICYgaW52YWxpZF9mbGFncykKIAkJCXJldHVybiAtRUlOVkFMOwogCisJCS8qIE9m ZnNldCBjYW4gYmUgdXNlZCBhcyBpbnB1dCAoRVhFQ19PQkpFQ1RfUElOTkVEKSwgc2luY2UKKwkJ ICogdXNlcnNwYWNlIGhhcyB0byB1c2UgY2Fub25pY2FsIGZvcm1hdCwgd2UgbmVlZCB0byByZWpl Y3QgYWxsCisJCSAqIG5vbi1jYW5vbmljYWwgYWRkcmVzc2VzLgorCQkgKi8KKwkJaWYgKGV4ZWNb aV0ub2Zmc2V0ICE9IGdlbjhfY2Fub25pY2FsX2FkZHIoZXhlY1tpXS5vZmZzZXQpKQorCQkJcmV0 dXJuIC1FSU5WQUw7CisKKwkJLyogT24gdGhlIG90aGVyIGhhbmQsIGZyb20gZHJtX21tIHBlcnNw ZWN0aXZlIGFkZHJlc3Mgc3BhY2UgaXMKKwkJICogY29udGludW91cywgc28gd2UncmUgY29udmVy dGluZyB0byBub24tY2Fub25pY2FsIGZvcm0KKwkJICovCisJCWV4ZWNbaV0ub2Zmc2V0ICY9ICgx VUxMIDw8IDQ4KSAtIDE7CisKIAkJaWYgKGV4ZWNbaV0uYWxpZ25tZW50ICYmICFpc19wb3dlcl9v Zl8yKGV4ZWNbaV0uYWxpZ25tZW50KSkKIAkJCXJldHVybiAtRUlOVkFMOwogCi0tIAoyLjUuMAoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4 IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK