From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Zimmermann Subject: [PATCH v3 3/3] drm/vram: Implement lazy unmapping for GEM VRAM buffers Date: Fri, 6 Sep 2019 10:52:14 +0200 Message-ID: <20190906085214.11677-4-tzimmermann@suse.de> References: <20190906085214.11677-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 ADD9F6E1F3 for ; Fri, 6 Sep 2019 08:52:19 +0000 (UTC) In-Reply-To: <20190906085214.11677-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, noralf@tronnes.org, airlied@linux.ie, rong.a.chen@intel.com, feng.tang@intel.com, ying.huang@intel.com, sean@poorly.run, maxime.ripard@bootlin.com, maarten.lankhorst@linux.intel.com, dave@stgolabs.net, kraxel@redhat.com Cc: Thomas Zimmermann , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJlcXVlbnQgbWFwcGluZyBhbmQgdW5tYXBwaW5nIGEgYnVmZmVyIG9iamVjdCBhZGRzIG92ZXJo ZWFkIGZvcgptb2RpZnlpbmcgdGhlIHBhZ2UgdGFibGUgYW5kIGNyZWF0ZXMgZGVidWcgb3V0cHV0 LiBVbm1hcHBpbmcgYSBidWZmZXIKaXMgb25seSByZXF1aXJlZCB3aGVuIHRoZSBtZW1vcnkgbWFu YWdlciBldmljdHMgdGhlIGJ1ZmZlciBmcm9tIGl0cwpjdXJyZW50IGxvY2F0aW9uLgoKU2lnbmVk LW9mZi1ieTogVGhvbWFzIFppbW1lcm1hbm4gPHR6aW1tZXJtYW5uQHN1c2UuZGU+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2RybV9nZW1fdnJhbV9oZWxwZXIuYyB8IDQ4ICsrKysrKysrKysrKysrKysr KysrKystLS0tLQogaW5jbHVkZS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5oICAgICB8ICA0ICsr KwogMiBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5jCmluZGV4IDZjNzkxMjA5Mjg3Ni4uOTczYzcw MzUzNGQ0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmMKQEAgLTM1MiwxOCAr MzUyLDE3IEBAIEVYUE9SVF9TWU1CT0woZHJtX2dlbV92cmFtX2ttYXApOwogCiBzdGF0aWMgdm9p ZCBkcm1fZ2VtX3ZyYW1fa3VubWFwX2xvY2tlZChzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdCAq Z2JvKQogewotCXN0cnVjdCB0dG1fYm9fa21hcF9vYmogKmttYXAgPSAmZ2JvLT5rbWFwOwotCiAJ aWYgKFdBUk5fT05fT05DRSghZ2JvLT5rbWFwX3VzZV9jb3VudCkpCiAJCXJldHVybjsKIAlpZiAo LS1nYm8tPmttYXBfdXNlX2NvdW50ID4gMCkKIAkJcmV0dXJuOwogCi0JaWYgKCFrbWFwLT52aXJ0 dWFsKQotCQlyZXR1cm47Ci0KLQl0dG1fYm9fa3VubWFwKGttYXApOwotCWttYXAtPnZpcnR1YWwg PSBOVUxMOworCS8qCisJICogUGVybWFuZW50bHkgbWFwcGluZyBhbmQgdW5tYXBwaW5nIGJ1ZmZl cnMgYWRkcyBvdmVyaGVhZCBmcm9tCisJICogdXBkYXRpbmcgdGhlIHBhZ2UgdGFibGVzIGFuZCBj cmVhdGVzIGRlYnVnZ2luZyBvdXRwdXQuIFRoZXJlZm9yZSwKKwkgKiB3ZSBkZWxheSB0aGUgYWN0 dWFsIHVubWFwIG9wZXJhdGlvbiB1bnRpbCB0aGUgQk8gZ2V0cyBldmljdGVkCisJICogZnJvbSBt ZW1vcnkuIFNlZSBkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVyX21vdmVfbm90aWZ5KCkuCisJICovCiB9 CiAKIC8qKgpAQCAtNDg5LDYgKzQ4OCwzOCBAQCBpbnQgZHJtX2dlbV92cmFtX2JvX2RyaXZlcl92 ZXJpZnlfYWNjZXNzKHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCiB9CiBFWFBPUlRfU1lN Qk9MKGRybV9nZW1fdnJhbV9ib19kcml2ZXJfdmVyaWZ5X2FjY2Vzcyk7CiAKKy8qKgorICogZHJt X2dlbV92cmFtX2JvX2RyaXZlcl9tb3ZlX25vdGlmeSgpIC0KKyAqCUltcGxlbWVudHMgJnN0cnVj dCB0dG1fYm9fZHJpdmVyLm1vdmVfbm90aWZ5CisgKiBAYm86CQlUVE0gYnVmZmVyIG9iamVjdC4g UmVmZXJzIHRvICZzdHJ1Y3QgZHJtX2dlbV92cmFtX29iamVjdC5ibworICogQGV2aWN0OglUcnVl LCBpZiB0aGUgQk8gaXMgYmVpbmcgZXZpY3RlZCBmcm9tIGdyYXBoaWNzIG1lbW9yeTsKKyAqCQlm YWxzZSBvdGhlcndpc2UuCisgKiBAbmV3X21lbToJTmV3IG1lbW9yeSByZWdpb24sIG9yIE5VTEwg b24gZGVzdHJ1Y3Rpb24KKyAqLwordm9pZCBkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVyX21vdmVfbm90 aWZ5KHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8sCisJCQkJCWJvb2wgZXZpY3QsCisJCQkJ CXN0cnVjdCB0dG1fbWVtX3JlZyAqbmV3X21lbSkKK3sKKwlzdHJ1Y3QgZHJtX2dlbV92cmFtX29i amVjdCAqZ2JvOworCXN0cnVjdCB0dG1fYm9fa21hcF9vYmogKmttYXA7CisKKwkvKiBUVE0gbWF5 IHBhc3MgQk9zIHRoYXQgYXJlIG5vdCBHRU0gVlJBTSBCT3MuICovCisJaWYgKCFkcm1faXNfZ2Vt X3ZyYW0oYm8pKQorCQlyZXR1cm47CisKKwlnYm8gPSBkcm1fZ2VtX3ZyYW1fb2ZfYm8oYm8pOwor CWttYXAgPSAmZ2JvLT5rbWFwOworCisJaWYgKFdBUk5fT05fT05DRShnYm8tPmttYXBfdXNlX2Nv dW50KSkKKwkJcmV0dXJuOworCisJaWYgKCFrbWFwLT52aXJ0dWFsKQorCQlyZXR1cm47CisJdHRt X2JvX2t1bm1hcChrbWFwKTsKKwlrbWFwLT52aXJ0dWFsID0gTlVMTDsKK30KK0VYUE9SVF9TWU1C T0woZHJtX2dlbV92cmFtX2JvX2RyaXZlcl9tb3ZlX25vdGlmeSk7CisKIC8qCiAgKiBkcm1fZ2Vt X3ZyYW1fbW1fZnVuY3MgLSBGdW5jdGlvbnMgZm9yICZzdHJ1Y3QgZHJtX3ZyYW1fbW0KICAqCkBA IC00OTgsNyArNTI5LDggQEAgRVhQT1JUX1NZTUJPTChkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVyX3Zl cmlmeV9hY2Nlc3MpOwogICovCiBjb25zdCBzdHJ1Y3QgZHJtX3ZyYW1fbW1fZnVuY3MgZHJtX2dl bV92cmFtX21tX2Z1bmNzID0gewogCS5ldmljdF9mbGFncyA9IGRybV9nZW1fdnJhbV9ib19kcml2 ZXJfZXZpY3RfZmxhZ3MsCi0JLnZlcmlmeV9hY2Nlc3MgPSBkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVy X3ZlcmlmeV9hY2Nlc3MKKwkudmVyaWZ5X2FjY2VzcyA9IGRybV9nZW1fdnJhbV9ib19kcml2ZXJf dmVyaWZ5X2FjY2VzcywKKwkubW92ZV9ub3RpZnkgPSBkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVyX21v dmVfbm90aWZ5LAogfTsKIEVYUE9SVF9TWU1CT0woZHJtX2dlbV92cmFtX21tX2Z1bmNzKTsKIApk aWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5oIGIvaW5jbHVkZS9k cm0vZHJtX2dlbV92cmFtX2hlbHBlci5oCmluZGV4IDhjMDhiYzg3Yjc4OC4uZTVlZjBlNGFiMmU0 IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZ2VtX3ZyYW1faGVscGVyLmgKKysrIGIvaW5j bHVkZS9kcm0vZHJtX2dlbV92cmFtX2hlbHBlci5oCkBAIC0xMTcsNiArMTE3LDEwIEBAIGludCBk cm1fZ2VtX3ZyYW1fZmlsbF9jcmVhdGVfZHVtYihzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiB2b2lk IGRybV9nZW1fdnJhbV9ib19kcml2ZXJfZXZpY3RfZmxhZ3Moc3RydWN0IHR0bV9idWZmZXJfb2Jq ZWN0ICpibywKIAkJCQkJc3RydWN0IHR0bV9wbGFjZW1lbnQgKnBsKTsKIAordm9pZCBkcm1fZ2Vt X3ZyYW1fYm9fZHJpdmVyX21vdmVfbm90aWZ5KHN0cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqYm8s CisJCQkJCWJvb2wgZXZpY3QsCisJCQkJCXN0cnVjdCB0dG1fbWVtX3JlZyAqbmV3X21lbSk7CisK IGludCBkcm1fZ2VtX3ZyYW1fYm9fZHJpdmVyX3ZlcmlmeV9hY2Nlc3Moc3RydWN0IHR0bV9idWZm ZXJfb2JqZWN0ICpibywKIAkJCQkJIHN0cnVjdCBmaWxlICpmaWxwKTsKIAotLSAKMi4yMy4wCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=