From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: [PATCH 1/6] drm/vmwgfx: Add an interface to pin a resource v3 Date: Mon, 9 Mar 2015 05:30:50 -0700 Message-ID: <1425904255-6539-2-git-send-email-thellstrom@vmware.com> References: <1425904255-6539-1-git-send-email-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp-outbound-1.vmware.com (smtp-outbound-1.vmware.com [208.91.2.12]) by gabe.freedesktop.org (Postfix) with ESMTP id 634976E2C6 for ; Mon, 9 Mar 2015 05:31:32 -0700 (PDT) Received: from sc9-mailhost3.vmware.com (sc9-mailhost3.vmware.com [10.113.161.73]) by smtp-outbound-1.vmware.com (Postfix) with ESMTP id AB47028241 for ; Mon, 9 Mar 2015 05:31:31 -0700 (PDT) Received: from EX13-CAS-011.vmware.com (EX13-CAS-011.vmware.com [10.113.191.63]) by sc9-mailhost3.vmware.com (Postfix) with ESMTP id A700340348 for ; Mon, 9 Mar 2015 05:31:31 -0700 (PDT) In-Reply-To: <1425904255-6539-1-git-send-email-thellstrom@vmware.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Thomas Hellstrom List-Id: dri-devel@lists.freedesktop.org Rm9yIHNjcmVlbiB0YXJnZXRzIGl0IGFwcGVhcnMgd2UgbmVlZCB0byBwaW4gc3VyZmFjZXMgd2hp bGUgdGhleSBhcmUgYm91bmQKYXMgc2NyZWVuIHRhcmdldHMsIHNvIGFkZCBhIHNtYWxsIGludGVy ZmFjZSB0byBkbyB0aGF0LgoKdjI6IEFsd2F5cyBpbmNyZWFzZSBwaW5fY291bnQgb24gcGluLgp2 MzogQWRkIG1pc3NpbmcgcmVzZXJ2YXRpb24gc2VtLgoKU2lnbmVkLW9mZi1ieTogVGhvbWFzIEhl bGxzdHJvbSA8dGhlbGxzdHJvbUB2bXdhcmUuY29tPgpSZXZpZXdlZC1ieTogU2luY2xhaXIgWWVo IDxzeWVoQHZtd2FyZS5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfZHJ2 LmggICAgICB8ICA0ICsrCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9yZXNvdXJjZS5j IHwgOTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIDIgZmlsZXMgY2hhbmdlZCwg OTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS92bXdnZngvdm13Z2Z4X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf ZHJ2LmgKaW5kZXggZDI2YTZkYS4uM2RhNzI0OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhf ZHJ2LmgKQEAgLTExMyw2ICsxMTMsNyBAQCBzdHJ1Y3Qgdm13X3Jlc291cmNlIHsKIAlib29sIGJh Y2t1cF9kaXJ0eTsgLyogUHJvdGVjdGVkIGJ5IGJhY2t1cCBidWZmZXIgcmVzZXJ2ZWQgKi8KIAlz dHJ1Y3Qgdm13X2RtYV9idWZmZXIgKmJhY2t1cDsKIAl1bnNpZ25lZCBsb25nIGJhY2t1cF9vZmZz ZXQ7CisJdW5zaWduZWQgbG9uZyBwaW5fY291bnQ7IC8qIFByb3RlY3RlZCBieSByZXNvdXJjZSBy ZXNlcnZlZCAqLwogCWNvbnN0IHN0cnVjdCB2bXdfcmVzX2Z1bmMgKmZ1bmM7CiAJc3RydWN0IGxp c3RfaGVhZCBscnVfaGVhZDsgLyogUHJvdGVjdGVkIGJ5IHRoZSByZXNvdXJjZSBsb2NrICovCiAJ c3RydWN0IGxpc3RfaGVhZCBtb2JfaGVhZDsgLyogUHJvdGVjdGVkIGJ5IEBiYWNrdXAgcmVzZXJ2 ZWQgKi8KQEAgLTkyNyw2ICs5MjgsOSBAQCBpbnQgdm13X2R1bWJfbWFwX29mZnNldChzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGVfcHJpdiwKIGludCB2bXdfZHVtYl9kZXN0cm95KHN0cnVjdCBkcm1fZmls ZSAqZmlsZV9wcml2LAogCQkgICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCSAgICAgdWlu dDMyX3QgaGFuZGxlKTsKK2V4dGVybiBpbnQgdm13X3Jlc291cmNlX3BpbihzdHJ1Y3Qgdm13X3Jl c291cmNlICpyZXMpOworZXh0ZXJuIHZvaWQgdm13X3Jlc291cmNlX3VucGluKHN0cnVjdCB2bXdf cmVzb3VyY2UgKnJlcyk7CisKIC8qKgogICogT3ZlcmxheSBjb250cm9sIC0gdm13Z2Z4X292ZXJs YXkuYwogICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9yZXNv dXJjZS5jIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfcmVzb3VyY2UuYwppbmRleCAy MTBlZjE1Li4zM2IyNGI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dm eF9yZXNvdXJjZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Jlc291cmNl LmMKQEAgLTExODMsNyArMTE4Myw3IEBAIHZvaWQgdm13X3Jlc291cmNlX3VucmVzZXJ2ZShzdHJ1 Y3Qgdm13X3Jlc291cmNlICpyZXMsCiAJaWYgKG5ld19iYWNrdXApCiAJCXJlcy0+YmFja3VwX29m ZnNldCA9IG5ld19iYWNrdXBfb2Zmc2V0OwogCi0JaWYgKCFyZXMtPmZ1bmMtPm1heV9ldmljdCB8 fCByZXMtPmlkID09IC0xKQorCWlmICghcmVzLT5mdW5jLT5tYXlfZXZpY3QgfHwgcmVzLT5pZCA9 PSAtMSB8fCByZXMtPnBpbl9jb3VudCkKIAkJcmV0dXJuOwogCiAJd3JpdGVfbG9jaygmZGV2X3By aXYtPnJlc291cmNlX2xvY2spOwpAQCAtMTU3MywzICsxNTczLDkyIEBAIHZvaWQgdm13X3Jlc291 cmNlX2V2aWN0X2FsbChzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2KQogCiAJbXV0ZXhfdW5s b2NrKCZkZXZfcHJpdi0+Y21kYnVmX211dGV4KTsKIH0KKworLyoqCisgKiB2bXdfcmVzb3VyY2Vf cGluIC0gQWRkIGEgcGluIHJlZmVyZW5jZSBvbiBhIHJlc291cmNlCisgKgorICogQHJlczogVGhl IHJlc291cmNlIHRvIGFkZCBhIHBpbiByZWZlcmVuY2Ugb24KKyAqCisgKiBUaGlzIGZ1bmN0aW9u IGFkZHMgYSBwaW4gcmVmZXJlbmNlLCBhbmQgaWYgbmVlZGVkIHZhbGlkYXRlcyB0aGUgcmVzb3Vy Y2UuCisgKiBIYXZpbmcgYSBwaW4gcmVmZXJlbmNlIG1lYW5zIHRoYXQgdGhlIHJlc291cmNlIGNh biBuZXZlciBiZSBldmljdGVkLCBhbmQKKyAqIGl0cyBpZCB3aWxsIG5ldmVyIGNoYW5nZSBhcyBs b25nIGFzIHRoZXJlIGlzIGEgcGluIHJlZmVyZW5jZS4KKyAqIFRoaXMgZnVuY3Rpb24gcmV0dXJu cyAwIG9uIHN1Y2Nlc3MgYW5kIGEgbmVnYXRpdmUgZXJyb3IgY29kZSBvbiBmYWlsdXJlLgorICov CitpbnQgdm13X3Jlc291cmNlX3BpbihzdHJ1Y3Qgdm13X3Jlc291cmNlICpyZXMpCit7CisJc3Ry dWN0IHZtd19wcml2YXRlICpkZXZfcHJpdiA9IHJlcy0+ZGV2X3ByaXY7CisJaW50IHJldDsKKwor CXR0bV93cml0ZV9sb2NrKCZkZXZfcHJpdi0+cmVzZXJ2YXRpb25fc2VtLCBmYWxzZSk7CisJbXV0 ZXhfbG9jaygmZGV2X3ByaXYtPmNtZGJ1Zl9tdXRleCk7CisJcmV0ID0gdm13X3Jlc291cmNlX3Jl c2VydmUocmVzLCBmYWxzZSk7CisJaWYgKHJldCkKKwkJZ290byBvdXRfbm9fcmVzZXJ2ZTsKKwor CWlmIChyZXMtPnBpbl9jb3VudCA9PSAwKSB7CisJCXN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAq Ym8gPSBOVUxMOworCisJCWlmIChyZXMtPmJhY2t1cCkgeworCQkJYm8gPSAmcmVzLT5iYWNrdXAt PmJhc2U7CisKKwkJCXR0bV9ib19yZXNlcnZlKGJvLCBmYWxzZSwgZmFsc2UsIGZhbHNlLCAwKTsK KwkJCXJldCA9IHR0bV9ib192YWxpZGF0ZShibywgcmVzLT5mdW5jLT5iYWNrdXBfcGxhY2VtZW50 LAorCQkJCQkgICAgICBmYWxzZSwgZmFsc2UpOworCQkJaWYgKHJldCkgeworCQkJCXR0bV9ib191 bnJlc2VydmUoYm8pOworCQkJCWdvdG8gb3V0X25vX3ZhbGlkYXRlOworCQkJfQorCisJCQkvKiBE byB3ZSByZWFsbHkgbmVlZCB0byBwaW4gdGhlIE1PQiBhcyB3ZWxsPyAqLworCQkJdm13X2JvX3Bp bihibywgdHJ1ZSk7CisJCX0KKwkJcmV0ID0gdm13X3Jlc291cmNlX3ZhbGlkYXRlKHJlcyk7CisJ CWlmIChibykKKwkJCXR0bV9ib191bnJlc2VydmUoYm8pOworCQlpZiAocmV0KQorCQkJZ290byBv dXRfbm9fdmFsaWRhdGU7CisJfQorCXJlcy0+cGluX2NvdW50Kys7CisKK291dF9ub192YWxpZGF0 ZToKKwl2bXdfcmVzb3VyY2VfdW5yZXNlcnZlKHJlcywgTlVMTCwgMFVMKTsKK291dF9ub19yZXNl cnZlOgorCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmNtZGJ1Zl9tdXRleCk7CisJdHRtX3dyaXRl X3VubG9jaygmZGV2X3ByaXYtPnJlc2VydmF0aW9uX3NlbSk7CisKKwlyZXR1cm4gcmV0OworfQor CisvKioKKyAqIHZtd19yZXNvdXJjZV91bnBpbiAtIFJlbW92ZSBhIHBpbiByZWZlcmVuY2UgZnJv bSBhIHJlc291cmNlCisgKgorICogQHJlczogVGhlIHJlc291cmNlIHRvIHJlbW92ZSBhIHBpbiBy ZWZlcmVuY2UgZnJvbQorICoKKyAqIEhhdmluZyBhIHBpbiByZWZlcmVuY2UgbWVhbnMgdGhhdCB0 aGUgcmVzb3VyY2UgY2FuIG5ldmVyIGJlIGV2aWN0ZWQsIGFuZAorICogaXRzIGlkIHdpbGwgbmV2 ZXIgY2hhbmdlIGFzIGxvbmcgYXMgdGhlcmUgaXMgYSBwaW4gcmVmZXJlbmNlLgorICovCit2b2lk IHZtd19yZXNvdXJjZV91bnBpbihzdHJ1Y3Qgdm13X3Jlc291cmNlICpyZXMpCit7CisJc3RydWN0 IHZtd19wcml2YXRlICpkZXZfcHJpdiA9IHJlcy0+ZGV2X3ByaXY7CisJaW50IHJldDsKKworCXR0 bV9yZWFkX2xvY2soJmRldl9wcml2LT5yZXNlcnZhdGlvbl9zZW0sIGZhbHNlKTsKKwltdXRleF9s b2NrKCZkZXZfcHJpdi0+Y21kYnVmX211dGV4KTsKKworCXJldCA9IHZtd19yZXNvdXJjZV9yZXNl cnZlKHJlcywgdHJ1ZSk7CisJV0FSTl9PTihyZXQpOworCisJV0FSTl9PTihyZXMtPnBpbl9jb3Vu dCA9PSAwKTsKKwlpZiAoLS1yZXMtPnBpbl9jb3VudCA9PSAwICYmIHJlcy0+YmFja3VwKSB7CisJ CXN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8gPSAmcmVzLT5iYWNrdXAtPmJhc2U7CisKKwkJ dHRtX2JvX3Jlc2VydmUoYm8sIGZhbHNlLCBmYWxzZSwgZmFsc2UsIDApOworCQl2bXdfYm9fcGlu KGJvLCBmYWxzZSk7CisJCXR0bV9ib191bnJlc2VydmUoYm8pOworCX0KKworCXZtd19yZXNvdXJj ZV91bnJlc2VydmUocmVzLCBOVUxMLCAwVUwpOworCisJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+ Y21kYnVmX211dGV4KTsKKwl0dG1fcmVhZF91bmxvY2soJmRldl9wcml2LT5yZXNlcnZhdGlvbl9z ZW0pOworfQotLSAKMi4xLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCg==