From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 57/73] drm/i915: Split insertion/binding of an object into the VM Date: Mon, 1 Aug 2016 10:11:05 +0100 Message-ID: <1470042681-25318-58-git-send-email-chris@chris-wilson.co.uk> References: <1470042681-25318-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 240496E282 for ; Mon, 1 Aug 2016 09:12:56 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id i5so25264801wmg.2 for ; Mon, 01 Aug 2016 02:12:56 -0700 (PDT) In-Reply-To: <1470042681-25318-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 b24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KUmV2aWV3ZWQtYnk6IEpvb25hcyBMYWh0aW5l biA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbS5jIHwgMzUgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW0uYwppbmRleCBiYTg5ZDk4ZTJhZWQuLmE2YTMwYzc1MTRlMCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0yOTU3LDEyICsyOTU3LDEyIEBAIHN0YXRpYyBib29sIGk5 MTVfZ2VtX3ZhbGlkX2d0dF9zcGFjZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKICAqIEBmbGFnczog bWFzayBvZiBQSU5fKiBmbGFncyB0byB1c2UKICAqLwogc3RhdGljIHN0cnVjdCBpOTE1X3ZtYSAq Ci1pOTE1X2dlbV9vYmplY3RfYmluZF90b192bShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAq b2JqLAotCQkJICAgc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCi0JCQkgICBjb25zdCBz dHJ1Y3QgaTkxNV9nZ3R0X3ZpZXcgKmdndHRfdmlldywKLQkJCSAgIHU2NCBzaXplLAotCQkJICAg dTY0IGFsaWdubWVudCwKLQkJCSAgIHU2NCBmbGFncykKK2k5MTVfZ2VtX29iamVjdF9pbnNlcnRf aW50b192bShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAorCQkJICAgICAgIHN0cnVj dCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAorCQkJICAgICAgIGNvbnN0IHN0cnVjdCBpOTE1X2dn dHRfdmlldyAqZ2d0dF92aWV3LAorCQkJICAgICAgIHU2NCBzaXplLAorCQkJICAgICAgIHU2NCBh bGlnbm1lbnQsCisJCQkgICAgICAgdTY0IGZsYWdzKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBvYmotPmJhc2UuZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IHRvX2k5MTUoZGV2KTsKQEAgLTMwODgsMTkgKzMwODgsMTIgQEAgc2VhcmNoX2ZyZWU6CiAJfQog CUdFTV9CVUdfT04oIWk5MTVfZ2VtX3ZhbGlkX2d0dF9zcGFjZSh2bWEsIG9iai0+Y2FjaGVfbGV2 ZWwpKTsKIAotCXRyYWNlX2k5MTVfdm1hX2JpbmQodm1hLCBmbGFncyk7Ci0JcmV0ID0gaTkxNV92 bWFfYmluZCh2bWEsIG9iai0+Y2FjaGVfbGV2ZWwsIGZsYWdzKTsKLQlpZiAocmV0KQotCQlnb3Rv IGVycl9yZW1vdmVfbm9kZTsKLQogCWxpc3RfbW92ZV90YWlsKCZvYmotPmdsb2JhbF9saXN0LCAm ZGV2X3ByaXYtPm1tLmJvdW5kX2xpc3QpOwogCWxpc3RfbW92ZV90YWlsKCZ2bWEtPnZtX2xpbmss ICZ2bS0+aW5hY3RpdmVfbGlzdCk7CiAJb2JqLT5iaW5kX2NvdW50Kys7CiAKIAlyZXR1cm4gdm1h OwogCi1lcnJfcmVtb3ZlX25vZGU6Ci0JZHJtX21tX3JlbW92ZV9ub2RlKCZ2bWEtPm5vZGUpOwog ZXJyX3ZtYToKIAl2bWEgPSBFUlJfUFRSKHJldCk7CiBlcnJfdW5waW46CkBAIC0zNzYwLDI0ICsz NzUzLDI2IEBAIGk5MTVfZ2VtX29iamVjdF9kb19waW4oc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaiwKIAkJfQogCX0KIAotCWJvdW5kID0gdm1hID8gdm1hLT5ib3VuZCA6IDA7CiAJaWYg KHZtYSA9PSBOVUxMIHx8ICFkcm1fbW1fbm9kZV9hbGxvY2F0ZWQoJnZtYS0+bm9kZSkpIHsKLQkJ dm1hID0gaTkxNV9nZW1fb2JqZWN0X2JpbmRfdG9fdm0ob2JqLCB2bSwgZ2d0dF92aWV3LAotCQkJ CQkJIHNpemUsIGFsaWdubWVudCwgZmxhZ3MpOworCQl2bWEgPSBpOTE1X2dlbV9vYmplY3RfaW5z ZXJ0X2ludG9fdm0ob2JqLCB2bSwgZ2d0dF92aWV3LAorCQkJCQkJICAgICBzaXplLCBhbGlnbm1l bnQsIGZsYWdzKTsKIAkJaWYgKElTX0VSUih2bWEpKQogCQkJcmV0dXJuIFBUUl9FUlIodm1hKTsK LQl9IGVsc2UgewotCQlyZXQgPSBpOTE1X3ZtYV9iaW5kKHZtYSwgb2JqLT5jYWNoZV9sZXZlbCwg ZmxhZ3MpOwotCQlpZiAocmV0KQotCQkJcmV0dXJuIHJldDsKIAl9CiAKKwlib3VuZCA9IHZtYS0+ Ym91bmQ7CisJcmV0ID0gaTkxNV92bWFfYmluZCh2bWEsIG9iai0+Y2FjaGVfbGV2ZWwsIGZsYWdz KTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCiAJaWYgKGdndHRfdmlldyAmJiBnZ3R0X3Zp ZXctPnR5cGUgPT0gSTkxNV9HR1RUX1ZJRVdfTk9STUFMICYmCiAJICAgIChib3VuZCBeIHZtYS0+ Ym91bmQpICYgR0xPQkFMX0JJTkQpIHsKIAkJX19pOTE1X3ZtYV9zZXRfbWFwX2FuZF9mZW5jZWFi bGUodm1hKTsKIAkJV0FSTl9PTihmbGFncyAmIFBJTl9NQVBQQUJMRSAmJiAhb2JqLT5tYXBfYW5k X2ZlbmNlYWJsZSk7CiAJfQogCisJR0VNX0JVR19PTihpOTE1X3ZtYV9taXNwbGFjZWQodm1hLCBz aXplLCBhbGlnbm1lbnQsIGZsYWdzKSk7CisKIAl2bWEtPnBpbl9jb3VudCsrOwogCXJldHVybiAw OwogfQotLSAKMi44LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=