From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH 1/2] drm: Add drm_gem_vram_{pin/unpin}_reserved() and convert mgag200 Date: Thu, 16 May 2019 18:27:45 +0200 Message-ID: <20190516162746.11636-2-tzimmermann@suse.de> References: <20190516162746.11636-1-tzimmermann@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id A51B889780 for ; Thu, 16 May 2019 16:27:52 +0000 (UTC) In-Reply-To: <20190516162746.11636-1-tzimmermann@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: daniel@ffwll.ch, airlied@linux.ie, kraxel@redhat.com, christian.koenig@amd.com, ray.huang@amd.com, hdegoede@redhat.com, noralf@tronnes.org, sam@ravnborg.org, z.liuxinliang@hisilicon.com, zourongrong@gmail.com, kong.kongxinwei@hisilicon.com, puck.chen@hisilicon.com Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org, virtualization@lists.linux-foundation.org List-Id: dri-devel@lists.freedesktop.org VGhlIG5ldyBpbnRlcmZhY2VzIGRybV9nZW1fdnJhbV97cGluL3VucGlufV9yZXNlcnZlZCgpIGFy ZSB2YXJpYW50cyBvZiB0aGUKR0VNIFZSQU0gcGluL3VucGluIGZ1bmN0aW9ucyB0aGF0IGRvIG5v dCByZXNlcnZlIHRoZSBCTyBkdXJpbmcgdmFsaWRhdGlvbi4KVGhlIG1nYWcyMDAgZHJpdmVyIHJl cXVpcmVzIHRoaXMgYmVoYXZpb3IgZm9yIGl0cyBjdXJzb3IgaGFuZGxpbmcuIFRoZQpwYXRjaCBh bHNvIGNvbnZlcnRzIHRoZSBkcml2ZXIgdG8gdXNlIHRoZSBuZXcgaW50ZXJmYWNlcy4KClNpZ25l ZC1vZmYtYnk6IFRob21hcyBaaW1tZXJtYW5uIDx0emltbWVybWFubkBzdXNlLmRlPgotLS0KIGRy aXZlcnMvZ3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmMgICAgfCA3NSArKysrKysrKysrKysr KysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfY3Vyc29yLmMgfCAx OCArKystLS0KIGluY2x1ZGUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuaCAgICAgICAgfCAgMyAr CiAzIGZpbGVzIGNoYW5nZWQsIDg4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmMKaW5kZXggOGYxNDJiODEwZWI0Li5hMDAyYzAz ZWFmNGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuYwpAQCAtMjU0LDYgKzI1 NCw0NyBAQCBpbnQgZHJtX2dlbV92cmFtX3BpbihzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAq Z2JvLCB1bnNpZ25lZCBsb25nIHBsX2ZsYWcpCiB9CiBFWFBPUlRfU1lNQk9MKGRybV9nZW1fdnJh bV9waW4pOwogCisvKioKKyAqIGRybV9nZW1fdnJhbV9waW5fcmVzZXJ2ZWQoKSAtIFBpbnMgYSBH RU0gVlJBTSBvYmplY3QgaW4gYSByZWdpb24uCisgKiBAZ2JvOgl0aGUgR0VNIFZSQU0gb2JqZWN0 CisgKiBAcGxfZmxhZzoJYSBiaXRtYXNrIG9mIHBvc3NpYmxlIG1lbW9yeSByZWdpb25zCisgKgor ICogUGlubmluZyBhIGJ1ZmZlciBvYmplY3QgZW5zdXJlcyB0aGF0IGl0IGlzIG5vdCBldmljdGVk IGZyb20KKyAqIGEgbWVtb3J5IHJlZ2lvbi4gQSBwaW5uZWQgYnVmZmVyIG9iamVjdCBoYXMgdG8g YmUgdW5waW5uZWQgYmVmb3JlCisgKiBpdCBjYW4gYmUgcGlubmVkIHRvIGFub3RoZXIgcmVnaW9u LgorICoKKyAqIFRoaXMgZnVuY3Rpb24gcGlucyBhIEdFTSBWUkFNIG9iamVjdCB0aGF0IGhhcyBh bHJlYWR5IGJlZW4KKyAqIHJlc2VydmVkLiBVc2UgZHJtX2dlbV92cmFtX3BpbigpIGlmIHBvc3Np YmxlLgorICoKKyAqIFJldHVybnM6CisgKiAwIG9uIHN1Y2Nlc3MsIG9yCisgKiBhIG5lZ2F0aXZl IGVycm9yIGNvZGUgb3RoZXJ3aXNlLgorICovCitpbnQgZHJtX2dlbV92cmFtX3Bpbl9yZXNlcnZl ZChzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAqZ2JvLAorCQkJICAgICAgdW5zaWduZWQgbG9u ZyBwbF9mbGFnKQoreworCWludCBpLCByZXQ7CisJc3RydWN0IHR0bV9vcGVyYXRpb25fY3R4IGN0 eCA9IHsgZmFsc2UsIGZhbHNlIH07CisKKwlpZiAoZ2JvLT5waW5fY291bnQpIHsKKwkJKytnYm8t PnBpbl9jb3VudDsKKwkJcmV0dXJuIDA7CisJfQorCisJZHJtX2dlbV92cmFtX3BsYWNlbWVudChn Ym8sIHBsX2ZsYWcpOworCWZvciAoaSA9IDA7IGkgPCBnYm8tPnBsYWNlbWVudC5udW1fcGxhY2Vt ZW50OyArK2kpCisJCWdiby0+cGxhY2VtZW50c1tpXS5mbGFncyB8PSBUVE1fUExfRkxBR19OT19F VklDVDsKKworCXJldCA9IHR0bV9ib192YWxpZGF0ZSgmZ2JvLT5ibywgJmdiby0+cGxhY2VtZW50 LCAmY3R4KTsKKwlpZiAocmV0IDwgMCkKKwkJcmV0dXJuIHJldDsKKworCWdiby0+cGluX2NvdW50 ID0gMTsKKworCXJldHVybiAwOworfQorRVhQT1JUX1NZTUJPTChkcm1fZ2VtX3ZyYW1fcGluX3Jl c2VydmVkKTsKKwogLyoqCiAgKiBkcm1fZ2VtX3ZyYW1fdW5waW4oKSAtIFVucGlucyBhIEdFTSBW UkFNIG9iamVjdAogICogQGdibzoJdGhlIEdFTSBWUkFNIG9iamVjdApAQCAtMjg1LDYgKzMyNiw0 MCBAQCBpbnQgZHJtX2dlbV92cmFtX3VucGluKHN0cnVjdCBkcm1fZ2VtX3ZyYW1fb2JqZWN0ICpn Ym8pCiB9CiBFWFBPUlRfU1lNQk9MKGRybV9nZW1fdnJhbV91bnBpbik7CiAKKy8qKgorICogZHJt X2dlbV92cmFtX3VucGluX3Jlc2VydmVkKCkgLSBVbnBpbnMgYSBHRU0gVlJBTSBvYmplY3QKKyAq IEBnYm86CXRoZSBHRU0gVlJBTSBvYmplY3QKKyAqCisgKiBUaGlzIGZ1bmN0aW9uIHVucGlucyBh IEdFTSBWUkFNIG9iamVjdCB0aGF0IGhhcyBhbHJlYWR5IGJlZW4KKyAqIHJlc2VydmVkLiBVc2Ug ZHJtX2dlbV92cmFtX3VucGluKCkgaWYgcG9zc2libGUuCisgKgorICogUmV0dXJuczoKKyAqIDAg b24gc3VjY2Vzcywgb3IKKyAqIGEgbmVnYXRpdmUgZXJyb3IgY29kZSBvdGhlcndpc2UuCisgKi8K K2ludCBkcm1fZ2VtX3ZyYW1fdW5waW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9nZW1fdnJhbV9vYmpl Y3QgKmdibykKK3sKKwlpbnQgaSwgcmV0OworCXN0cnVjdCB0dG1fb3BlcmF0aW9uX2N0eCBjdHgg PSB7IGZhbHNlLCBmYWxzZSB9OworCisJaWYgKFdBUk5fT05fT05DRSghZ2JvLT5waW5fY291bnQp KQorCQlyZXR1cm4gMDsKKworCS0tZ2JvLT5waW5fY291bnQ7CisJaWYgKGdiby0+cGluX2NvdW50 KQorCQlyZXR1cm4gMDsKKworCWZvciAoaSA9IDA7IGkgPCBnYm8tPnBsYWNlbWVudC5udW1fcGxh Y2VtZW50IDsgKytpKQorCQlnYm8tPnBsYWNlbWVudHNbaV0uZmxhZ3MgJj0gflRUTV9QTF9GTEFH X05PX0VWSUNUOworCisJcmV0ID0gdHRtX2JvX3ZhbGlkYXRlKCZnYm8tPmJvLCAmZ2JvLT5wbGFj ZW1lbnQsICZjdHgpOworCWlmIChyZXQgPCAwKQorCQlyZXR1cm4gcmV0OworCisJcmV0dXJuIDA7 Cit9CitFWFBPUlRfU1lNQk9MKGRybV9nZW1fdnJhbV91bnBpbl9yZXNlcnZlZCk7CisKIC8qKgog ICogZHJtX2dlbV92cmFtX3B1c2hfdG9fc3lzdGVtKCkgLSBcCiAJVW5waW5zIGEgR0VNIFZSQU0g b2JqZWN0IGFuZCBtb3ZlcyBpdCB0byBzeXN0ZW0gbWVtb3J5CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2N1cnNvci5jIGIvZHJpdmVycy9ncHUvZHJtL21nYWcy MDAvbWdhZzIwMF9jdXJzb3IuYwppbmRleCA2YzFhOWQ3MjRkODUuLjFjNGZjODUzMTVhMCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9jdXJzb3IuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2N1cnNvci5jCkBAIC0yMyw5ICsyMyw5IEBA IHN0YXRpYyB2b2lkIG1nYV9oaWRlX2N1cnNvcihzdHJ1Y3QgbWdhX2RldmljZSAqbWRldikKIAlX UkVHOChNR0FfQ1VSUE9TWEwsIDApOwogCVdSRUc4KE1HQV9DVVJQT1NYSCwgMCk7CiAJaWYgKG1k ZXYtPmN1cnNvci5waXhlbHNfMS0+cGluX2NvdW50KQotCQlkcm1fZ2VtX3ZyYW1fdW5waW4obWRl di0+Y3Vyc29yLnBpeGVsc18xKTsKKwkJZHJtX2dlbV92cmFtX3VucGluX3Jlc2VydmVkKG1kZXYt PmN1cnNvci5waXhlbHNfMSk7CiAJaWYgKG1kZXYtPmN1cnNvci5waXhlbHNfMi0+cGluX2NvdW50 KQotCQlkcm1fZ2VtX3ZyYW1fdW5waW4obWRldi0+Y3Vyc29yLnBpeGVsc18yKTsKKwkJZHJtX2dl bV92cmFtX3VucGluX3Jlc2VydmVkKG1kZXYtPmN1cnNvci5waXhlbHNfMik7CiB9CiAKIGludCBt Z2FfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKQEAgLTk2LDI2ICs5Niwy OCBAQCBpbnQgbWdhX2NydGNfY3Vyc29yX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAKIAkv KiBNb3ZlIGN1cnNvciBidWZmZXJzIGludG8gVlJBTSBpZiB0aGV5IGFyZW4ndCBhbHJlYWR5ICov CiAJaWYgKCFwaXhlbHNfMS0+cGluX2NvdW50KSB7Ci0JCXJldCA9IGRybV9nZW1fdnJhbV9waW4o cGl4ZWxzXzEsIERSTV9HRU1fVlJBTV9QTF9GTEFHX1ZSQU0pOworCQlyZXQgPSBkcm1fZ2VtX3Zy YW1fcGluX3Jlc2VydmVkKHBpeGVsc18xLAorCQkJCQkJRFJNX0dFTV9WUkFNX1BMX0ZMQUdfVlJB TSk7CiAJCWlmIChyZXQpCiAJCQlnb3RvIG91dDE7CiAJCWdwdV9hZGRyID0gZHJtX2dlbV92cmFt X29mZnNldChwaXhlbHNfMSk7CiAJCWlmIChncHVfYWRkciA8IDApIHsKLQkJCWRybV9nZW1fdnJh bV91bnBpbihwaXhlbHNfMSk7CisJCQlkcm1fZ2VtX3ZyYW1fdW5waW5fcmVzZXJ2ZWQocGl4ZWxz XzEpOwogCQkJZ290byBvdXQxOwogCQl9CiAJCW1kZXYtPmN1cnNvci5waXhlbHNfMV9ncHVfYWRk ciA9IGdwdV9hZGRyOwogCX0KIAlpZiAoIXBpeGVsc18yLT5waW5fY291bnQpIHsKLQkJcmV0ID0g ZHJtX2dlbV92cmFtX3BpbihwaXhlbHNfMiwgRFJNX0dFTV9WUkFNX1BMX0ZMQUdfVlJBTSk7CisJ CXJldCA9IGRybV9nZW1fdnJhbV9waW5fcmVzZXJ2ZWQocGl4ZWxzXzIsCisJCQkJCQlEUk1fR0VN X1ZSQU1fUExfRkxBR19WUkFNKTsKIAkJaWYgKHJldCkgewotCQkJZHJtX2dlbV92cmFtX3VucGlu KHBpeGVsc18xKTsKKwkJCWRybV9nZW1fdnJhbV91bnBpbl9yZXNlcnZlZChwaXhlbHNfMSk7CiAJ CQlnb3RvIG91dDE7CiAJCX0KIAkJZ3B1X2FkZHIgPSBkcm1fZ2VtX3ZyYW1fb2Zmc2V0KHBpeGVs c18yKTsKIAkJaWYgKGdwdV9hZGRyIDwgMCkgewotCQkJZHJtX2dlbV92cmFtX3VucGluKHBpeGVs c18xKTsKLQkJCWRybV9nZW1fdnJhbV91bnBpbihwaXhlbHNfMik7CisJCQlkcm1fZ2VtX3ZyYW1f dW5waW5fcmVzZXJ2ZWQocGl4ZWxzXzEpOworCQkJZHJtX2dlbV92cmFtX3VucGluX3Jlc2VydmVk KHBpeGVsc18yKTsKIAkJCWdvdG8gb3V0MTsKIAkJfQogCQltZGV2LT5jdXJzb3IucGl4ZWxzXzJf Z3B1X2FkZHIgPSBncHVfYWRkcjsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9nZW1fdnJh bV9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuaAppbmRleCBiMDU2 ZjE4OWJhNjIuLmZmMWE4MTc2MTU0MyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2dlbV92 cmFtX2hlbHBlci5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuaApAQCAt ODIsNyArODIsMTAgQEAgdm9pZCBkcm1fZ2VtX3ZyYW1fdW5yZXNlcnZlKHN0cnVjdCBkcm1fZ2Vt X3ZyYW1fb2JqZWN0ICpnYm8pOwogdTY0IGRybV9nZW1fdnJhbV9tbWFwX29mZnNldChzdHJ1Y3Qg ZHJtX2dlbV92cmFtX29iamVjdCAqZ2JvKTsKIHM2NCBkcm1fZ2VtX3ZyYW1fb2Zmc2V0KHN0cnVj dCBkcm1fZ2VtX3ZyYW1fb2JqZWN0ICpnYm8pOwogaW50IGRybV9nZW1fdnJhbV9waW4oc3RydWN0 IGRybV9nZW1fdnJhbV9vYmplY3QgKmdibywgdW5zaWduZWQgbG9uZyBwbF9mbGFnKTsKK2ludCBk cm1fZ2VtX3ZyYW1fcGluX3Jlc2VydmVkKHN0cnVjdCBkcm1fZ2VtX3ZyYW1fb2JqZWN0ICpnYm8s CisJCQkgICAgICB1bnNpZ25lZCBsb25nIHBsX2ZsYWcpOwogaW50IGRybV9nZW1fdnJhbV91bnBp bihzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAqZ2JvKTsKK2ludCBkcm1fZ2VtX3ZyYW1fdW5w aW5fcmVzZXJ2ZWQoc3RydWN0IGRybV9nZW1fdnJhbV9vYmplY3QgKmdibyk7CiBpbnQgZHJtX2dl bV92cmFtX3B1c2hfdG9fc3lzdGVtKHN0cnVjdCBkcm1fZ2VtX3ZyYW1fb2JqZWN0ICpnYm8pOwog dm9pZCAqZHJtX2dlbV92cmFtX2ttYXBfYXQoc3RydWN0IGRybV9nZW1fdnJhbV9vYmplY3QgKmdi bywgYm9vbCBtYXAsCiAJCQkgICBib29sICppc19pb21lbSwgc3RydWN0IHR0bV9ib19rbWFwX29i aiAqa21hcCk7Ci0tIAoyLjIxLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbA==