From mboxrd@z Thu Jan 1 00:00:00 1970 From: ankitprasad.r.sharma@intel.com Subject: [PATCH 4/9] drm/i915: Support for creating Stolen memory backed objects Date: Mon, 14 Dec 2015 11:16:06 +0530 Message-ID: <1450071971-30321-5-git-send-email-ankitprasad.r.sharma@intel.com> References: <1450071971-30321-1-git-send-email-ankitprasad.r.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 8AC136E51E for ; Sun, 13 Dec 2015 22:05:26 -0800 (PST) In-Reply-To: <1450071971-30321-1-git-send-email-ankitprasad.r.sharma@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 Cc: Ankitprasad Sharma , akash.goel@intel.com, shashidhar.hiremath@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+ CgpFeHRlbmQgdGhlIGRybV9pOTE1X2dlbV9jcmVhdGUgc3RydWN0dXJlIHRvIGFkZCBzdXBwb3J0 IGZvcgpjcmVhdGluZyBTdG9sZW4gbWVtb3J5IGJhY2tlZCBvYmplY3RzLiBBZGRlZCBhIG5ldyBm bGFnIHRocm91Z2gKd2hpY2ggdXNlciBjYW4gc3BlY2lmeSB0aGUgcHJlZmVyZW5jZSB0byBhbGxv Y2F0ZSB0aGUgb2JqZWN0IGZyb20Kc3RvbGVuIG1lbW9yeSwgd2hpY2ggaWYgc2V0LCBhbiBhdHRl bXB0IHdpbGwgYmUgbWFkZSB0byBhbGxvY2F0ZQp0aGUgb2JqZWN0IGZyb20gc3RvbGVuIG1lbW9y eSBzdWJqZWN0IHRvIHRoZSBhdmFpbGFiaWxpdHkgb2YKZnJlZSBzcGFjZSBpbiB0aGUgc3RvbGVu IHJlZ2lvbi4KCnYyOiBSZWJhc2VkIHRvIHRoZSBsYXRlc3QgZHJtLWludGVsLW5pZ2h0bHkgKEFu a2l0KQoKdjM6IENoYW5nZWQgdmVyc2lvbmluZyBvZiBHRU1fQ1JFQVRFIHBhcmFtLCBhZGRlZCBu ZXcgY29tbWVudHMgKFR2cnRrbykKCnY0OiBDaGFuZ2VkIHNpemUgZnJvbSAzMmIgdG8gNjRiIHRv IHByZXZlbnQgdXNlcnNwYWNlIG92ZXJmbG93IChUdnJ0a28pCkNvcnJlY3RlZCBmdW5jdGlvbiBh cmd1bWVudHMgb3JkZXJpbmcgKENocmlzKQoKdjU6IENvcnJlY3RlZCBmdW5jdGlvbiBuYW1lIChD aHJpcykKClRlc3RjYXNlOiBpZ3QvZ2VtX3N0b2xlbgoKU2lnbmVkLW9mZi1ieTogQW5raXRwcmFz YWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZG1hLmMgICAgICAgIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jICAgICAgICB8IDMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMgfCAgNCArKy0tCiBpbmNsdWRlL3VhcGkvZHJt L2k5MTVfZHJtLmggICAgICAgICAgICB8IDE2ICsrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hh bmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k bWEuYwppbmRleCA1MmI4Mjg5Li41ZDIxODljIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2RtYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZG1hLmMKQEAg LTE3Miw2ICsxNzIsOSBAQCBzdGF0aWMgaW50IGk5MTVfZ2V0cGFyYW0oc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKIAljYXNlIEk5MTVfUEFSQU1fSEFTX0VYRUNfU09GVFBJTjoK IAkJdmFsdWUgPSAxOwogCQlicmVhazsKKwljYXNlIEk5MTVfUEFSQU1fQ1JFQVRFX1ZFUlNJT046 CisJCXZhbHVlID0gMjsKKwkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJRFJNX0RFQlVHKCJVbmtub3du IHBhcmFtZXRlciAlZFxuIiwgcGFyYW0tPnBhcmFtKTsKIAkJcmV0dXJuIC1FSU5WQUw7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAppbmRleCBlMTk1ZmVlLi5kY2RmYjk3IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmgKQEAgLTMyNTUsNyArMzI1NSw3IEBAIHZvaWQgaTkxNV9nZW1fc3RvbGVuX3JlbW92 ZV9ub2RlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIGludCBpOTE1X2dlbV9p bml0X3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgaTkxNV9nZW1fY2xlYW51 cF9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqCi1pOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCB1MzIgc2l6ZSk7CitpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB1NjQgc2l6ZSk7CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqCiBp OTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbl9mb3JfcHJlYWxsb2NhdGVkKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCiAJCQkJCSAgICAgICB1MzIgc3RvbGVuX29mZnNldCwKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jCmluZGV4IGU1MGE5MWIuLjBhODU5YjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YwpAQCAtMzkwLDYgKzM5MCw3IEBAIHN0YXRpYyBpbnQKIGk5MTVfZ2VtX2NyZWF0ZShzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGUsCiAJCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCXVpbnQ2NF90IHNp emUsCisJCXVpbnQzMl90IGZsYWdzLAogCQl1aW50MzJfdCAqaGFuZGxlX3ApCiB7CiAJc3RydWN0 IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKQEAgLTQwMCw4ICs0MDEsMzEgQEAgaTkxNV9nZW1f Y3JlYXRlKHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKIAlpZiAoc2l6ZSA9PSAwKQogCQlyZXR1cm4g LUVJTlZBTDsKIAorCWlmIChmbGFncyAmIF9fSTkxNV9DUkVBVEVfVU5LTk9XTl9GTEFHUykKKwkJ cmV0dXJuIC1FSU5WQUw7CisKIAkvKiBBbGxvY2F0ZSB0aGUgbmV3IG9iamVjdCAqLwotCW9iaiA9 IGk5MTVfZ2VtX2FsbG9jX29iamVjdChkZXYsIHNpemUpOworCWlmIChmbGFncyAmIEk5MTVfQ1JF QVRFX1BMQUNFTUVOVF9TVE9MRU4pIHsKKwkJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgp OworCQlvYmogPSBpOTE1X2dlbV9vYmplY3RfY3JlYXRlX3N0b2xlbihkZXYsIHNpemUpOworCQlp ZiAoIW9iaikgeworCQkJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CisJCQlyZXR1 cm4gLUVOT01FTTsKKwkJfQorCisJCS8qIEFsd2F5cyBjbGVhciBmcmVzaCBidWZmZXJzIGJlZm9y ZSBoYW5kaW5nIHRvIHVzZXJzcGFjZSAqLworCQlyZXQgPSBpOTE1X2dlbV9vYmplY3RfY2xlYXIo b2JqKTsKKwkJaWYgKHJldCkgeworCQkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+ YmFzZSk7CisJCQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwkJCXJldHVybiBy ZXQ7CisJCX0KKworCQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwl9IGVsc2Ug eworCQlvYmogPSBpOTE1X2dlbV9hbGxvY19vYmplY3QoZGV2LCBzaXplKTsKKwl9CisKIAlpZiAo b2JqID09IE5VTEwpCiAJCXJldHVybiAtRU5PTUVNOwogCkBAIC00MjQsNyArNDQ4LDcgQEAgaTkx NV9nZW1fZHVtYl9jcmVhdGUoc3RydWN0IGRybV9maWxlICpmaWxlLAogCWFyZ3MtPnBpdGNoID0g QUxJR04oYXJncy0+d2lkdGggKiBESVZfUk9VTkRfVVAoYXJncy0+YnBwLCA4KSwgNjQpOwogCWFy Z3MtPnNpemUgPSBhcmdzLT5waXRjaCAqIGFyZ3MtPmhlaWdodDsKIAlyZXR1cm4gaTkxNV9nZW1f Y3JlYXRlKGZpbGUsIGRldiwKLQkJCSAgICAgICBhcmdzLT5zaXplLCAmYXJncy0+aGFuZGxlKTsK KwkJCSAgICAgICBhcmdzLT5zaXplLCAwLCAmYXJncy0+aGFuZGxlKTsKIH0KIAogLyoqCkBAIC00 MzcsNyArNDYxLDcgQEAgaTkxNV9nZW1fY3JlYXRlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHZvaWQgKmRhdGEsCiAJc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGUgKmFyZ3MgPSBkYXRh OwogCiAJcmV0dXJuIGk5MTVfZ2VtX2NyZWF0ZShmaWxlLCBkZXYsCi0JCQkgICAgICAgYXJncy0+ c2l6ZSwgJmFyZ3MtPmhhbmRsZSk7CisJCQkgICAgICAgYXJncy0+c2l6ZSwgYXJncy0+ZmxhZ3Ms ICZhcmdzLT5oYW5kbGUpOwogfQogCiBzdGF0aWMgaW5saW5lIGludApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9zdG9sZW4uYwppbmRleCA1Mzg0NzY3Li4xN2Q2NzllIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9zdG9sZW4uYwpAQCAtNTg2LDcgKzU4Niw3IEBAIGNsZWFudXA6CiB9 CiAKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKLWk5MTVfZ2VtX29iamVjdF9jcmVhdGVf c3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBzaXplKQoraTkxNV9nZW1fb2JqZWN0 X2NyZWF0ZV9zdG9sZW4oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTY0IHNpemUpCiB7CiAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwpAQCAtNTk2LDcgKzU5Niw3IEBAIGk5MTVfZ2Vt X29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiBzaXplKQog CWlmICghZHJtX21tX2luaXRpYWxpemVkKCZkZXZfcHJpdi0+bW0uc3RvbGVuKSkKIAkJcmV0dXJu IE5VTEw7CiAKLQlEUk1fREVCVUdfS01TKCJjcmVhdGluZyBzdG9sZW4gb2JqZWN0OiBzaXplPSV4 XG4iLCBzaXplKTsKKwlEUk1fREVCVUdfS01TKCJjcmVhdGluZyBzdG9sZW4gb2JqZWN0OiBzaXpl PSVsbHhcbiIsIHNpemUpOwogCWlmIChzaXplID09IDApCiAJCXJldHVybiBOVUxMOwogCmRpZmYg LS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmgKaW5kZXggZDcyN2I0OS4uZWJjZThjOSAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBp L2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtMzU3 LDYgKzM1Nyw3IEBAIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X2lycV93YWl0IHsKICNkZWZpbmUg STkxNV9QQVJBTV9IQVNfR1BVX1JFU0VUCSAzNQogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19SRVNP VVJDRV9TVFJFQU1FUiAzNgogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19FWEVDX1NPRlRQSU4JIDM3 CisjZGVmaW5lIEk5MTVfUEFSQU1fQ1JFQVRFX1ZFUlNJT04JIDM4CiAKIHR5cGVkZWYgc3RydWN0 IGRybV9pOTE1X2dldHBhcmFtIHsKIAlfX3MzMiBwYXJhbTsKQEAgLTQ1Niw2ICs0NTcsMjEgQEAg c3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGUgewogCSAqLwogCV9fdTMyIGhhbmRsZTsKIAlfX3Uz MiBwYWQ7CisJLyoqCisJICogUmVxdWVzdGVkIGZsYWdzIChjdXJyZW50bHkgdXNlZCBmb3IgcGxh Y2VtZW50CisJICogKHdoaWNoIG1lbW9yeSBkb21haW4pKQorCSAqCisJICogWW91IGNhbiByZXF1 ZXN0IHRoYXQgdGhlIG9iamVjdCBiZSBjcmVhdGVkIGZyb20gc3BlY2lhbCBtZW1vcnkKKwkgKiBy YXRoZXIgdGhhbiByZWd1bGFyIHN5c3RlbSBwYWdlcyB1c2luZyB0aGlzIHBhcmFtZXRlci4gU3Vj aAorCSAqIGlycmVndWxhciBvYmplY3RzIG1heSBoYXZlIGNlcnRhaW4gcmVzdHJpY3Rpb25zIChz dWNoIGFzIENQVQorCSAqIGFjY2VzcyB0byBhIHN0b2xlbiBvYmplY3QgaXMgdmVyYm90ZW4pLgor CSAqCisJICogVGhpcyBjYW4gYmUgdXNlZCBpbiB0aGUgZnV0dXJlIGZvciBvdGhlciBwdXJwb3Nl cyB0b28KKwkgKiBlLmcuIHNwZWNpZnlpbmcgdGlsaW5nL2NhY2hpbmcvbWFkdmlzZQorCSAqLwor CV9fdTMyIGZsYWdzOworI2RlZmluZSBJOTE1X0NSRUFURV9QTEFDRU1FTlRfU1RPTEVOIAkoMTw8 MCkgLyogQ2Fubm90IHVzZSBDUFUgbW1hcHMgKi8KKyNkZWZpbmUgX19JOTE1X0NSRUFURV9VTktO T1dOX0ZMQUdTCS0oSTkxNV9DUkVBVEVfUExBQ0VNRU5UX1NUT0xFTiA8PCAxKQogfTsKIAogc3Ry dWN0IGRybV9pOTE1X2dlbV9wcmVhZCB7Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK