From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zhang, Jerry (Junwei)" Subject: Re: [PATCH 1/2] drm/amdgpu: return bo itself if userptr is cpu addr of bo (v3) Date: Tue, 31 Jul 2018 14:58:41 +0800 Message-ID: <5B6008A1.5050401@amd.com> References: <1532944950-28619-1-git-send-email-Jerry.Zhang@amd.com> <3d423f44-e47a-e70c-dfd9-80c1ff843e45@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <3d423f44-e47a-e70c-dfd9-80c1ff843e45-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: christian.koenig-5C7GfCeVMHo@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Chunming Zhou T24gMDcvMzAvMjAxOCAwNjo0NyBQTSwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPiBBbSAzMC4w Ny4yMDE4IHVtIDEyOjAyIHNjaHJpZWIgSnVud2VpIFpoYW5nOgo+PiBGcm9tOiBDaHVubWluZyBa aG91IDxEYXZpZDEuWmhvdUBhbWQuY29tPgo+Pgo+PiB2MjogZ2V0IG9yaWdpbmFsIGdlbSBoYW5k bGUgZnJvbSBnb2JqCj4+IHYzOiB1cGRhdGUgZmluZCBibyBkYXRhIHN0cnVjdHVyZSBhcyB1bmlv bihpbiwgb3V0KQo+PiAgICAgIHNpbXBseSBzb21lIGNvZGUgbG9naWMKPgo+IERvIHdlIG5vdyBo YXZlIGFuIG9wZW4gc291cmNlIHVzZXIgZm9yIHRoaXMsIHNvIHRoYXQgd2UgY2FuIHVwc3RyZWFt IGl0PyBPbmUgbW9yZSBwb2ludCBiZWxvdy4KPgo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBDaHVubWlu ZyBaaG91IDxEYXZpZDEuWmhvdUBhbWQuY29tPgo+PiBTaWduZWQtb2ZmLWJ5OiBKdW53ZWkgWmhh bmcgPEplcnJ5LlpoYW5nQGFtZC5jb20+ICh2MykKPj4gUmV2aWV3ZWQtYnk6IENocmlzdGlhbiBL w7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KPj4gUmV2aWV3ZWQtYnk6IEphbW15IFpo b3UgPEphbW15Llpob3VAYW1kLmNvbT4KPj4gLS0tCj4+ICAgZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1LmggICAgIHwgIDIgKysKPj4gICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfZ2VtLmMgfCA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPj4g ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMgfCAgMyArLQo+PiAgIGlu Y2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oICAgICAgICAgICB8IDIxICsrKysrKysrKysrCj4+ ICAgNCBmaWxlcyBjaGFuZ2VkLCA4OCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCj4+Cj4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaCBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+IGluZGV4IDRjZDIwZTcuLjQ2YzM3MGIg MTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4+IEBAIC0xMjEzLDYgKzEy MTMsOCBAQCBpbnQgYW1kZ3B1X2dlbV9pbmZvX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs IHZvaWQgKmRhdGEsCj4+ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApOwo+ PiAgIGludCBhbWRncHVfZ2VtX3VzZXJwdHJfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg dm9pZCAqZGF0YSwKPj4gICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApOwo+PiAr aW50IGFtZGdwdV9nZW1fZmluZF9ib19ieV9jcHVfbWFwcGluZ19pb2N0bChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB2b2lkICpkYXRhLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0 IGRybV9maWxlICpmaWxwKTsKPj4gICBpbnQgYW1kZ3B1X2dlbV9tbWFwX2lvY3RsKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4+ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJt X2ZpbGUgKmZpbHApOwo+PiAgIGludCBhbWRncHVfZ2VtX3dhaXRfaWRsZV9pb2N0bChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv YW1kZ3B1X2dlbS5jCj4+IGluZGV4IDcxNzkyZDguLmJhZTg0MTcgMTAwNjQ0Cj4+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZW0uYwo+PiArKysgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZ2VtLmMKPj4gQEAgLTI4OCw2ICsyODgsNjkgQEAgaW50 IGFtZGdwdV9nZW1fY3JlYXRlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRh dGEsCj4+ICAgICAgIHJldHVybiAwOwo+PiAgIH0KPj4gK3N0YXRpYyBpbnQgYW1kZ3B1X2dlbV9n ZXRfaGFuZGxlX2Zyb21fb2JqZWN0KHN0cnVjdCBkcm1fZmlsZSAqZmlscCwKPj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaikKPj4gK3sKPj4gKyAg ICBpbnQgaTsKPj4gKyAgICBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKnRtcDsKPj4gKwo+PiArICAg IHNwaW5fbG9jaygmZmlscC0+dGFibGVfbG9jayk7Cj4+ICsgICAgaWRyX2Zvcl9lYWNoX2VudHJ5 KCZmaWxwLT5vYmplY3RfaWRyLCB0bXAsIGkpIHsKPj4gKyAgICAgICAgaWYgKG9iaiA9PSB0bXAp IHsKPj4gKyAgICAgICAgICAgIGRybV9nZW1fb2JqZWN0X3JlZmVyZW5jZShvYmopOwo+PiArICAg ICAgICAgICAgc3Bpbl91bmxvY2soJmZpbHAtPnRhYmxlX2xvY2spOwo+PiArICAgICAgICAgICAg cmV0dXJuIGk7Cj4+ICsgICAgICAgIH0KPj4gKyAgICB9Cj4KPiBQbGVhc2UgZG91YmxlIGNoZWNr IGlmIHRoYXQgaXMgc3RpbGwgdXAgdG8gZGF0ZS4KCldlIG1heSBoYXZlIHRvIHJlcGxhY2UgZHJt X2dlbV9vYmplY3RfcmVmZXJlbmNlKCkgd2l0aCBkcm1fZ2VtX29iamVjdF9nZXQoKS4KCk9uIDJu ZCB0aG91Z2h0LCBkbyB3ZSByZWFsbHkgbmVlZCB0byBkbyByZWZlcmVuY2UgZXZlcnkgdGltZT8K aWYgVU1EIGZpbmQgdGhlIHNhbWUgZ2VtIG9iamVjdCBmb3IgMyB0aW1lcywgaXQgYWxzbyBuZWVk IHRvIGV4cGxpY2l0bHkgZnJlZShwdXQpIHRoYXQgb2JqZWN0IGZvciAzIHRpbWVzPwoKCj4KPiBJ IHRoaW5rIHdlIGNvdWxkIGFzIHdlbGwgdHJ5IHRvIHVzZSB0aGUgRE1BLWJ1ZiBoYW5kbGUgdHJl ZSBmb3IgdGhhdC4KCklmIHRoZSBibyBpcyBub3QgaW1wb3J0L2V4cG9ydCwgRE1BLWJ1ZiB3aWxs IGJlIE5VTEwgYWx3YXlzLgoKUmVnYXJkcywKSmVycnkKPgo+IENocmlzdGlhbi4KPgo+PiArICAg IHNwaW5fdW5sb2NrKCZmaWxwLT50YWJsZV9sb2NrKTsKPj4gKwo+PiArICAgIHJldHVybiAwOwo+ PiArfQo+PiArCj4+ICtpbnQgYW1kZ3B1X2dlbV9maW5kX2JvX2J5X2NwdV9tYXBwaW5nX2lvY3Rs KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4+ICsgICAgICAgICAgICAgICAg ICAgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbHApCj4+ICt7Cj4+ICsgICAgdW5pb24gZHJtX2Ft ZGdwdV9nZW1fZmluZF9ibyAqYXJncyA9IGRhdGE7Cj4+ICsgICAgc3RydWN0IGRybV9nZW1fb2Jq ZWN0ICpnb2JqOwo+PiArICAgIHN0cnVjdCBhbWRncHVfYm8gKmJvOwo+PiArICAgIHN0cnVjdCB0 dG1fYnVmZmVyX29iamVjdCAqdGJvOwo+PiArICAgIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1h Owo+PiArICAgIHVpbnQzMl90IGhhbmRsZTsKPj4gKyAgICBpbnQgcjsKPj4gKwo+PiArICAgIGlm IChvZmZzZXRfaW5fcGFnZShhcmdzLT5pbi5hZGRyIHwgYXJncy0+aW4uc2l6ZSkpCj4+ICsgICAg ICAgIHJldHVybiAtRUlOVkFMOwo+PiArCj4+ICsgICAgZG93bl9yZWFkKCZjdXJyZW50LT5tbS0+ bW1hcF9zZW0pOwo+PiArICAgIHZtYSA9IGZpbmRfdm1hKGN1cnJlbnQtPm1tLCBhcmdzLT5pbi5h ZGRyKTsKPj4gKyAgICBpZiAoIXZtYSB8fCB2bWEtPnZtX2ZpbGUgIT0gZmlscC0+ZmlscCB8fAo+ PiArICAgICAgICAoYXJncy0+aW4uc2l6ZSA+ICh2bWEtPnZtX2VuZCAtIGFyZ3MtPmluLmFkZHIp KSkgewo+PiArICAgICAgICBhcmdzLT5vdXQuaGFuZGxlID0gMDsKPj4gKyAgICAgICAgdXBfcmVh ZCgmY3VycmVudC0+bW0tPm1tYXBfc2VtKTsKPj4gKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4+ ICsgICAgfQo+PiArICAgIGFyZ3MtPm91dC5vZmZzZXQgPSBhcmdzLT5pbi5hZGRyIC0gdm1hLT52 bV9zdGFydDsKPj4gKwo+PiArICAgIHRibyA9IHZtYS0+dm1fcHJpdmF0ZV9kYXRhOwo+PiArICAg IGJvID0gY29udGFpbmVyX29mKHRibywgc3RydWN0IGFtZGdwdV9ibywgdGJvKTsKPj4gKyAgICBh bWRncHVfYm9fcmVmKGJvKTsKPj4gKyAgICBnb2JqID0gJmJvLT5nZW1fYmFzZTsKPj4gKwo+PiAr ICAgIGhhbmRsZSA9IGFtZGdwdV9nZW1fZ2V0X2hhbmRsZV9mcm9tX29iamVjdChmaWxwLCBnb2Jq KTsKPj4gKyAgICBpZiAoIWhhbmRsZSkgewo+PiArICAgICAgICByID0gZHJtX2dlbV9oYW5kbGVf Y3JlYXRlKGZpbHAsIGdvYmosICZoYW5kbGUpOwo+PiArICAgICAgICBpZiAocikgewo+PiArICAg ICAgICAgICAgRFJNX0VSUk9SKCJjcmVhdGUgZ2VtIGhhbmRsZSBmYWlsZWRcbiIpOwo+PiArICAg ICAgICAgICAgdXBfcmVhZCgmY3VycmVudC0+bW0tPm1tYXBfc2VtKTsKPj4gKyAgICAgICAgICAg IHJldHVybiByOwo+PiArICAgICAgICB9Cj4+ICsgICAgfQo+PiArICAgIGFyZ3MtPm91dC5oYW5k bGUgPSBoYW5kbGU7Cj4+ICsgICAgdXBfcmVhZCgmY3VycmVudC0+bW0tPm1tYXBfc2VtKTsKPj4g Kwo+PiArICAgIHJldHVybiAwOwo+PiArfQo+PiArCj4+ICAgaW50IGFtZGdwdV9nZW1fdXNlcnB0 cl9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+PiAgICAgICAgICAg ICAgICAgICAgc3RydWN0IGRybV9maWxlICpmaWxwKQo+PiAgIHsKPj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdV9rbXMuYwo+PiBpbmRleCA3OTU2ODQ4Li4xYmQyY2MxIDEwMDY0NAo+ PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfa21zLmMKPj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2ttcy5jCj4+IEBAIC0xMTAwLDcgKzEx MDAsOCBAQCB2b2lkIGFtZGdwdV9kaXNhYmxlX3ZibGFua19rbXMoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgdW5zaWduZWQgaW50IHBpcGUpCj4+ICAgICAgIERSTV9JT0NUTF9ERUZfRFJWKEFNREdQ VV9HRU1fVkEsIGFtZGdwdV9nZW1fdmFfaW9jdGwsIERSTV9BVVRIfERSTV9SRU5ERVJfQUxMT1cp LAo+PiAgICAgICBEUk1fSU9DVExfREVGX0RSVihBTURHUFVfR0VNX09QLCBhbWRncHVfZ2VtX29w X2lvY3RsLCBEUk1fQVVUSHxEUk1fUkVOREVSX0FMTE9XKSwKPj4gICAgICAgRFJNX0lPQ1RMX0RF Rl9EUlYoQU1ER1BVX0dFTV9VU0VSUFRSLCBhbWRncHVfZ2VtX3VzZXJwdHJfaW9jdGwsIERSTV9B VVRIfERSTV9SRU5ERVJfQUxMT1cpLAo+PiAtICAgIERSTV9JT0NUTF9ERUZfRFJWKEFNREdQVV9G UkVFU1lOQywgYW1kZ3B1X2Rpc3BsYXlfZnJlZXN5bmNfaW9jdGwsIERSTV9NQVNURVIpCj4+ICsg ICAgRFJNX0lPQ1RMX0RFRl9EUlYoQU1ER1BVX0ZSRUVTWU5DLCBhbWRncHVfZGlzcGxheV9mcmVl c3luY19pb2N0bCwgRFJNX01BU1RFUiksCj4+ICsgICAgRFJNX0lPQ1RMX0RFRl9EUlYoQU1ER1BV X0dFTV9GSU5EX0JPLCBhbWRncHVfZ2VtX2ZpbmRfYm9fYnlfY3B1X21hcHBpbmdfaW9jdGwsIERS TV9BVVRIfERSTV9SRU5ERVJfQUxMT1cpCj4+ICAgfTsKPj4gICBjb25zdCBpbnQgYW1kZ3B1X21h eF9rbXNfaW9jdGwgPSBBUlJBWV9TSVpFKGFtZGdwdV9pb2N0bHNfa21zKTsKPj4gZGlmZiAtLWdp dCBhL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9hbWRn cHVfZHJtLmgKPj4gaW5kZXggOTQ0NDRlZS4uMDAwYzQxNSAxMDA2NDQKPj4gLS0tIGEvaW5jbHVk ZS91YXBpL2RybS9hbWRncHVfZHJtLmgKPj4gKysrIGIvaW5jbHVkZS91YXBpL2RybS9hbWRncHVf ZHJtLmgKPj4gQEAgLTU0LDYgKzU0LDcgQEAKPj4gICAjZGVmaW5lIERSTV9BTURHUFVfVk0gICAg ICAgICAgICAweDEzCj4+ICAgI2RlZmluZSBEUk1fQU1ER1BVX0ZFTkNFX1RPX0hBTkRMRSAgICAw eDE0Cj4+ICAgI2RlZmluZSBEUk1fQU1ER1BVX1NDSEVEICAgICAgICAweDE1Cj4+ICsjZGVmaW5l IERSTV9BTURHUFVfR0VNX0ZJTkRfQk8gICAgICAgIDB4MTYKPj4gICAvKiBub3QgdXBzdHJlYW0g Ki8KPj4gICAjZGVmaW5lIERSTV9BTURHUFVfRlJFRVNZTkMgICAgICAgICAgICAweDVkCj4+IEBA IC03NCw2ICs3NSw3IEBACj4+ICAgI2RlZmluZSBEUk1fSU9DVExfQU1ER1BVX0ZFTkNFX1RPX0hB TkRMRSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0FNREdQVV9GRU5DRV9UT19IQU5E TEUsIHVuaW9uIGRybV9hbWRncHVfZmVuY2VfdG9faGFuZGxlKQo+PiAgICNkZWZpbmUgRFJNX0lP Q1RMX0FNREdQVV9TQ0hFRCAgICAgICAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0FN REdQVV9TQ0hFRCwgdW5pb24gZHJtX2FtZGdwdV9zY2hlZCkKPj4gICAjZGVmaW5lIERSTV9JT0NU TF9BTURHUFVfRlJFRVNZTkMgICAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9BTURH UFVfRlJFRVNZTkMsIHN0cnVjdCBkcm1fYW1kZ3B1X2ZyZWVzeW5jKQo+PiArI2RlZmluZSBEUk1f SU9DVExfQU1ER1BVX0dFTV9GSU5EX0JPICAgIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBE Uk1fQU1ER1BVX0dFTV9GSU5EX0JPLCB1bmlvbiBkcm1fYW1kZ3B1X2dlbV9maW5kX2JvKQo+PiAg IC8qKgo+PiAgICAqIERPQzogbWVtb3J5IGRvbWFpbnMKPj4gQEAgLTM5Miw2ICszOTQsMjUgQEAg c3RydWN0IGRybV9hbWRncHVfZ2VtX3dhaXRfaWRsZV9vdXQgewo+PiAgICAgICBzdHJ1Y3QgZHJt X2FtZGdwdV9nZW1fd2FpdF9pZGxlX291dCBvdXQ7Cj4+ICAgfTsKPj4gK3N0cnVjdCBkcm1fYW1k Z3B1X2dlbV9maW5kX2JvX2luIHsKPj4gKyAgICAvKiBDUFUgYWRkcmVzcyAqLwo+PiArICAgIF9f dTY0ICAgICAgICAgICAgYWRkcjsKPj4gKyAgICAvKiBtZW1vcnkgc2l6ZSBmcm9tIENQVSBhZGRy ZXNzICovCj4+ICsgICAgX191NjQgICAgICAgICAgICBzaXplOwo+PiArfTsKPj4gKwo+PiArc3Ry dWN0IGRybV9hbWRncHVfZ2VtX2ZpbmRfYm9fb3V0IHsKPj4gKyAgICAvKiBvZmZzZXQgaW4gYm8g Ki8KPj4gKyAgICBfX3U2NCAgICAgICAgICAgIG9mZnNldDsKPj4gKyAgICAvKiByZXN1bHRpbmcg R0VNIGhhbmRsZSAqLwo+PiArICAgIF9fdTMyICAgICAgICAgICAgaGFuZGxlOwo+PiArfTsKPj4g Kwo+PiArdW5pb24gZHJtX2FtZGdwdV9nZW1fZmluZF9ibyB7Cj4+ICsgICAgc3RydWN0IGRybV9h bWRncHVfZ2VtX2ZpbmRfYm9faW4gaW47Cj4+ICsgICAgc3RydWN0IGRybV9hbWRncHVfZ2VtX2Zp bmRfYm9fb3V0IG91dDsKPj4gK307Cj4+ICsKPj4gICBzdHJ1Y3QgZHJtX2FtZGdwdV93YWl0X2Nz X2luIHsKPj4gICAgICAgLyogQ29tbWFuZCBzdWJtaXNzaW9uIGhhbmRsZQo+PiAgICAgICAgICAg ICogaGFuZGxlIGVxdWFscyAwIG1lYW5zIG5vbmUgdG8gd2FpdCBmb3IKPgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK