From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: [PATCH 2/9] drm/tegra: gem: Properly pin imported buffers Date: Thu, 28 Nov 2019 16:37:34 +0100 Message-ID: <20191128153741.2380419-3-thierry.reding@gmail.com> References: <20191128153741.2380419-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20191128153741.2380419-1-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thierry Reding Cc: linux-tegra@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: linux-tegra@vger.kernel.org RnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KCkJ1ZmZlcnMgdGhhdCBh cmUgaW1wb3J0ZWQgZnJvbSBhIERNQS1CVUYgZG9uJ3QgaGF2ZSBwYWdlcyBhbGxvY2F0ZWQgd2l0 aAp0aGVtLiBBdCB0aGUgc2FtZSB0aW1lIGFuIFNHIHRhYmxlIGZvciB0aGVtIGNhbid0IGJlIGRl cml2ZWQgdXNpbmcgdGhlCkRNQSBBUEkgaGVscGVycyBiZWNhdXNlIHRoZSBuZWNlc3NhcnkgaW5m b3JtYXRpb24gZG9lc24ndCBleGlzdC4gSG93ZXZlcgp0aGVyZSdzIGFscmVhZHkgYW4gU0cgdGFi bGUgdGhhdCB3YXMgY3JlYXRlZCBkdXJpbmcgaW1wb3J0LCBzbyB0aGlzIGNhbgpzaW1wbHkgYmUg ZHVwbGljYXRlZC4KClNpZ25lZC1vZmYtYnk6IFRoaWVycnkgUmVkaW5nIDx0cmVkaW5nQG52aWRp YS5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2dlbS5jIHwgNDMgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDQzIGluc2VydGlvbnMo KykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZ2VtLmMgYi9kcml2ZXJzL2dw dS9kcm0vdGVncmEvZ2VtLmMKaW5kZXggNzQ2ZGFlMzJjNDg0Li42ZGZhZDU2ZWVlMmIgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v dGVncmEvZ2VtLmMKQEAgLTI3LDYgKzI3LDI5IEBAIHN0YXRpYyB2b2lkIHRlZ3JhX2JvX3B1dChz dHJ1Y3QgaG9zdDF4X2JvICpibykKIAlkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQoJm9iai0+ Z2VtKTsKIH0KIAorLyogWFhYIG1vdmUgdGhpcyBpbnRvIGxpYi9zY2F0dGVybGlzdC5jPyAqLwor c3RhdGljIGludCBzZ19hbGxvY190YWJsZV9mcm9tX3NnKHN0cnVjdCBzZ190YWJsZSAqc2d0LCBz dHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnLAorCQkJCSAgdW5zaWduZWQgaW50IG5lbnRzLCBnZnBfdCBn ZnBfbWFzaykKK3sKKwlzdHJ1Y3Qgc2NhdHRlcmxpc3QgKmRzdDsKKwl1bnNpZ25lZCBpbnQgaTsK KwlpbnQgZXJyOworCisJZXJyID0gc2dfYWxsb2NfdGFibGUoc2d0LCBuZW50cywgZ2ZwX21hc2sp OworCWlmIChlcnIgPCAwKQorCQlyZXR1cm4gZXJyOworCisJZHN0ID0gc2d0LT5zZ2w7CisKKwlm b3IgKGkgPSAwOyBpIDwgbmVudHM7IGkrKykgeworCQlzZ19zZXRfcGFnZShkc3QsIHNnX3BhZ2Uo c2cpLCBzZy0+bGVuZ3RoLCAwKTsKKwkJZHN0ID0gc2dfbmV4dChkc3QpOworCQlzZyA9IHNnX25l eHQoc2cpOworCX0KKworCXJldHVybiAwOworfQorCiBzdGF0aWMgc3RydWN0IHNnX3RhYmxlICp0 ZWdyYV9ib19waW4oc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgaG9zdDF4X2JvICpibywKIAkJ CQkgICAgIGRtYV9hZGRyX3QgKnBoeXMpCiB7CkBAIC01MiwxMSArNzUsMzEgQEAgc3RhdGljIHN0 cnVjdCBzZ190YWJsZSAqdGVncmFfYm9fcGluKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGhv c3QxeF9ibyAqYm8sCiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwogCiAJaWYgKG9iai0+cGFn ZXMpIHsKKwkJLyoKKwkJICogSWYgdGhlIGJ1ZmZlciBvYmplY3Qgd2FzIGFsbG9jYXRlZCBmcm9t IHRoZSBleHBsaWNpdCBJT01NVQorCQkgKiBBUEkgY29kZSBwYXRocywgY29uc3RydWN0IGFuIFNH IHRhYmxlIGZyb20gdGhlIHBhZ2VzLgorCQkgKi8KIAkJZXJyID0gc2dfYWxsb2NfdGFibGVfZnJv bV9wYWdlcyhzZ3QsIG9iai0+cGFnZXMsIG9iai0+bnVtX3BhZ2VzLAogCQkJCQkJMCwgb2JqLT5n ZW0uc2l6ZSwgR0ZQX0tFUk5FTCk7CiAJCWlmIChlcnIgPCAwKQogCQkJZ290byBmcmVlOworCX0g ZWxzZSBpZiAob2JqLT5zZ3QpIHsKKwkJLyoKKwkJICogSWYgdGhlIGJ1ZmZlciBvYmplY3QgYWxy ZWFkeSBoYXMgYW4gU0cgdGFibGUgYnV0IG5vIHBhZ2VzCisJCSAqIHdlcmUgYWxsb2NhdGVkIGZv ciBpdCwgaXQgbWVhbnMgdGhlIGJ1ZmZlciB3YXMgaW1wb3J0ZWQgYW5kCisJCSAqIHRoZSBTRyB0 YWJsZSBuZWVkcyB0byBiZSBjb3BpZWQgdG8gYXZvaWQgb3ZlcndyaXRpbmcgYW55CisJCSAqIG90 aGVyIHBvdGVudGlhbCB1c2VycyBvZiB0aGUgb3JpZ2luYWwgU0cgdGFibGUuCisJCSAqLworCQll cnIgPSBzZ19hbGxvY190YWJsZV9mcm9tX3NnKHNndCwgb2JqLT5zZ3QtPnNnbCwgb2JqLT5zZ3Qt Pm5lbnRzLAorCQkJCQkgICAgIEdGUF9LRVJORUwpOworCQlpZiAoZXJyIDwgMCkKKwkJCWdvdG8g ZnJlZTsKIAl9IGVsc2UgeworCQkvKgorCQkgKiBJZiB0aGUgYnVmZmVyIG9iamVjdCBoYWQgbm8g cGFnZXMgYWxsb2NhdGVkIGFuZCBpZiBpdCB3YXMKKwkJICogbm90IGltcG9ydGVkLCBpdCBoYWQg dG8gYmUgYWxsb2NhdGVkIHdpdGggdGhlIERNQSBBUEksIHNvCisJCSAqIHRoZSBETUEgQVBJIGhl bHBlciBjYW4gYmUgdXNlZC4KKwkJICovCiAJCWVyciA9IGRtYV9nZXRfc2d0YWJsZShkZXYsIHNn dCwgb2JqLT52YWRkciwgb2JqLT5pb3ZhLAogCQkJCSAgICAgIG9iai0+Z2VtLnNpemUpOwogCQlp ZiAoZXJyIDwgMCkKLS0gCjIuMjMuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vZHJpLWRldmVs