From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 18/31] drm/i915: Make ggtt invalidation work on ggtt Date: Fri, 14 Jun 2019 16:17:18 +0100 Message-ID: <20190614151731.17608-19-tvrtko.ursulin@linux.intel.com> References: <20190614151731.17608-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 65CFD89A75 for ; Fri, 14 Jun 2019 15:18:06 +0000 (UTC) In-Reply-To: <20190614151731.17608-1-tvrtko.ursulin@linux.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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkl0IGlzIG1v cmUgbG9naWNhbCBmb3IgZ2d0dCBpbnZhbGlkYXRpb24gdG8gdGFrZSBnZ3R0IGFzIGlucHV0IHBh cmFtZXRlci4KClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBp bnRlbC5jb20+ClJldmlld2VkLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5j by51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyB8IDUxICsrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9n dHQuaCB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDI3IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggMjIzMmJkNTZlOTEy Li45NWFmNDUxNTZjYzIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0xMTEs OSArMTExLDkgQEAKIHN0YXRpYyBpbnQKIGk5MTVfZ2V0X2dndHRfdm1hX3BhZ2VzKHN0cnVjdCBp OTE1X3ZtYSAqdm1hKTsKIAotc3RhdGljIHZvaWQgZ2VuNl9nZ3R0X2ludmFsaWRhdGUoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCitzdGF0aWMgdm9pZCBnZW42X2dndHRfaW52YWxpZGF0 ZShzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KQogewotCXN0cnVjdCBpbnRlbF91bmNvcmUgKnVuY29y ZSA9ICZpOTE1LT51bmNvcmU7CisJc3RydWN0IGludGVsX3VuY29yZSAqdW5jb3JlID0gJmdndHQt PnZtLmk5MTUtPnVuY29yZTsKIAogCS8qCiAJICogTm90ZSB0aGF0IGFzIGFuIHVuY2FjaGVkIG1t aW8gd3JpdGUsIHRoaXMgd2lsbCBmbHVzaCB0aGUKQEAgLTEyMiwyNCArMTIyLDE5IEBAIHN0YXRp YyB2b2lkIGdlbjZfZ2d0dF9pbnZhbGlkYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 KQogCWludGVsX3VuY29yZV93cml0ZV9mdyh1bmNvcmUsIEdGWF9GTFNIX0NOVExfR0VONiwgR0ZY X0ZMU0hfQ05UTF9FTik7CiB9CiAKLXN0YXRpYyB2b2lkIGd1Y19nZ3R0X2ludmFsaWRhdGUoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCitzdGF0aWMgdm9pZCBndWNfZ2d0dF9pbnZhbGlk YXRlKHN0cnVjdCBpOTE1X2dndHQgKmdndHQpCiB7Ci0Jc3RydWN0IGludGVsX3VuY29yZSAqdW5j b3JlID0gJmk5MTUtPnVuY29yZTsKKwlzdHJ1Y3QgaW50ZWxfdW5jb3JlICp1bmNvcmUgPSAmZ2d0 dC0+dm0uaTkxNS0+dW5jb3JlOwogCi0JZ2VuNl9nZ3R0X2ludmFsaWRhdGUoaTkxNSk7CisJZ2Vu Nl9nZ3R0X2ludmFsaWRhdGUoZ2d0dCk7CiAJaW50ZWxfdW5jb3JlX3dyaXRlX2Z3KHVuY29yZSwg R0VOOF9HVENSLCBHRU44X0dUQ1JfSU5WQUxJREFURSk7CiB9CiAKLXN0YXRpYyB2b2lkIGdtY2hf Z2d0dF9pbnZhbGlkYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQorc3RhdGljIHZv aWQgZ21jaF9nZ3R0X2ludmFsaWRhdGUoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIHsKIAlpbnRl bF9ndHRfY2hpcHNldF9mbHVzaCgpOwogfQogCi1zdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZ3R0 X2ludmFsaWRhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCi17Ci0JaTkxNS0+Z2d0 dC5pbnZhbGlkYXRlKGk5MTUpOwotfQotCiBzdGF0aWMgaW50IHBwZ3R0X2JpbmRfdm1hKHN0cnVj dCBpOTE1X3ZtYSAqdm1hLAogCQkJICBlbnVtIGk5MTVfY2FjaGVfbGV2ZWwgY2FjaGVfbGV2ZWws CiAJCQkgIHUzMiB1bnVzZWQpCkBAIC0xODc2LDcgKzE4NzEsNyBAQCBzdGF0aWMgaW50IGdlbjZf YWxsb2NfdmFfcmFuZ2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAKIAlpZiAoZmx1 c2gpIHsKIAkJbWFya190bGJzX2RpcnR5KCZwcGd0dC0+YmFzZSk7Ci0JCWdlbjZfZ2d0dF9pbnZh bGlkYXRlKHZtLT5pOTE1KTsKKwkJZ2VuNl9nZ3R0X2ludmFsaWRhdGUoJnZtLT5pOTE1LT5nZ3R0 KTsKIAl9CiAKIAlpbnRlbF9ydW50aW1lX3BtX3B1dCh2bS0+aTkxNSwgd2FrZXJlZik7CkBAIC0y MDI1LDcgKzIwMjAsNyBAQCBzdGF0aWMgaW50IHBkX3ZtYV9iaW5kKHN0cnVjdCBpOTE1X3ZtYSAq dm1hLAogCQlnZW42X3dyaXRlX3BkZShwcGd0dCwgcGRlLCBwdCk7CiAKIAltYXJrX3RsYnNfZGly dHkoJnBwZ3R0LT5iYXNlKTsKLQlnZW42X2dndHRfaW52YWxpZGF0ZShwcGd0dC0+YmFzZS52bS5p OTE1KTsKKwlnZW42X2dndHRfaW52YWxpZGF0ZShnZ3R0KTsKIAogCXJldHVybiAwOwogfQpAQCAt MjM0MCw3ICsyMzM1LDcgQEAgdm9pZCBpOTE1X2dlbV9zdXNwZW5kX2d0dF9tYXBwaW5ncyhzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAlnZ3R0LT52bS5jbGVhcl9yYW5nZSgm Z2d0dC0+dm0sIDAsIGdndHQtPnZtLnRvdGFsKTsKIAotCWk5MTVfZ2d0dF9pbnZhbGlkYXRlKGRl dl9wcml2KTsKKwlnZ3R0LT5pbnZhbGlkYXRlKGdndHQpOwogfQogCiBpbnQgaTkxNV9nZW1fZ3R0 X3ByZXBhcmVfcGFnZXMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKQEAgLTIzODYs NyArMjM4MSw3IEBAIHN0YXRpYyB2b2lkIGdlbjhfZ2d0dF9pbnNlcnRfcGFnZShzdHJ1Y3QgaTkx NV9hZGRyZXNzX3NwYWNlICp2bSwKIAogCWdlbjhfc2V0X3B0ZShwdGUsIGdlbjhfcHRlX2VuY29k ZShhZGRyLCBsZXZlbCwgMCkpOwogCi0JZ2d0dC0+aW52YWxpZGF0ZSh2bS0+aTkxNSk7CisJZ2d0 dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0KIAogc3RhdGljIHZvaWQgZ2VuOF9nZ3R0X2luc2VydF9l bnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLApAQCAtMjQxNCw3ICsyNDA5LDcg QEAgc3RhdGljIHZvaWQgZ2VuOF9nZ3R0X2luc2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJl c3Nfc3BhY2UgKnZtLAogCSAqIFdlIHdhbnQgdG8gZmx1c2ggdGhlIFRMQnMgb25seSBhZnRlciB3 ZSdyZSBjZXJ0YWluIGFsbCB0aGUgUFRFCiAJICogdXBkYXRlcyBoYXZlIGZpbmlzaGVkLgogCSAq LwotCWdndHQtPmludmFsaWRhdGUodm0tPmk5MTUpOworCWdndHQtPmludmFsaWRhdGUoZ2d0dCk7 CiB9CiAKIHN0YXRpYyB2b2lkIGdlbjZfZ2d0dF9pbnNlcnRfcGFnZShzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSwKQEAgLTI0MjksNyArMjQyNCw3IEBAIHN0YXRpYyB2b2lkIGdlbjZfZ2d0 dF9pbnNlcnRfcGFnZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAogCWlvd3JpdGUz Mih2bS0+cHRlX2VuY29kZShhZGRyLCBsZXZlbCwgZmxhZ3MpLCBwdGUpOwogCi0JZ2d0dC0+aW52 YWxpZGF0ZSh2bS0+aTkxNSk7CisJZ2d0dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0KIAogLyoKQEAg LTI0NTUsNyArMjQ1MCw3IEBAIHN0YXRpYyB2b2lkIGdlbjZfZ2d0dF9pbnNlcnRfZW50cmllcyhz dHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAkgKiBXZSB3YW50IHRvIGZsdXNoIHRoZSBU TEJzIG9ubHkgYWZ0ZXIgd2UncmUgY2VydGFpbiBhbGwgdGhlIFBURQogCSAqIHVwZGF0ZXMgaGF2 ZSBmaW5pc2hlZC4KIAkgKi8KLQlnZ3R0LT5pbnZhbGlkYXRlKHZtLT5pOTE1KTsKKwlnZ3R0LT5p bnZhbGlkYXRlKGdndHQpOwogfQogCiBzdGF0aWMgdm9pZCBub3BfY2xlYXJfcmFuZ2Uoc3RydWN0 IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCkBAIC0zNjUwLDI1ICszNjQ1LDI5IEBAIGludCBpOTE1 X2dndHRfZW5hYmxlX2h3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAogdm9p ZCBpOTE1X2dndHRfZW5hYmxlX2d1YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsK LQlHRU1fQlVHX09OKGk5MTUtPmdndHQuaW52YWxpZGF0ZSAhPSBnZW42X2dndHRfaW52YWxpZGF0 ZSk7CisJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZpOTE1LT5nZ3R0OwogCi0JaTkxNS0+Z2d0 dC5pbnZhbGlkYXRlID0gZ3VjX2dndHRfaW52YWxpZGF0ZTsKKwlHRU1fQlVHX09OKGdndHQtPmlu dmFsaWRhdGUgIT0gZ2VuNl9nZ3R0X2ludmFsaWRhdGUpOwogCi0JaTkxNV9nZ3R0X2ludmFsaWRh dGUoaTkxNSk7CisJZ2d0dC0+aW52YWxpZGF0ZSA9IGd1Y19nZ3R0X2ludmFsaWRhdGU7CisKKwln Z3R0LT5pbnZhbGlkYXRlKGdndHQpOwogfQogCiB2b2lkIGk5MTVfZ2d0dF9kaXNhYmxlX2d1Yyhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsKKwlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0 ID0gJmk5MTUtPmdndHQ7CisKIAkvKiBYWFggVGVtcG9yYXJ5IHBhcmRvbiBmb3IgZXJyb3IgdW5s b2FkICovCi0JaWYgKGk5MTUtPmdndHQuaW52YWxpZGF0ZSA9PSBnZW42X2dndHRfaW52YWxpZGF0 ZSkKKwlpZiAoZ2d0dC0+aW52YWxpZGF0ZSA9PSBnZW42X2dndHRfaW52YWxpZGF0ZSkKIAkJcmV0 dXJuOwogCiAJLyogV2Ugc2hvdWxkIG9ubHkgYmUgY2FsbGVkIGFmdGVyIGk5MTVfZ2d0dF9lbmFi bGVfZ3VjKCkgKi8KLQlHRU1fQlVHX09OKGk5MTUtPmdndHQuaW52YWxpZGF0ZSAhPSBndWNfZ2d0 dF9pbnZhbGlkYXRlKTsKKwlHRU1fQlVHX09OKGdndHQtPmludmFsaWRhdGUgIT0gZ3VjX2dndHRf aW52YWxpZGF0ZSk7CiAKLQlpOTE1LT5nZ3R0LmludmFsaWRhdGUgPSBnZW42X2dndHRfaW52YWxp ZGF0ZTsKKwlnZ3R0LT5pbnZhbGlkYXRlID0gZ2VuNl9nZ3R0X2ludmFsaWRhdGU7CiAKLQlpOTE1 X2dndHRfaW52YWxpZGF0ZShpOTE1KTsKKwlnZ3R0LT5pbnZhbGlkYXRlKGdndHQpOwogfQogCiB2 b2lkIGk5MTVfZ2VtX3Jlc3RvcmVfZ3R0X21hcHBpbmdzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKQEAgLTM3MTAsNyArMzcwOSw3IEBAIHZvaWQgaTkxNV9nZW1fcmVzdG9yZV9n dHRfbWFwcGluZ3Moc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCX0KIAogCWdn dHQtPnZtLmNsb3NlZCA9IGZhbHNlOwotCWk5MTVfZ2d0dF9pbnZhbGlkYXRlKGRldl9wcml2KTsK KwlnZ3R0LT5pbnZhbGlkYXRlKGdndHQpOwogCiAJbXV0ZXhfdW5sb2NrKCZnZ3R0LT52bS5tdXRl eCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKaW5kZXggZjhjMDYyODhiZTY1Li5i NTQxMTkwZGI2ZTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC00MDEsNyAr NDAxLDcgQEAgc3RydWN0IGk5MTVfZ2d0dCB7CiAKIAkvKiogIkdyYXBoaWNzIFN0b2xlbiBNZW1v cnkiIGhvbGRzIHRoZSBnbG9iYWwgUFRFcyAqLwogCXZvaWQgX19pb21lbSAqZ3NtOwotCXZvaWQg KCppbnZhbGlkYXRlKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOworCXZvaWQg KCppbnZhbGlkYXRlKShzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KTsKIAogCWJvb2wgZG9faWRsZV9t YXBzOwogCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeA==