From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH] drm/i915: Move frontbuffer CS write tracking from ggtt vma to object Date: Wed, 16 Nov 2016 19:07:04 +0000 Message-ID: <20161116190704.5293-1-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-x242.google.com (mail-wm0-x242.google.com [IPv6:2a00:1450:400c:c09::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 098416E252 for ; Wed, 16 Nov 2016 19:07:10 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id g23so14231537wme.1 for ; Wed, 16 Nov 2016 11:07:09 -0800 (PST) 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 Cc: Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org SSB0cmllZCB0byBhdm9pZCBoYXZpbmcgdG8gdHJhY2sgdGhlIHdyaXRlIGZvciBldmVyeSBWTUEg Ynkgb25seQp0cmFja2luZyB3cml0ZXMgdG8gdGhlIGdndHQuIEhvd2V2ZXIsIGZvciB0aGUgcHVy cG9zZXMgb2YgZnJvbnRidWZmZXIKdHJhY2tpbmcgdGhpcyBpcyBpbnN1ZmZpY2llbnQgYXMgd2Ug bmVlZCB0byBpbnZhbGlkYXRlIGFyb3VuZCB3cml0ZXMgbm90Cmp1c3QgdG8gdGhlIHRoZSBnZ3R0 IGJ1dCBhbGwgYWxpYXNlZCBwcGd0dCB2aWV3cyBvZiB0aGUgZnJhbWVidWZmZXIuIEJ5Cm1vdmlu ZyB0aGUgY3JpdGljYWwgc2VjdGlvbiB0byB0aGUgb2JqZWN0IGFuZCBvbmx5IGRvaW5nIHNvIGZv cgpmcmFtZWJ1ZmZlciB3cml0ZXMgd2UgY2FuIHJlZHVjZSB0aGUgdHJhY2tpbmcgZXZlbiBmdXJ0 aGVyIGJ5IG9ubHkKd2F0Y2hpbmcgZnJhbWVidWZmZXJzIGFuZCBub3Qgdm1hLgoKU2lnbmVkLW9m Zi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBQYXVsbyBa YW5vbmkgPHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jICAgICAgICAgICAgfCAxMSArKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIHwgIDUgKystLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX29iamVjdC5oICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ3B1X2Vycm9yLmMgICAgICB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf dm1hLmMgICAgICAgICAgICB8IDEyIC0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV92bWEuaCAgICAgICAgICAgIHwgIDEgLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZnJvbnRidWZmZXIuaCAgIHwgIDUgKysrLS0KIDcgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9u cygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggN2M1N2Jh OWVkMmVhLi4yMGQ0MDJlNzU5NDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMzk2Myw2 ICszOTYzLDE2IEBAIGk5MTVfZ2VtX21hZHZpc2VfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgdm9pZCAqZGF0YSwKIAlyZXR1cm4gZXJyOwogfQogCitzdGF0aWMgdm9pZAorZnJvbnRidWZm ZXJfcmV0aXJlKHN0cnVjdCBpOTE1X2dlbV9hY3RpdmUgKmFjdGl2ZSwKKwkJICAgc3RydWN0IGRy bV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpvYmogPQorCQljb250YWluZXJfb2YoYWN0aXZlLCB0eXBlb2YoKm9iaiksIGZyb250YnVm ZmVyX3dyaXRlKTsKKworCWludGVsX2ZiX29ial9mbHVzaChvYmosIHRydWUsIE9SSUdJTl9DUyk7 Cit9CisKIHZvaWQgaTkxNV9nZW1fb2JqZWN0X2luaXQoc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaiwKIAkJCSAgY29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Rfb3BzICpvcHMp CiB7CkBAIC0zOTgwLDYgKzM5OTAsNyBAQCB2b2lkIGk5MTVfZ2VtX29iamVjdF9pbml0KHN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJb2JqLT5yZXN2ID0gJm9iai0+X19idWlsdGlu X3Jlc3Y7CiAKIAlvYmotPmZyb250YnVmZmVyX2dndHRfb3JpZ2luID0gT1JJR0lOX0dUVDsKKwlp bml0X3JlcXVlc3RfYWN0aXZlKCZvYmotPmZyb250YnVmZmVyX3dyaXRlLCBmcm9udGJ1ZmZlcl9y ZXRpcmUpOwogCiAJb2JqLT5tbS5tYWR2ID0gSTkxNV9NQURWX1dJTExORUVEOwogCUlOSVRfUkFE SVhfVFJFRSgmb2JqLT5tbS5nZXRfcGFnZS5yYWRpeCwgR0ZQX0tFUk5FTCB8IF9fR0ZQX05PV0FS Tik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVy LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKaW5kZXggZDg0 NWE1NDM2MGE3Li4zY2ExMmU2Y2JmYTQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9leGVjYnVmZmVyLmMKQEAgLTEyODIsOSArMTI4Miw4IEBAIHZvaWQgaTkxNV92bWFfbW92ZV90 b19hY3RpdmUoc3RydWN0IGk5MTVfdm1hICp2bWEsCiAJbGlzdF9tb3ZlX3RhaWwoJnZtYS0+dm1f bGluaywgJnZtYS0+dm0tPmFjdGl2ZV9saXN0KTsKIAogCWlmIChmbGFncyAmIEVYRUNfT0JKRUNU X1dSSVRFKSB7Ci0JCWk5MTVfZ2VtX2FjdGl2ZV9zZXQoJnZtYS0+bGFzdF93cml0ZSwgcmVxKTsK LQotCQlpbnRlbF9mYl9vYmpfaW52YWxpZGF0ZShvYmosIE9SSUdJTl9DUyk7CisJCWlmIChpbnRl bF9mYl9vYmpfaW52YWxpZGF0ZShvYmosIE9SSUdJTl9DUykpCisJCQlpOTE1X2dlbV9hY3RpdmVf c2V0KCZvYmotPmZyb250YnVmZmVyX3dyaXRlLCByZXEpOwogCiAJCS8qIHVwZGF0ZSBmb3IgdGhl IGltcGxpY2l0IGZsdXNoIGFmdGVyIGEgYmF0Y2ggKi8KIAkJb2JqLT5iYXNlLndyaXRlX2RvbWFp biAmPSB+STkxNV9HRU1fR1BVX0RPTUFJTlM7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9vYmplY3QuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX29i amVjdC5oCmluZGV4IDQ0MDUzMGIyMGZmYS4uMTVkOTY1OTRiYjdlIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9vYmplY3QuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9vYmplY3QuaApAQCAtMTAzLDYgKzEwMyw3IEBAIHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0IHsKIAogCWF0b21pY190IGZyb250YnVmZmVyX2JpdHM7CiAJdW5zaWduZWQg aW50IGZyb250YnVmZmVyX2dndHRfb3JpZ2luOyAvKiB3cml0ZSBvbmNlICovCisJc3RydWN0IGk5 MTVfZ2VtX2FjdGl2ZSBmcm9udGJ1ZmZlcl93cml0ZTsKIAogCS8qKiBDdXJyZW50IHRpbGluZyBz dHJpZGUgZm9yIHRoZSBvYmplY3QsIGlmIGl0J3MgdGlsZWQuICovCiAJdW5zaWduZWQgaW50IHRp bGluZ19hbmRfc3RyaWRlOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n cHVfZXJyb3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMKaW5kZXgg NWQ2MjBiZDVkZDIyLi4yY2E3MTg4NjhiMzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ3B1X2Vycm9yLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVf ZXJyb3IuYwpAQCAtODg3LDggKzg4Nyw4IEBAIHN0YXRpYyB2b2lkIGNhcHR1cmVfYm8oc3RydWN0 IGRybV9pOTE1X2Vycm9yX2J1ZmZlciAqZXJyLAogCiAJZm9yIChpID0gMDsgaSA8IEk5MTVfTlVN X0VOR0lORVM7IGkrKykKIAkJZXJyLT5yc2Vxbm9baV0gPSBfX2FjdGl2ZV9nZXRfc2Vxbm8oJnZt YS0+bGFzdF9yZWFkW2ldKTsKLQllcnItPndzZXFubyA9IF9fYWN0aXZlX2dldF9zZXFubygmdm1h LT5sYXN0X3dyaXRlKTsKLQllcnItPmVuZ2luZSA9IF9fYWN0aXZlX2dldF9lbmdpbmVfaWQoJnZt YS0+bGFzdF93cml0ZSk7CisJZXJyLT53c2Vxbm8gPSBfX2FjdGl2ZV9nZXRfc2Vxbm8oJm9iai0+ ZnJvbnRidWZmZXJfd3JpdGUpOworCWVyci0+ZW5naW5lID0gX19hY3RpdmVfZ2V0X2VuZ2luZV9p ZCgmb2JqLT5mcm9udGJ1ZmZlcl93cml0ZSk7CiAKIAllcnItPmd0dF9vZmZzZXQgPSB2bWEtPm5v ZGUuc3RhcnQ7CiAJZXJyLT5yZWFkX2RvbWFpbnMgPSBvYmotPmJhc2UucmVhZF9kb21haW5zOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfdm1hLmMKaW5kZXggNDQ1ODUzMDBmZGZmLi5mZDU1YmM4ZjFjNjEgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV92bWEuYwpAQCAtNzQsMTYgKzc0LDYgQEAgaTkxNV92bWFfcmV0aXJl KHN0cnVjdCBpOTE1X2dlbV9hY3RpdmUgKmFjdGl2ZSwKIAl9CiB9CiAKLXN0YXRpYyB2b2lkCi1p OTE1X2dndHRfcmV0aXJlX193cml0ZShzdHJ1Y3QgaTkxNV9nZW1fYWN0aXZlICphY3RpdmUsCi0J CQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCi17Ci0Jc3RydWN0IGk5MTVf dm1hICp2bWEgPQotCQljb250YWluZXJfb2YoYWN0aXZlLCBzdHJ1Y3QgaTkxNV92bWEsIGxhc3Rf d3JpdGUpOwotCi0JaW50ZWxfZmJfb2JqX2ZsdXNoKHZtYS0+b2JqLCB0cnVlLCBPUklHSU5fQ1Mp OwotfQotCiBzdGF0aWMgc3RydWN0IGk5MTVfdm1hICoKIF9faTkxNV92bWFfY3JlYXRlKHN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCSAgc3RydWN0IGk5MTVfYWRkcmVzc19zcGFj ZSAqdm0sCkBAIC0xMDIsOCArOTIsNiBAQCBfX2k5MTVfdm1hX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqLAogCUlOSVRfTElTVF9IRUFEKCZ2bWEtPmV4ZWNfbGlzdCk7CiAJ Zm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodm1hLT5sYXN0X3JlYWQpOyBpKyspCiAJCWluaXRf cmVxdWVzdF9hY3RpdmUoJnZtYS0+bGFzdF9yZWFkW2ldLCBpOTE1X3ZtYV9yZXRpcmUpOwotCWlu aXRfcmVxdWVzdF9hY3RpdmUoJnZtYS0+bGFzdF93cml0ZSwKLQkJCSAgICBpOTE1X2lzX2dndHQo dm0pID8gaTkxNV9nZ3R0X3JldGlyZV9fd3JpdGUgOiBOVUxMKTsKIAlpbml0X3JlcXVlc3RfYWN0 aXZlKCZ2bWEtPmxhc3RfZmVuY2UsIE5VTEwpOwogCWxpc3RfYWRkKCZ2bWEtPnZtX2xpbmssICZ2 bS0+dW5ib3VuZF9saXN0KTsKIAl2bWEtPnZtID0gdm07CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3ZtYS5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuaApp bmRleCAyZTQ5ZjVkZDYxMDcuLjg1NDQ2ZjBiMGIzZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV92bWEuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZtYS5o CkBAIC04MCw3ICs4MCw2IEBAIHN0cnVjdCBpOTE1X3ZtYSB7CiAKIAl1bnNpZ25lZCBpbnQgYWN0 aXZlOwogCXN0cnVjdCBpOTE1X2dlbV9hY3RpdmUgbGFzdF9yZWFkW0k5MTVfTlVNX0VOR0lORVNd OwotCXN0cnVjdCBpOTE1X2dlbV9hY3RpdmUgbGFzdF93cml0ZTsKIAlzdHJ1Y3QgaTkxNV9nZW1f YWN0aXZlIGxhc3RfZmVuY2U7CiAKIAkvKioKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Zyb250YnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mcm9u dGJ1ZmZlci5oCmluZGV4IDc2Y2ViNTM5ZjlmMC4uN2JhYjQxMjE4Y2Y3IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mcm9udGJ1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Zyb250YnVmZmVyLmgKQEAgLTUzLDE2ICs1MywxNyBAQCB2b2lkIF9f aW50ZWxfZmJfb2JqX2ZsdXNoKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAgKiB1 bnRpbCB0aGUgcmVuZGVyaW5nIGNvbXBsZXRlcyBvciBhIGZsaXAgb24gdGhpcyBmcm9udGJ1ZmZl ciBwbGFuZSBpcwogICogc2NoZWR1bGVkLgogICovCi1zdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxf ZmJfb2JqX2ludmFsaWRhdGUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKK3N0YXRp YyBpbmxpbmUgYm9vbCBpbnRlbF9mYl9vYmpfaW52YWxpZGF0ZShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogCQkJCQkgICBlbnVtIGZiX29wX29yaWdpbiBvcmlnaW4pCiB7CiAJdW5z aWduZWQgaW50IGZyb250YnVmZmVyX2JpdHM7CiAKIAlmcm9udGJ1ZmZlcl9iaXRzID0gYXRvbWlj X3JlYWQoJm9iai0+ZnJvbnRidWZmZXJfYml0cyk7CiAJaWYgKCFmcm9udGJ1ZmZlcl9iaXRzKQot CQlyZXR1cm47CisJCXJldHVybiBmYWxzZTsKIAogCV9faW50ZWxfZmJfb2JqX2ludmFsaWRhdGUo b2JqLCBvcmlnaW4sIGZyb250YnVmZmVyX2JpdHMpOworCXJldHVybiB0cnVlOwogfQogCiAvKioK LS0gCjIuMTAuMgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==