From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 25/31] drm/i915: Compartmentalize i915_gem_init_ggtt Date: Fri, 14 Jun 2019 16:17:25 +0100 Message-ID: <20190614151731.17608-26-tvrtko.ursulin@linux.intel.com> References: <20190614151731.17608-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 mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id EED6189AA2 for ; Fri, 14 Jun 2019 15:18:17 +0000 (UTC) In-Reply-To: <20190614151731.17608-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkNvbnRpbnVp bmcgb24gdGhlIHRoZW1lIG9mIGJldHRlciBsb2dpY2FsIG9yZ2FuaXphdGlvbiBvZiBvdXIgY29k ZSwgbWFrZQp0aGUgZmlyc3Qgc3RlcCB0b3dhcmRzIG1ha2luZyB0aGUgZ2d0dCBjb2RlIGJldHRl ciBpc29sYXRlZCBmcm9tIHdpZGVyCnN0cnVjdCBkcm1faTkxNV9wcml2YXRlLgoKdjI6CiAqIEJy aW5nIHRoZSBpY2tsZSBvbmlvbiB1bndpbmQgYmFjay4gKENocmlzKQogKiBSZW5hbWUgdG8gaTkx NV9pbml0X2dndHQuIChDaHJpcykKClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0 a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YyAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCA0MCAr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmggfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCAxNSBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCBiMGNmY2RhNjc5ODQuLjI0 OGI0NzNjM2JlZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0xNTEyLDcgKzE1MTIsNyBA QCBpbnQgaTkxNV9nZW1faW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJ bXV0ZXhfbG9jaygmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwogCWludGVsX3VuY29yZV9m b3JjZXdha2VfZ2V0KCZkZXZfcHJpdi0+dW5jb3JlLCBGT1JDRVdBS0VfQUxMKTsKIAotCXJldCA9 IGk5MTVfZ2VtX2luaXRfZ2d0dChkZXZfcHJpdik7CisJcmV0ID0gaTkxNV9pbml0X2dndHQoZGV2 X3ByaXYpOwogCWlmIChyZXQpIHsKIAkJR0VNX0JVR19PTihyZXQgPT0gLUVJTyk7CiAJCWdvdG8g ZXJyX3VubG9jazsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggYWExZTNhN2Y1 YTgzLi5mOTdmMzAwMzFkNDcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0y ODY2LDcgKzI4NjYsMTMgQEAgc3RhdGljIHZvaWQgZ2d0dF9yZWxlYXNlX2d1Y190b3Aoc3RydWN0 IGk5MTVfZ2d0dCAqZ2d0dCkKIAkJZHJtX21tX3JlbW92ZV9ub2RlKCZnZ3R0LT51Y19mdyk7CiB9 CiAKLWludCBpOTE1X2dlbV9pbml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQorc3RhdGljIHZvaWQgY2xlYW51cF9pbml0X2dndHQoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0 dCkKK3sKKwlnZ3R0X3JlbGVhc2VfZ3VjX3RvcChnZ3R0KTsKKwlkcm1fbW1fcmVtb3ZlX25vZGUo JmdndHQtPmVycm9yX2NhcHR1cmUpOworfQorCitzdGF0aWMgaW50IGluaXRfZ2d0dChzdHJ1Y3Qg aTkxNV9nZ3R0ICpnZ3R0KQogewogCS8qIExldCBHRU0gTWFuYWdlIGFsbCBvZiB0aGUgYXBlcnR1 cmUuCiAJICoKQEAgLTI4NzcsNyArMjg4Myw2IEBAIGludCBpOTE1X2dlbV9pbml0X2dndHQoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCSAqIGFwZXJ0dXJlLiAgT25lIHBhZ2Ug c2hvdWxkIGJlIGVub3VnaCB0byBrZWVwIGFueSBwcmVmZXRjaGluZyBpbnNpZGUKIAkgKiBvZiB0 aGUgYXBlcnR1cmUuCiAJICovCi0Jc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJpdi0+ Z2d0dDsKIAl1bnNpZ25lZCBsb25nIGhvbGVfc3RhcnQsIGhvbGVfZW5kOwogCXN0cnVjdCBkcm1f bW1fbm9kZSAqZW50cnk7CiAJaW50IHJldDsKQEAgLTI4ODksNyArMjg5NCw3IEBAIGludCBpOTE1 X2dlbV9pbml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCSAqIHdo eS4KIAkgKi8KIAlnZ3R0LT5waW5fYmlhcyA9IG1heF90KHUzMiwgSTkxNV9HVFRfUEFHRV9TSVpF LAotCQkJICAgICAgIGludGVsX3dvcGNtX2d1Y19zaXplKCZkZXZfcHJpdi0+d29wY20pKTsKKwkJ CSAgICAgICBpbnRlbF93b3BjbV9ndWNfc2l6ZSgmZ2d0dC0+dm0uaTkxNS0+d29wY20pKTsKIAog CXJldCA9IGludGVsX3ZndF9iYWxsb29uKGdndHQpOwogCWlmIChyZXQpCkBAIC0yOTEwLDcgKzI5 MTUsNyBAQCBpbnQgaTkxNV9nZW1faW5pdF9nZ3R0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKIAkgKi8KIAlyZXQgPSBnZ3R0X3Jlc2VydmVfZ3VjX3RvcChnZ3R0KTsKIAlpZiAo cmV0KQotCQlnb3RvIGVycl9yZXNlcnZlOworCQlnb3RvIGVycjsKIAogCS8qIENsZWFyIGFueSBu b24tcHJlYWxsb2NhdGVkIGJsb2NrcyAqLwogCWRybV9tbV9mb3JfZWFjaF9ob2xlKGVudHJ5LCAm Z2d0dC0+dm0ubW0sIGhvbGVfc3RhcnQsIGhvbGVfZW5kKSB7CkBAIC0yOTIzLDE5ICsyOTI4LDI4 IEBAIGludCBpOTE1X2dlbV9pbml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQogCS8qIEFuZCBmaW5hbGx5IGNsZWFyIHRoZSByZXNlcnZlZCBndWFyZCBwYWdlICovCiAJ Z2d0dC0+dm0uY2xlYXJfcmFuZ2UoJmdndHQtPnZtLCBnZ3R0LT52bS50b3RhbCAtIFBBR0VfU0la RSwgUEFHRV9TSVpFKTsKIAotCWlmIChJTlRFTF9QUEdUVChkZXZfcHJpdikgPT0gSU5URUxfUFBH VFRfQUxJQVNJTkcpIHsKLQkJcmV0ID0gaW5pdF9hbGlhc2luZ19wcGd0dChkZXZfcHJpdik7CisJ cmV0dXJuIDA7CisKK2VycjoKKwljbGVhbnVwX2luaXRfZ2d0dChnZ3R0KTsKKwlyZXR1cm4gcmV0 OworfQorCitpbnQgaTkxNV9pbml0X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp Cit7CisJaW50IHJldDsKKworCXJldCA9IGluaXRfZ2d0dCgmaTkxNS0+Z2d0dCk7CisJaWYgKHJl dCkKKwkJcmV0dXJuIHJldDsKKworCWlmIChJTlRFTF9QUEdUVChpOTE1KSA9PSBJTlRFTF9QUEdU VF9BTElBU0lORykgeworCQlyZXQgPSBpbml0X2FsaWFzaW5nX3BwZ3R0KGk5MTUpOwogCQlpZiAo cmV0KQotCQkJZ290byBlcnJfYXBwZ3R0OworCQkJY2xlYW51cF9pbml0X2dndHQoJmk5MTUtPmdn dHQpOwogCX0KIAogCXJldHVybiAwOwotCi1lcnJfYXBwZ3R0OgotCWdndHRfcmVsZWFzZV9ndWNf dG9wKGdndHQpOwotZXJyX3Jlc2VydmU6Ci0JZHJtX21tX3JlbW92ZV9ub2RlKCZnZ3R0LT5lcnJv cl9jYXB0dXJlKTsKLQlyZXR1cm4gcmV0OwogfQogCiBzdGF0aWMgdm9pZCBnZ3R0X2NsZWFudXBf aHcoc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX2d0dC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgK aW5kZXggOWEzZDk2MzcwZjA3Li44MjdhZjZiYTM2YzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2d0dC5oCkBAIC02NDYsNyArNjQ2LDcgQEAgaW50IGk5MTVfZ2d0dF9pbml0X2h3KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiBpbnQgaTkxNV9nZ3R0X2VuYWJsZV9odyhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpOTE1X2dndHRfZW5hYmxl X2d1YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSk7CiB2b2lkIGk5MTVfZ2d0dF9kaXNh YmxlX2d1YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSk7Ci1pbnQgaTkxNV9nZW1faW5p dF9nZ3R0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CitpbnQgaTkxNV9pbml0 X2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQgaTkxNV9nZ3R0 X2NsZWFudXBfaHcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIAogaW50IGk5 MTVfcHBndHRfaW5pdF9odyhzdHJ1Y3QgaW50ZWxfZ3QgKmd0KTsKLS0gCjIuMjAuMQoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4