From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [RFC PATCH 35/42] drm/i915: Introduce GEM_OBJECT_SETPARAM with I915_PARAM_MEMORY_REGION Date: Thu, 14 Feb 2019 14:57:33 +0000 Message-ID: <20190214145740.14521-36-matthew.auld@intel.com> References: <20190214145740.14521-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7AEBB6E934 for ; Thu, 14 Feb 2019 14:58:27 +0000 (UTC) In-Reply-To: <20190214145740.14521-1-matthew.auld@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 RnJvbTogQWJkaWVsIEphbnVsZ3VlIDxhYmRpZWwuamFudWxndWVAbGludXguaW50ZWwuY29tPgoK VGhpcyBjYWxsIHdpbGwgc3BlY2lmeSB3aGljaCBtZW1vcnkgcmVnaW9uIGFuIG9iamVjdCBzaG91 bGQgYmUgcGxhY2VkLgoKTm90ZSB0aGF0IGNoYW5naW5nIHRoZSBvYmplY3QncyBiYWNraW5nIHN0 b3JhZ2Ugc2hvdWxkIGJlIGltbWVkaWF0ZWx5CmRvbmUgYWZ0ZXIgYW4gb2JqZWN0IGlzIGNyZWF0 ZWQgb3IgaWYgaXQncyBub3QgeWV0IGluIHVzZSwgb3RoZXJ3aXNlCnRoaXMgd2lsbCBmYWlsIG9u IGEgYnVzeSBvYmplY3QuCgpTaWduZWQtb2ZmLWJ5OiBBYmRpZWwgSmFudWxndWUgPGFiZGllbC5q YW51bGd1ZUBsaW51eC5pbnRlbC5jb20+CkNjOiBKb29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0 aW5lbkBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu YyB8ICAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIHwgICAyICsKIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgfCAxMTEgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIGluY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCAgICAgfCAgMjQgKysrKysrKwog NCBmaWxlcyBjaGFuZ2VkLCAxMzggaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5j CmluZGV4IDkwY2U5OTczY2U0Ni4uMDhhNDI4NmI3MGM2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmMKQEAgLTMwMTYsNiArMzAxNiw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2lvY3RsX2Rl c2MgaTkxNV9pb2N0bHNbXSA9IHsKIAlEUk1fSU9DVExfREVGX0RSVihJOTE1X1BFUkZfQUREX0NP TkZJRywgaTkxNV9wZXJmX2FkZF9jb25maWdfaW9jdGwsIERSTV9VTkxPQ0tFRHxEUk1fUkVOREVS X0FMTE9XKSwKIAlEUk1fSU9DVExfREVGX0RSVihJOTE1X1BFUkZfUkVNT1ZFX0NPTkZJRywgaTkx NV9wZXJmX3JlbW92ZV9jb25maWdfaW9jdGwsIERSTV9VTkxPQ0tFRHxEUk1fUkVOREVSX0FMTE9X KSwKIAlEUk1fSU9DVExfREVGX0RSVihJOTE1X1FVRVJZLCBpOTE1X3F1ZXJ5X2lvY3RsLCBEUk1f VU5MT0NLRUR8RFJNX1JFTkRFUl9BTExPVyksCisJRFJNX0lPQ1RMX0RFRl9EUlYoSTkxNV9HRU1f T0JKRUNUX1NFVFBBUkFNLCBpOTE1X2dlbV9vYmplY3Rfc2V0cGFyYW1faW9jdGwsIERSTV9SRU5E RVJfQUxMT1cpLAogfTsKIAogc3RhdGljIHN0cnVjdCBkcm1fZHJpdmVyIGRyaXZlciA9IHsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IGYwZTg1NjdmMThmNS4uODE4NWVhMTI2NzUyIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTI3NjIsNiArMjc2Miw4IEBAIGlieF9kaXNhYmxlX2Rp c3BsYXlfaW50ZXJydXB0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIGJp dHMpCiAvKiBpOTE1X2dlbS5jICovCiBpbnQgaTkxNV9nZW1fY3JlYXRlX2lvY3RsKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQkgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9w cml2KTsKK2ludCBpOTE1X2dlbV9vYmplY3Rfc2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKKwkJCQkgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7 CiBpbnQgaTkxNV9nZW1fcHJlYWRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAq ZGF0YSwKIAkJCSBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7CiBpbnQgaTkxNV9nZW1fcHdy aXRlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYwppbmRleCBhOWUxMTlkOGQxZjEuLjM4N2VhZTk5OGZiZiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jCkBAIC0yMjU3LDYgKzIyNTcsMTE3IEBAIGludCBpOTE1X2dlbV9tbWFwKHN0 cnVjdCBmaWxlICpmaWxwLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSkKIAlyZXR1cm4gcmV0 OwogfQogCitzdGF0aWMgZW51bSBpbnRlbF9yZWdpb25faWQKK19fcmVnaW9uX2lkKHUzMiByZWdp b24pCit7CisJZW51bSBpbnRlbF9yZWdpb25faWQgaWQ7CisKKwlmb3IgKGlkID0gMDsgaWQgPCBB UlJBWV9TSVpFKGludGVsX3JlZ2lvbl9tYXApOyArK2lkKSB7CisJCWlmIChpbnRlbF9yZWdpb25f bWFwW2lkXSA9PSByZWdpb24pCisJCQlyZXR1cm4gaWQ7CisJfQorCisJcmV0dXJuIElOVEVMX01F TU9SWV9VS05PV047Cit9CisKK3N0YXRpYyBpbnQgaTkxNV9nZW1fb2JqZWN0X3JlZ2lvbl9zZWxl Y3Qoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAorCQkJCQkgc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3RfcGFyYW0gKmFyZ3MsCisJCQkJCSBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUs CisJCQkJCSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQoreworCXN0cnVjdCBpOTE1 X2dlbV9jb250ZXh0ICpjdHggPSAwOworCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOworCXUzMiBf X3VzZXIgKnVyZWdpb25zID0gdTY0X3RvX3VzZXJfcHRyKGFyZ3MtPmRhdGEpOworCWludCBpLCBy ZXQ7CisKKwljdHggPSBpOTE1X2dlbV9jb250ZXh0X2xvb2t1cChmaWxlLT5kcml2ZXJfcHJpdiwK KwkJCQkgICAgICBERUZBVUxUX0NPTlRFWFRfSEFORExFKTsKKwlpZiAoIWN0eCkKKwkgICAgICAg IHJldHVybiAtRU5PRU5UOworCisJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0 ZXgpOworCXJldCA9IGk5MTVfZ2VtX29iamVjdF9wcmVwYXJlX21vdmUob2JqKTsKKwlpZiAocmV0 KSB7CisJCURSTV9FUlJPUigiQ2Fubm90IHNldCBtZW1vcnkgcmVnaW9uLCBvYmplY3QgaW4gdXNl XG4iKTsKKwkgICAgICAgIGdvdG8gZXJyOworCX0KKworCWlmIChhcmdzLT5zaXplID4gQVJSQVlf U0laRShpbnRlbF9yZWdpb25fbWFwKSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlmb3IgKGkgPSAw OyBpIDwgYXJncy0+c2l6ZTsgaSsrKSB7CisJCXUzMiByZWdpb247CisJCWVudW0gaW50ZWxfcmVn aW9uX2lkIGlkOworCisJCXJldCA9IGdldF91c2VyKHJlZ2lvbiwgdXJlZ2lvbnMpOworCQlpZiAo cmV0KQorCQkJZ290byBlcnI7CisKKwkJaWQgPSBfX3JlZ2lvbl9pZChyZWdpb24pOworCQlpZiAo aWQgPT0gSU5URUxfTUVNT1JZX1VLTk9XTikgeworCQkJcmV0ID0gLUVJTlZBTDsKKwkJCWdvdG8g ZXJyOworCQl9CisKKwkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X21pZ3JhdGUoY3R4LCBvYmosIGlk KTsKKwkJaWYgKCFyZXQpIHsKKwkJCWlmIChNRU1PUllfVFlQRV9GUk9NX1JFR0lPTihyZWdpb24p ID09CisJCQkgICAgSU5URUxfTE1FTSkgeworCQkJCS8qCisJCQkJICogVE9ETzogdGhpcyBzaG91 bGQgYmUgcGFydCBvZiBnZXRfcGFnZXMoKSwKKwkJCQkgKiB3aGVuIGFzeW5jIGdldF9wYWdlcyBh cnJpdmVzCisJCQkJICovCisJCQkJd2l0aF9pbnRlbF9ydW50aW1lX3BtKGRldl9wcml2LCB3YWtl cmVmKQorCQkJCQlyZXQgPSBpOTE1X2dlbV9vYmplY3RfY2xlYXJfYmx0KGN0eCwgb2JqKTsKKwor CQkJCWlmIChyZXQpIHsKKwkJCQkJX19pOTE1X2dlbV9vYmplY3RfcmVsZWFzZV91bmxlc3NfYWN0 aXZlKG9iaik7CisJCQkJCURSTV9FUlJPUigiRmFpbGVkIGNsZWFyaW5nIHRoZSBvYmplY3RcbiIp OworCQkJCQlnb3RvIGVycjsKKwkJCQl9CisJCQl9CisJCQlicmVhazsKKwkJfQorCQkrK3VyZWdp b25zOworCX0KK2VycjoKKwltdXRleF91bmxvY2soJmRldl9wcml2LT5kcm0uc3RydWN0X211dGV4 KTsKKwlpOTE1X2dlbV9jb250ZXh0X3B1dChjdHgpOworCXJldHVybiByZXQ7Cit9CisKK2ludCBp OTE1X2dlbV9vYmplY3Rfc2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKKwkJCQkgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCit7CisKKwlzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdF9wYXJhbSAqYXJncyA9IGRhdGE7CisJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpvYmo7CisJaW50IHJldDsKKworCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9sb29rdXAoZmls ZSwgYXJncy0+aGFuZGxlKTsKKwlpZiAoIW9iaikKKwkJcmV0dXJuIC1FTk9FTlQ7CisKKwlzd2l0 Y2ggKGFyZ3MtPnBhcmFtKSB7CisJY2FzZSBJOTE1X1BBUkFNX01FTU9SWV9SRUdJT046CisJCXJl dCA9IGk5MTVfZ2VtX29iamVjdF9yZWdpb25fc2VsZWN0KGRldl9wcml2LCBhcmdzLCBmaWxlLCBv YmopOworCQlpZiAocmV0KSB7CisJCQlEUk1fRVJST1IoIkNhbm5vdCBzZXQgbWVtb3J5IHJlZ2lv biwgbWlncmF0aW9uIGZhaWxlZFxuIik7CisJCQlnb3RvIGVycjsKKwkJfQorCisJCWJyZWFrOwor CWRlZmF1bHQ6CisJCXJldCA9IC1FSU5WQUw7CisJCWJyZWFrOworCX0KKworZXJyOgorCWk5MTVf Z2VtX29iamVjdF9wdXQob2JqKTsKKwlyZXR1cm4gcmV0OworfQorCiAvKiBJbW1lZGlhdGVseSBk aXNjYXJkIHRoZSBiYWNraW5nIHN0b3JhZ2UgKi8KIHN0YXRpYyB2b2lkCiBpOTE1X2dlbV9vYmpl Y3RfdHJ1bmNhdGUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKZGlmZiAtLWdpdCBh L2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0u aAppbmRleCA1YTEwMmE1Y2I0MTUuLjRmNzg5ZDQzZDEwYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS91 YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAt MzIwLDYgKzMyMCw3IEBAIHR5cGVkZWYgc3RydWN0IF9kcm1faTkxNV9zYXJlYSB7CiAjZGVmaW5l IERSTV9JOTE1X1BFUkZfUkVNT1ZFX0NPTkZJRwkweDM4CiAjZGVmaW5lIERSTV9JOTE1X1FVRVJZ CQkJMHgzOQogI2RlZmluZSBEUk1fSTkxNV9HRU1fTU1BUF9PRkZTRVQgICAJRFJNX0k5MTVfR0VN X01NQVBfR1RUCisjZGVmaW5lIERSTV9JOTE1X0dFTV9PQkpFQ1RfU0VUUEFSQU0JMHgzYwogCiAj ZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVQJCURSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBE Uk1fSTkxNV9JTklULCBkcm1faTkxNV9pbml0X3QpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0ZM VVNICQlEUk1fSU8gKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfRkxVU0gpCkBAIC0zNzks NiArMzgwLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX2RybV9pOTE1X3NhcmVhIHsKICNkZWZpbmUgRFJN X0lPQ1RMX0k5MTVfUEVSRl9SRU1PVkVfQ09ORklHCURSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSAr IERSTV9JOTE1X1BFUkZfUkVNT1ZFX0NPTkZJRywgX191NjQpCiAjZGVmaW5lIERSTV9JT0NUTF9J OTE1X1FVRVJZCQkJRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1FVRVJZLCBz dHJ1Y3QgZHJtX2k5MTVfcXVlcnkpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9NTUFQX09G RlNFVAkJRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9NTUFQX09GRlNF VCwgc3RydWN0IGRybV9pOTE1X2dlbV9tbWFwX29mZnNldCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5 MTVfR0VNX09CSkVDVF9TRVRQQVJBTQlEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5 MTVfR0VNX09CSkVDVF9TRVRQQVJBTSwgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3RfcGFyYW0p CiAKIC8qIEFsbG93IGRyaXZlcnMgdG8gc3VibWl0IGJhdGNoYnVmZmVycyBkaXJlY3RseSB0byBo YXJkd2FyZSwgcmVseWluZwogICogb24gdGhlIHNlY3VyaXR5IG1lY2hhbmlzbXMgcHJvdmlkZWQg YnkgaGFyZHdhcmUuCkBAIC02NjQsNiArNjY2LDI4IEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fY3Jl YXRlIHsKIAlfX3UzMiBwYWQ7CiB9OwogCitzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdF9wYXJh bSB7CisJLyoqIEhhbmRsZSBmb3IgdGhlIG9iamVjdCAqLworCV9fdTMyIGhhbmRsZTsKKworCS8q KiBTZXQgdGhlIG1lbW9yeSByZWdpb24gZm9yIHRoZSBvYmplY3QgbGlzdGVkIGluIHByZWZlcmVu Y2Ugb3JkZXIKKwkgKiAgYXMgYW4gYXJyYXkgb2YgcmVnaW9uIGlkcyB3aXRoaW4gZGF0YS4gVG8g Zm9yY2UgYW4gb2JqZWN0CisJICogIHRvIGEgcGFydGljdWxhciBtZW1vcnkgcmVnaW9uLCBzZXQg dGhlIHJlZ2lvbiBhcyB0aGUgc29sZSBlbnRyeS4KKwkgKgorCSAqICBWYWxpZCByZWdpb24gaWRz IGFyZSBkZXJpdmVkIGZyb20gdGhlIGlkIGZpZWxkIG9mCisJICogIHN0cnVjdCBkcm1faTkxNV9t ZW1vcnlfcmVnaW9uX2luZm8uCisJICogIFNlZSBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfbWVtb3J5 X3JlZ2lvbl9pbmZvLgorCSAqLworI2RlZmluZSBJOTE1X1BBUkFNX01FTU9SWV9SRUdJT04gMHgx CisJX191MzIgcGFyYW07CisKKwlfX3UzMiBzaXplOworCS8qIFVudXNlZCBhdCB0aGUgbW9tZW50 ICovCisJX191MzIgZmxhZ3M7CisKKwlfX3U2NCBkYXRhOworfTsKKwogc3RydWN0IGRybV9pOTE1 X2dlbV9wcmVhZCB7CiAJLyoqIEhhbmRsZSBmb3IgdGhlIG9iamVjdCBiZWluZyByZWFkLiAqLwog CV9fdTMyIGhhbmRsZTsKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4