From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 07/38] drm/i915: Split insertion/binding of an object into the VM Date: Fri, 3 Jun 2016 17:55:22 +0100 Message-ID: <1464972953-2726-8-git-send-email-chris@chris-wilson.co.uk> References: <1464972953-2726-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-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5705D887C7 for ; Fri, 3 Jun 2016 16:56:08 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id a136so734929wme.0 for ; Fri, 03 Jun 2016 09:56:08 -0700 (PDT) In-Reply-To: <1464972953-2726-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 U3BsaXQgdGhlIGluc2VydGlvbiBpbnRvIHRoZSBhZGRyZXNzIHNwYWNlJ3MgcmFuZ2UgbWFuYWdl ciBhbmQgYmluZGluZwpvZiB0aGF0IG9iamVjdCBpbnRvIHRoZSBHVFQgdG8gc2ltcGxpZnkgdGhl IGNvZGUgZmxvdyB3aGVuIHBpbm5pbmcgYQpWTUEuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxz b24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jIHwgMzMgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMKaW5kZXggMGYwMTAxMzAwYjJiLi5jZDU0YzI5MDY4MGQgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYwpAQCAtMjY3NSwxMiArMjY3NSwxMiBAQCBzdGF0aWMgYm9vbCBpOTE1X2dlbV92 YWxpZF9ndHRfc3BhY2Uoc3RydWN0IGk5MTVfdm1hICp2bWEsCiAgKiB0aGVyZS4KICAqLwogc3Rh dGljIHN0cnVjdCBpOTE1X3ZtYSAqCi1pOTE1X2dlbV9vYmplY3RfYmluZF90b192bShzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAotCQkJICAgc3RydWN0IGk5MTVfYWRkcmVzc19zcGFj ZSAqdm0sCi0JCQkgICBjb25zdCBzdHJ1Y3QgaTkxNV9nZ3R0X3ZpZXcgKmdndHRfdmlldywKLQkJ CSAgIHVpbnQ2NF90IHNpemUsCi0JCQkgICB1bnNpZ25lZCBhbGlnbm1lbnQsCi0JCQkgICB1aW50 NjRfdCBmbGFncykKK2k5MTVfZ2VtX29iamVjdF9pbnNlcnRfaW50b192bShzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqLAorCQkJICAgICAgIHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2Ug KnZtLAorCQkJICAgICAgIGNvbnN0IHN0cnVjdCBpOTE1X2dndHRfdmlldyAqZ2d0dF92aWV3LAor CQkJICAgICAgIHVpbnQ2NF90IHNpemUsCisJCQkgICAgICAgdW5zaWduZWQgYWxpZ25tZW50LAor CQkJICAgICAgIHVpbnQ2NF90IGZsYWdzKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBv YmotPmJhc2UuZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoZGV2KTsKQEAgLTI4MDksMTEgKzI4MDksNiBAQCBzZWFyY2hfZnJlZToKIAkJZ290byBlcnJf cmVtb3ZlX25vZGU7CiAJfQogCi0JdHJhY2VfaTkxNV92bWFfYmluZCh2bWEsIGZsYWdzKTsKLQly ZXQgPSBpOTE1X3ZtYV9iaW5kKHZtYSwgb2JqLT5jYWNoZV9sZXZlbCwgZmxhZ3MpOwotCWlmIChy ZXQpCi0JCWdvdG8gZXJyX3JlbW92ZV9ub2RlOwotCiAJbGlzdF9tb3ZlX3RhaWwoJm9iai0+Z2xv YmFsX2xpc3QsICZkZXZfcHJpdi0+bW0uYm91bmRfbGlzdCk7CiAJbGlzdF9tb3ZlX3RhaWwoJnZt YS0+dm1fbGluaywgJnZtLT5pbmFjdGl2ZV9saXN0KTsKIAlvYmotPmJpbmRfY291bnQrKzsKQEAg LTM0ODQsMjQgKzM0NzksMjYgQEAgaTkxNV9nZW1fb2JqZWN0X2RvX3BpbihzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqLAogCQl9CiAJfQogCi0JYm91bmQgPSB2bWEgPyB2bWEtPmJvdW5k IDogMDsKIAlpZiAodm1hID09IE5VTEwgfHwgIWRybV9tbV9ub2RlX2FsbG9jYXRlZCgmdm1hLT5u b2RlKSkgewotCQl2bWEgPSBpOTE1X2dlbV9vYmplY3RfYmluZF90b192bShvYmosIHZtLCBnZ3R0 X3ZpZXcsCi0JCQkJCQkgc2l6ZSwgYWxpZ25tZW50LCBmbGFncyk7CisJCXZtYSA9IGk5MTVfZ2Vt X29iamVjdF9pbnNlcnRfaW50b192bShvYmosIHZtLCBnZ3R0X3ZpZXcsCisJCQkJCQkgICAgIHNp emUsIGFsaWdubWVudCwgZmxhZ3MpOwogCQlpZiAoSVNfRVJSKHZtYSkpCiAJCQlyZXR1cm4gUFRS X0VSUih2bWEpOwotCX0gZWxzZSB7Ci0JCXJldCA9IGk5MTVfdm1hX2JpbmQodm1hLCBvYmotPmNh Y2hlX2xldmVsLCBmbGFncyk7Ci0JCWlmIChyZXQpCi0JCQlyZXR1cm4gcmV0OwogCX0KIAorCWJv dW5kID0gdm1hLT5ib3VuZDsKKwlyZXQgPSBpOTE1X3ZtYV9iaW5kKHZtYSwgb2JqLT5jYWNoZV9s ZXZlbCwgZmxhZ3MpOworCWlmIChyZXQpCisJCXJldHVybiByZXQ7CisKIAlpZiAoZ2d0dF92aWV3 ICYmIGdndHRfdmlldy0+dHlwZSA9PSBJOTE1X0dHVFRfVklFV19OT1JNQUwgJiYKIAkgICAgKGJv dW5kIF4gdm1hLT5ib3VuZCkgJiBHTE9CQUxfQklORCkgewogCQlfX2k5MTVfdm1hX3NldF9tYXBf YW5kX2ZlbmNlYWJsZSh2bWEpOwogCQlXQVJOX09OKGZsYWdzICYgUElOX01BUFBBQkxFICYmICFv YmotPm1hcF9hbmRfZmVuY2VhYmxlKTsKIAl9CiAKKwlHRU1fQlVHX09OKGk5MTVfdm1hX21pc3Bs YWNlZCh2bWEsIHNpemUsIGFsaWdubWVudCwgZmxhZ3MpKTsKKwogCXZtYS0+cGluX2NvdW50Kys7 CiAJcmV0dXJuIDA7CiB9Ci0tIAoyLjguMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==