From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 24/33] drm/i915: Use VMA for render state page tracking Date: Sun, 7 Aug 2016 15:45:32 +0100 Message-ID: <1470581141-14432-25-git-send-email-chris@chris-wilson.co.uk> References: <1470581141-14432-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3251F6E2EC for ; Sun, 7 Aug 2016 14:46:16 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id x83so11039172wma.3 for ; Sun, 07 Aug 2016 07:46:16 -0700 (PDT) In-Reply-To: <1470581141-14432-1-git-send-email-chris@chris-wilson.co.uk> 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 U2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVyX3N0YXRlLmMgfCA0MCArKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9y ZW5kZXJfc3RhdGUuaCB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyks IDE5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX3JlbmRlcl9zdGF0ZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVy X3N0YXRlLmMKaW5kZXggNTdmZDc2N2EyZDc5Li45NWI3ZTlhZmQ1ZjggMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCkBAIC0zMCw4ICszMCw3IEBACiAK IHN0cnVjdCByZW5kZXJfc3RhdGUgewogCWNvbnN0IHN0cnVjdCBpbnRlbF9yZW5kZXJzdGF0ZV9y b2RhdGEgKnJvZGF0YTsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwotCXU2NCBn Z3R0X29mZnNldDsKKwlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKIAl1MzIgYXV4X2JhdGNoX3NpemU7 CiAJdTMyIGF1eF9iYXRjaF9vZmZzZXQ7CiB9OwpAQCAtNzMsNyArNzIsNyBAQCByZW5kZXJfc3Rh dGVfZ2V0X3JvZGF0YShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIAog c3RhdGljIGludCByZW5kZXJfc3RhdGVfc2V0dXAoc3RydWN0IHJlbmRlcl9zdGF0ZSAqc28pCiB7 Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IHNvLT5vYmotPmJhc2UuZGV2OworCXN0cnVjdCBk cm1fZGV2aWNlICpkZXYgPSBzby0+dm1hLT52bS0+ZGV2OwogCWNvbnN0IHN0cnVjdCBpbnRlbF9y ZW5kZXJzdGF0ZV9yb2RhdGEgKnJvZGF0YSA9IHNvLT5yb2RhdGE7CiAJY29uc3QgYm9vbCBoYXNf NjRiaXRfcmVsb2MgPSBJTlRFTF9HRU4oZGV2KSA+PSA4OwogCXVuc2lnbmVkIGludCBpID0gMCwg cmVsb2NfaW5kZXggPSAwOwpAQCAtODEsMTggKzgwLDE4IEBAIHN0YXRpYyBpbnQgcmVuZGVyX3N0 YXRlX3NldHVwKHN0cnVjdCByZW5kZXJfc3RhdGUgKnNvKQogCXUzMiAqZDsKIAlpbnQgcmV0Owog Ci0JcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3NldF90b19jcHVfZG9tYWluKHNvLT5vYmosIHRydWUp OworCXJldCA9IGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fY3B1X2RvbWFpbihzby0+dm1hLT5vYmos IHRydWUpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKLQlwYWdlID0gaTkxNV9nZW1fb2Jq ZWN0X2dldF9kaXJ0eV9wYWdlKHNvLT5vYmosIDApOworCXBhZ2UgPSBpOTE1X2dlbV9vYmplY3Rf Z2V0X2RpcnR5X3BhZ2Uoc28tPnZtYS0+b2JqLCAwKTsKIAlkID0ga21hcChwYWdlKTsKIAogCXdo aWxlIChpIDwgcm9kYXRhLT5iYXRjaF9pdGVtcykgewogCQl1MzIgcyA9IHJvZGF0YS0+YmF0Y2hb aV07CiAKIAkJaWYgKGkgKiA0ICA9PSByb2RhdGEtPnJlbG9jW3JlbG9jX2luZGV4XSkgewotCQkJ dTY0IHIgPSBzICsgc28tPmdndHRfb2Zmc2V0OworCQkJdTY0IHIgPSBzICsgc28tPnZtYS0+bm9k ZS5zdGFydDsKIAkJCXMgPSBsb3dlcl8zMl9iaXRzKHIpOwogCQkJaWYgKGhhc182NGJpdF9yZWxv YykgewogCQkJCWlmIChpICsgMSA+PSByb2RhdGEtPmJhdGNoX2l0ZW1zIHx8CkBAIC0xNTQsNyAr MTUzLDcgQEAgc3RhdGljIGludCByZW5kZXJfc3RhdGVfc2V0dXAoc3RydWN0IHJlbmRlcl9zdGF0 ZSAqc28pCiAKIAlrdW5tYXAocGFnZSk7CiAKLQlyZXQgPSBpOTE1X2dlbV9vYmplY3Rfc2V0X3Rv X2d0dF9kb21haW4oc28tPm9iaiwgZmFsc2UpOworCXJldCA9IGk5MTVfZ2VtX29iamVjdF9zZXRf dG9fZ3R0X2RvbWFpbihzby0+dm1hLT5vYmosIGZhbHNlKTsKIAlpZiAocmV0KQogCQlyZXR1cm4g cmV0OwogCkBAIC0xNzUsNiArMTc0LDcgQEAgZXJyX291dDoKIGludCBpOTE1X2dlbV9yZW5kZXJf c3RhdGVfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIHsKIAlzdHJ1Y3Qg cmVuZGVyX3N0YXRlIHNvOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CiAJaW50 IHJldDsKIAogCWlmIChXQVJOX09OKHJlcS0+ZW5naW5lLT5pZCAhPSBSQ1MpKQpAQCAtMTg3LDIx ICsxODcsMjUgQEAgaW50IGk5MTVfZ2VtX3JlbmRlcl9zdGF0ZV9pbml0KHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqcmVxKQogCWlmIChzby5yb2RhdGEtPmJhdGNoX2l0ZW1zICogNCA+IDQw OTYpCiAJCXJldHVybiAtRUlOVkFMOwogCi0Jc28ub2JqID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0 ZSgmcmVxLT5pOTE1LT5kcm0sIDQwOTYpOwotCWlmIChJU19FUlIoc28ub2JqKSkKLQkJcmV0dXJu IFBUUl9FUlIoc28ub2JqKTsKKwlvYmogPSBpOTE1X2dlbV9vYmplY3RfY3JlYXRlKCZyZXEtPmk5 MTUtPmRybSwgNDA5Nik7CisJaWYgKElTX0VSUihvYmopKQorCQlyZXR1cm4gUFRSX0VSUihvYmop OwogCi0JcmV0ID0gaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKHNvLm9iaiwgTlVMTCwgMCwgMCwg MCk7Ci0JaWYgKHJldCkKKwlzby52bWEgPSBpOTE1X3ZtYV9jcmVhdGUob2JqLCAmcmVxLT5pOTE1 LT5nZ3R0LmJhc2UsIE5VTEwpOworCWlmIChJU19FUlIoc28udm1hKSkgeworCQlyZXQgPSBQVFJf RVJSKHNvLnZtYSk7CiAJCWdvdG8gZXJyX29iajsKKwl9CiAKLQlzby5nZ3R0X29mZnNldCA9IGk5 MTVfZ2VtX29ial9nZ3R0X29mZnNldChzby5vYmopOworCXJldCA9IGk5MTVfdm1hX3Bpbihzby52 bWEsIDAsIDAsIFBJTl9HTE9CQUwpOworCWlmIChyZXQpCisJCWdvdG8gZXJyX29iajsKIAogCXJl dCA9IHJlbmRlcl9zdGF0ZV9zZXR1cCgmc28pOwogCWlmIChyZXQpCiAJCWdvdG8gZXJyX3VucGlu OwogCi0JcmV0ID0gcmVxLT5lbmdpbmUtPmVtaXRfYmJfc3RhcnQocmVxLCBzby5nZ3R0X29mZnNl dCwKKwlyZXQgPSByZXEtPmVuZ2luZS0+ZW1pdF9iYl9zdGFydChyZXEsIHNvLnZtYS0+bm9kZS5z dGFydCwKIAkJCQkJIHNvLnJvZGF0YS0+YmF0Y2hfaXRlbXMgKiA0LAogCQkJCQkgSTkxNV9ESVNQ QVRDSF9TRUNVUkUpOwogCWlmIChyZXQpCkBAIC0yMDksNyArMjEzLDcgQEAgaW50IGk5MTVfZ2Vt X3JlbmRlcl9zdGF0ZV9pbml0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogCiAJ aWYgKHNvLmF1eF9iYXRjaF9zaXplID4gOCkgewogCQlyZXQgPSByZXEtPmVuZ2luZS0+ZW1pdF9i Yl9zdGFydChyZXEsCi0JCQkJCQkgKHNvLmdndHRfb2Zmc2V0ICsKKwkJCQkJCSAoc28udm1hLT5u b2RlLnN0YXJ0ICsKIAkJCQkJCSAgc28uYXV4X2JhdGNoX29mZnNldCksCiAJCQkJCQkgc28uYXV4 X2JhdGNoX3NpemUsCiAJCQkJCQkgSTkxNV9ESVNQQVRDSF9TRUNVUkUpOwpAQCAtMjE3LDEwICsy MjEsMTAgQEAgaW50IGk5MTVfZ2VtX3JlbmRlcl9zdGF0ZV9pbml0KHN0cnVjdCBkcm1faTkxNV9n ZW1fcmVxdWVzdCAqcmVxKQogCQkJZ290byBlcnJfdW5waW47CiAJfQogCi0JaTkxNV92bWFfbW92 ZV90b19hY3RpdmUoaTkxNV9nZW1fb2JqX3RvX2dndHQoc28ub2JqKSwgcmVxLCAwKTsKKwlpOTE1 X3ZtYV9tb3ZlX3RvX2FjdGl2ZShzby52bWEsIHJlcSwgMCk7CiBlcnJfdW5waW46Ci0JaTkxNV9n ZW1fb2JqZWN0X2dndHRfdW5waW4oc28ub2JqKTsKKwlpOTE1X3ZtYV91bnBpbihzby52bWEpOwog ZXJyX29iajoKLQlpOTE1X2dlbV9vYmplY3RfcHV0KHNvLm9iaik7CisJaTkxNV9nZW1fb2JqZWN0 X3B1dChvYmopOwogCXJldHVybiByZXQ7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX3JlbmRlcl9zdGF0ZS5oCmluZGV4IGM0NGZjYTg1OTliYi4uMThjY2UzZjA2ZTljIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJfc3RhdGUuaApAQCAtMjQsNyAr MjQsNyBAQAogI2lmbmRlZiBfSTkxNV9HRU1fUkVOREVSX1NUQVRFX0hfCiAjZGVmaW5lIF9JOTE1 X0dFTV9SRU5ERVJfU1RBVEVfSF8KIAotI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CitzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3Q7CiAKIGludCBpOTE1X2dlbV9yZW5kZXJfc3RhdGVfaW5pdChz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSk7CiAKLS0gCjIuOC4xCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK