From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 18/28] drm/i915: Make ggtt invalidation work on ggtt Date: Thu, 13 Jun 2019 14:35:29 +0100 Message-ID: <20190613133539.12620-19-tvrtko.ursulin@linux.intel.com> References: <20190613133539.12620-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 mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 607A089A9F for ; Thu, 13 Jun 2019 13:41:09 +0000 (UTC) In-Reply-To: <20190613133539.12620-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+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCA1MSAr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmggfCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAyNyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9n dHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IDIyMzJiZDU2 ZTkxMi4uOTVhZjQ1MTU2Y2MyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAt MTExLDkgKzExMSw5IEBACiBzdGF0aWMgaW50CiBpOTE1X2dldF9nZ3R0X3ZtYV9wYWdlcyhzdHJ1 Y3QgaTkxNV92bWEgKnZtYSk7CiAKLXN0YXRpYyB2b2lkIGdlbjZfZ2d0dF9pbnZhbGlkYXRlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQorc3RhdGljIHZvaWQgZ2VuNl9nZ3R0X2ludmFs aWRhdGUoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKIHsKLQlzdHJ1Y3QgaW50ZWxfdW5jb3JlICp1 bmNvcmUgPSAmaTkxNS0+dW5jb3JlOworCXN0cnVjdCBpbnRlbF91bmNvcmUgKnVuY29yZSA9ICZn Z3R0LT52bS5pOTE1LT51bmNvcmU7CiAKIAkvKgogCSAqIE5vdGUgdGhhdCBhcyBhbiB1bmNhY2hl ZCBtbWlvIHdyaXRlLCB0aGlzIHdpbGwgZmx1c2ggdGhlCkBAIC0xMjIsMjQgKzEyMiwxOSBAQCBz dGF0aWMgdm9pZCBnZW42X2dndHRfaW52YWxpZGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq aTkxNSkKIAlpbnRlbF91bmNvcmVfd3JpdGVfZncodW5jb3JlLCBHRlhfRkxTSF9DTlRMX0dFTjYs IEdGWF9GTFNIX0NOVExfRU4pOwogfQogCi1zdGF0aWMgdm9pZCBndWNfZ2d0dF9pbnZhbGlkYXRl KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQorc3RhdGljIHZvaWQgZ3VjX2dndHRfaW52 YWxpZGF0ZShzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0KQogewotCXN0cnVjdCBpbnRlbF91bmNvcmUg KnVuY29yZSA9ICZpOTE1LT51bmNvcmU7CisJc3RydWN0IGludGVsX3VuY29yZSAqdW5jb3JlID0g JmdndHQtPnZtLmk5MTUtPnVuY29yZTsKIAotCWdlbjZfZ2d0dF9pbnZhbGlkYXRlKGk5MTUpOwor CWdlbjZfZ2d0dF9pbnZhbGlkYXRlKGdndHQpOwogCWludGVsX3VuY29yZV93cml0ZV9mdyh1bmNv cmUsIEdFTjhfR1RDUiwgR0VOOF9HVENSX0lOVkFMSURBVEUpOwogfQogCi1zdGF0aWMgdm9pZCBn bWNoX2dndHRfaW52YWxpZGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKK3N0YXRp YyB2b2lkIGdtY2hfZ2d0dF9pbnZhbGlkYXRlKHN0cnVjdCBpOTE1X2dndHQgKmdndHQpCiB7CiAJ aW50ZWxfZ3R0X2NoaXBzZXRfZmx1c2goKTsKIH0KIAotc3RhdGljIGlubGluZSB2b2lkIGk5MTVf Z2d0dF9pbnZhbGlkYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQotewotCWk5MTUt PmdndHQuaW52YWxpZGF0ZShpOTE1KTsKLX0KLQogc3RhdGljIGludCBwcGd0dF9iaW5kX3ZtYShz dHJ1Y3QgaTkxNV92bWEgKnZtYSwKIAkJCSAgZW51bSBpOTE1X2NhY2hlX2xldmVsIGNhY2hlX2xl dmVsLAogCQkJICB1MzIgdW51c2VkKQpAQCAtMTg3Niw3ICsxODcxLDcgQEAgc3RhdGljIGludCBn ZW42X2FsbG9jX3ZhX3JhbmdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCiAJaWYg KGZsdXNoKSB7CiAJCW1hcmtfdGxic19kaXJ0eSgmcHBndHQtPmJhc2UpOwotCQlnZW42X2dndHRf aW52YWxpZGF0ZSh2bS0+aTkxNSk7CisJCWdlbjZfZ2d0dF9pbnZhbGlkYXRlKCZ2bS0+aTkxNS0+ Z2d0dCk7CiAJfQogCiAJaW50ZWxfcnVudGltZV9wbV9wdXQodm0tPmk5MTUsIHdha2VyZWYpOwpA QCAtMjAyNSw3ICsyMDIwLDcgQEAgc3RhdGljIGludCBwZF92bWFfYmluZChzdHJ1Y3QgaTkxNV92 bWEgKnZtYSwKIAkJZ2VuNl93cml0ZV9wZGUocHBndHQsIHBkZSwgcHQpOwogCiAJbWFya190bGJz X2RpcnR5KCZwcGd0dC0+YmFzZSk7Ci0JZ2VuNl9nZ3R0X2ludmFsaWRhdGUocHBndHQtPmJhc2Uu dm0uaTkxNSk7CisJZ2VuNl9nZ3R0X2ludmFsaWRhdGUoZ2d0dCk7CiAKIAlyZXR1cm4gMDsKIH0K QEAgLTIzNDAsNyArMjMzNSw3IEBAIHZvaWQgaTkxNV9nZW1fc3VzcGVuZF9ndHRfbWFwcGluZ3Mo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiAJZ2d0dC0+dm0uY2xlYXJfcmFu Z2UoJmdndHQtPnZtLCAwLCBnZ3R0LT52bS50b3RhbCk7CiAKLQlpOTE1X2dndHRfaW52YWxpZGF0 ZShkZXZfcHJpdik7CisJZ2d0dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0KIAogaW50IGk5MTVfZ2Vt X2d0dF9wcmVwYXJlX3BhZ2VzKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCkBAIC0y Mzg2LDcgKzIzODEsNyBAQCBzdGF0aWMgdm9pZCBnZW44X2dndHRfaW5zZXJ0X3BhZ2Uoc3RydWN0 IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAKIAlnZW44X3NldF9wdGUocHRlLCBnZW44X3B0ZV9l bmNvZGUoYWRkciwgbGV2ZWwsIDApKTsKIAotCWdndHQtPmludmFsaWRhdGUodm0tPmk5MTUpOwor CWdndHQtPmludmFsaWRhdGUoZ2d0dCk7CiB9CiAKIHN0YXRpYyB2b2lkIGdlbjhfZ2d0dF9pbnNl cnRfZW50cmllcyhzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKQEAgLTI0MTQsNyArMjQw OSw3IEBAIHN0YXRpYyB2b2lkIGdlbjhfZ2d0dF9pbnNlcnRfZW50cmllcyhzdHJ1Y3QgaTkxNV9h ZGRyZXNzX3NwYWNlICp2bSwKIAkgKiBXZSB3YW50IHRvIGZsdXNoIHRoZSBUTEJzIG9ubHkgYWZ0 ZXIgd2UncmUgY2VydGFpbiBhbGwgdGhlIFBURQogCSAqIHVwZGF0ZXMgaGF2ZSBmaW5pc2hlZC4K IAkgKi8KLQlnZ3R0LT5pbnZhbGlkYXRlKHZtLT5pOTE1KTsKKwlnZ3R0LT5pbnZhbGlkYXRlKGdn dHQpOwogfQogCiBzdGF0aWMgdm9pZCBnZW42X2dndHRfaW5zZXJ0X3BhZ2Uoc3RydWN0IGk5MTVf YWRkcmVzc19zcGFjZSAqdm0sCkBAIC0yNDI5LDcgKzI0MjQsNyBAQCBzdGF0aWMgdm9pZCBnZW42 X2dndHRfaW5zZXJ0X3BhZ2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAKIAlpb3dy aXRlMzIodm0tPnB0ZV9lbmNvZGUoYWRkciwgbGV2ZWwsIGZsYWdzKSwgcHRlKTsKIAotCWdndHQt PmludmFsaWRhdGUodm0tPmk5MTUpOworCWdndHQtPmludmFsaWRhdGUoZ2d0dCk7CiB9CiAKIC8q CkBAIC0yNDU1LDcgKzI0NTAsNyBAQCBzdGF0aWMgdm9pZCBnZW42X2dndHRfaW5zZXJ0X2VudHJp ZXMoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAJICogV2Ugd2FudCB0byBmbHVzaCB0 aGUgVExCcyBvbmx5IGFmdGVyIHdlJ3JlIGNlcnRhaW4gYWxsIHRoZSBQVEUKIAkgKiB1cGRhdGVz IGhhdmUgZmluaXNoZWQuCiAJICovCi0JZ2d0dC0+aW52YWxpZGF0ZSh2bS0+aTkxNSk7CisJZ2d0 dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0KIAogc3RhdGljIHZvaWQgbm9wX2NsZWFyX3JhbmdlKHN0 cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLApAQCAtMzY1MCwyNSArMzY0NSwyOSBAQCBpbnQg aTkxNV9nZ3R0X2VuYWJsZV9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAK IHZvaWQgaTkxNV9nZ3R0X2VuYWJsZV9ndWMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp CiB7Ci0JR0VNX0JVR19PTihpOTE1LT5nZ3R0LmludmFsaWRhdGUgIT0gZ2VuNl9nZ3R0X2ludmFs aWRhdGUpOworCXN0cnVjdCBpOTE1X2dndHQgKmdndHQgPSAmaTkxNS0+Z2d0dDsKIAotCWk5MTUt PmdndHQuaW52YWxpZGF0ZSA9IGd1Y19nZ3R0X2ludmFsaWRhdGU7CisJR0VNX0JVR19PTihnZ3R0 LT5pbnZhbGlkYXRlICE9IGdlbjZfZ2d0dF9pbnZhbGlkYXRlKTsKIAotCWk5MTVfZ2d0dF9pbnZh bGlkYXRlKGk5MTUpOworCWdndHQtPmludmFsaWRhdGUgPSBndWNfZ2d0dF9pbnZhbGlkYXRlOwor CisJZ2d0dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0KIAogdm9pZCBpOTE1X2dndHRfZGlzYWJsZV9n dWMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiB7CisJc3RydWN0IGk5MTVfZ2d0dCAq Z2d0dCA9ICZpOTE1LT5nZ3R0OworCiAJLyogWFhYIFRlbXBvcmFyeSBwYXJkb24gZm9yIGVycm9y IHVubG9hZCAqLwotCWlmIChpOTE1LT5nZ3R0LmludmFsaWRhdGUgPT0gZ2VuNl9nZ3R0X2ludmFs aWRhdGUpCisJaWYgKGdndHQtPmludmFsaWRhdGUgPT0gZ2VuNl9nZ3R0X2ludmFsaWRhdGUpCiAJ CXJldHVybjsKIAogCS8qIFdlIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBhZnRlciBpOTE1X2dndHRf ZW5hYmxlX2d1YygpICovCi0JR0VNX0JVR19PTihpOTE1LT5nZ3R0LmludmFsaWRhdGUgIT0gZ3Vj X2dndHRfaW52YWxpZGF0ZSk7CisJR0VNX0JVR19PTihnZ3R0LT5pbnZhbGlkYXRlICE9IGd1Y19n Z3R0X2ludmFsaWRhdGUpOwogCi0JaTkxNS0+Z2d0dC5pbnZhbGlkYXRlID0gZ2VuNl9nZ3R0X2lu dmFsaWRhdGU7CisJZ2d0dC0+aW52YWxpZGF0ZSA9IGdlbjZfZ2d0dF9pbnZhbGlkYXRlOwogCi0J aTkxNV9nZ3R0X2ludmFsaWRhdGUoaTkxNSk7CisJZ2d0dC0+aW52YWxpZGF0ZShnZ3R0KTsKIH0K IAogdm9pZCBpOTE1X2dlbV9yZXN0b3JlX2d0dF9tYXBwaW5ncyhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpCkBAIC0zNzEwLDcgKzM3MDksNyBAQCB2b2lkIGk5MTVfZ2VtX3Jlc3Rv cmVfZ3R0X21hcHBpbmdzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAl9CiAK IAlnZ3R0LT52bS5jbG9zZWQgPSBmYWxzZTsKLQlpOTE1X2dndHRfaW52YWxpZGF0ZShkZXZfcHJp dik7CisJZ2d0dC0+aW52YWxpZGF0ZShnZ3R0KTsKIAogCW11dGV4X3VubG9jaygmZ2d0dC0+dm0u bXV0ZXgpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCmluZGV4IGY4YzA2Mjg4YmU2 NS4uYjU0MTE5MGRiNmU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaApAQCAtNDAx LDcgKzQwMSw3IEBAIHN0cnVjdCBpOTE1X2dndHQgewogCiAJLyoqICJHcmFwaGljcyBTdG9sZW4g TWVtb3J5IiBob2xkcyB0aGUgZ2xvYmFsIFBURXMgKi8KIAl2b2lkIF9faW9tZW0gKmdzbTsKLQl2 b2lkICgqaW52YWxpZGF0ZSkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKKwl2 b2lkICgqaW52YWxpZGF0ZSkoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCk7CiAKIAlib29sIGRvX2lk bGVfbWFwczsKIAotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZng=