From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Airlie Subject: [PATCH 5/5] amdgpu: use drm sync objects for shared semaphores (v5) Date: Mon, 29 May 2017 17:30:33 +1000 Message-ID: <20170529073033.10903-6-airlied@gmail.com> References: <20170529073033.10903-1-airlied@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170529073033.10903-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KClRoaXMgY3JlYXRlcyBhIG5l dyBjb21tYW5kIHN1Ym1pc3Npb24gY2h1bmsgZm9yIGFtZGdwdQp0byBhZGQgaW4gYW5kIG91dCBz eW5jIG9iamVjdHMgYXJvdW5kIHRoZSBzdWJtaXNzaW9uLgoKU3luYyBvYmplY3RzIGFyZSBtYW5h Z2VkIHZpYSB0aGUgZHJtIHN5bmNvYmogaW9jdGxzLgoKVGhlIGNvbW1hbmQgc3VibWlzc2lvbiBp bnRlcmZhY2UgaXMgZW5oYW5jZWQgd2l0aCB0d28gbmV3CmNodW5rcywgb25lIGZvciBzeW5jb2Jq IHByZSBzdWJtaXNzaW9uIGRlcGVuZGVuY2llcywKYW5kIG9uZSBmb3IgcG9zdCBzdWJtaXNzaW9u IHN5bmMgb2JqIHNpZ25hbGxpbmcsCmFuZCBqdXN0IHRha2VzIGEgbGlzdCBvZiBoYW5kbGVzIGZv ciBlYWNoLgoKVGhpcyBpcyBiYXNlZCBvbiB3b3JrIG9yaWdpbmFsbHkgZG9uZSBieSBEYXZpZCBa aG91IGF0IEFNRCwKd2l0aCBpbnB1dCBmcm9tIENocmlzdGlhbiBLb25pZyBvbiB3aGF0IHRoaW5n cyBzaG91bGQgbG9vayBsaWtlLgoKSW4gdGhlb3J5IFZrRmVuY2VzIGNvdWxkIGJlIGJhY2tlZCB3 aXRoIHN5bmMgb2JqZWN0cyBhbmQKanVzdCBnZXQgcGFzc2VkIGludG8gdGhlIGNzIGFzIHN5bmNv YmogaGFuZGxlcyBhcyB3ZWxsLgoKTk9URTogdGhpcyBpbnRlcmZhY2UgYWRkaXRpb24gbmVlZHMg YSB2ZXJzaW9uIGJ1bXAgdG8gZXhwb3NlCml0IHRvIHVzZXJzcGFjZS4KClRPRE86IHVwZGF0ZSB0 byBkZXBfc3luYyB3aGVuIHJlYmFzaW5nIG9udG8gYW1kZ3B1IG1hc3Rlci4KKHdpdGggdGhpcyAt IHItYiBmcm9tIENocmlzdGlhbikKCnYxLjE6IGtlZXAgZmlsZSByZWZlcmVuY2Ugb24gaW1wb3J0 Lgp2MjogbW92ZSB0byB1c2luZyBzeW5jb2Jqcwp2Mi4xOiBjaGFuZ2Ugc29tZSBBUElzIHRvIGp1 c3QgdXNlIHAgcG9pbnRlci4KdjM6IG1ha2UgbW9yZSByb2J1c3QgYWdhaW5zdCBDUyBmYWlsdXJl cywgd2Ugbm93IGFkZCB0aGUKd2FpdCBzZW1zIGJ1dCBvbmx5IHJlbW92ZSB0aGVtIG9uY2UgdGhl IENTIGpvYiBoYXMgYmVlbgpzdWJtaXR0ZWQuCnY0OiByZXdyaXRlIG5hbWVzIG9mIEFQSSBhbmQg YmFzZSBvbiBuZXcgc3luY29iaiBjb2RlLgp2NTogbW92ZSBwb3N0IGRlcHMgZWFybGllciwgcmVu YW1lIHNvbWUgYXBpcwoKU2lnbmVkLW9mZi1ieTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0 LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYyAgfCA4NyAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9kcnYuYyB8ICAyICstCiBpbmNsdWRlL3VhcGkvZHJtL2FtZGdwdV9kcm0uaCAg ICAgICAgICAgfCAgNiArKysKIDMgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHVfY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCmluZGV4IDMw MjI1ZDcuLjNjYmQ1NDcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9jcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCkBA IC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSA8bGludXgvcGFnZW1hcC5oPgogI2luY2x1ZGUgPGRy bS9kcm1QLmg+CiAjaW5jbHVkZSA8ZHJtL2FtZGdwdV9kcm0uaD4KKyNpbmNsdWRlIDxkcm0vZHJt X3N5bmNvYmouaD4KICNpbmNsdWRlICJhbWRncHUuaCIKICNpbmNsdWRlICJhbWRncHVfdHJhY2Uu aCIKIApAQCAtMjI2LDYgKzIyNyw4IEBAIGludCBhbWRncHVfY3NfcGFyc2VyX2luaXQoc3RydWN0 IGFtZGdwdV9jc19wYXJzZXIgKnAsIHZvaWQgKmRhdGEpCiAJCQlicmVhazsKIAogCQljYXNlIEFN REdQVV9DSFVOS19JRF9ERVBFTkRFTkNJRVM6CisJCWNhc2UgQU1ER1BVX0NIVU5LX0lEX1NZTkNP QkpfSU46CisJCWNhc2UgQU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfT1VUOgogCQkJYnJlYWs7CiAK IAkJZGVmYXVsdDoKQEAgLTEwNDAsNiArMTA0Myw0MCBAQCBzdGF0aWMgaW50IGFtZGdwdV9jc19w cm9jZXNzX2ZlbmNlX2RlcChzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCwKIAlyZXR1cm4gMDsK IH0KIAorc3RhdGljIGludCBhbWRncHVfc3luY29ial9sb29rdXBfYW5kX2FkZF90b19zeW5jKHN0 cnVjdCBhbWRncHVfY3NfcGFyc2VyICpwLAorCQkJCQkJIHVpbnQzMl90IGhhbmRsZSkKK3sKKwlp bnQgcjsKKwlzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZTsKKwlyID0gZHJtX3N5bmNvYmpfZmVuY2Vf Z2V0KHAtPmZpbHAsIGhhbmRsZSwgJmZlbmNlKTsKKwlpZiAocikKKwkJcmV0dXJuIHI7CisKKwly ID0gYW1kZ3B1X3N5bmNfZmVuY2UocC0+YWRldiwgJnAtPmpvYi0+c3luYywgZmVuY2UpOworCWRt YV9mZW5jZV9wdXQoZmVuY2UpOworCisJcmV0dXJuIHI7Cit9CisKK3N0YXRpYyBpbnQgYW1kZ3B1 X2NzX3Byb2Nlc3Nfc3luY29ial9pbl9kZXAoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsCisJ CQkJCSAgICBzdHJ1Y3QgYW1kZ3B1X2NzX2NodW5rICpjaHVuaykKK3sKKwl1bnNpZ25lZCBudW1f ZGVwczsKKwlpbnQgaSwgcjsKKwlzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19zZW0gKmRlcHM7 CisKKwlkZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX3NlbSAqKWNodW5rLT5rZGF0 YTsKKwludW1fZGVwcyA9IGNodW5rLT5sZW5ndGhfZHcgKiA0IC8KKwkJc2l6ZW9mKHN0cnVjdCBk cm1fYW1kZ3B1X2NzX2NodW5rX3NlbSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgbnVtX2RlcHM7ICsr aSkgeworCQlyID0gYW1kZ3B1X3N5bmNvYmpfbG9va3VwX2FuZF9hZGRfdG9fc3luYyhwLCBkZXBz W2ldLmhhbmRsZSk7CisJCWlmIChyKQorCQkJcmV0dXJuIHI7CisJfQorCXJldHVybiAwOworfQor CiBzdGF0aWMgaW50IGFtZGdwdV9jc19kZXBlbmRlbmNpZXMoc3RydWN0IGFtZGdwdV9kZXZpY2Ug KmFkZXYsCiAJCQkJICBzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCkKIHsKQEAgLTEwNTQsMTIg KzEwOTEsNTQgQEAgc3RhdGljIGludCBhbWRncHVfY3NfZGVwZW5kZW5jaWVzKHN0cnVjdCBhbWRn cHVfZGV2aWNlICphZGV2LAogCQkJciA9IGFtZGdwdV9jc19wcm9jZXNzX2ZlbmNlX2RlcChwLCBj aHVuayk7CiAJCQlpZiAocikKIAkJCQlyZXR1cm4gcjsKKwkJfSBlbHNlIGlmIChjaHVuay0+Y2h1 bmtfaWQgPT0gQU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfSU4pIHsKKwkJCXIgPSBhbWRncHVfY3Nf cHJvY2Vzc19zeW5jb2JqX2luX2RlcChwLCBjaHVuayk7CisJCQlpZiAocikKKwkJCQlyZXR1cm4g cjsKIAkJfQogCX0KIAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGFtZGdwdV9jc19wcm9j ZXNzX3N5bmNvYmpfb3V0X2RlcChzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCwKKwkJCQkJICAg ICBzdHJ1Y3QgYW1kZ3B1X2NzX2NodW5rICpjaHVuaykKK3sKKwl1bnNpZ25lZCBudW1fZGVwczsK KwlpbnQgaSwgcjsKKwlzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19zZW0gKmRlcHM7CisKKwlk ZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX3NlbSAqKWNodW5rLT5rZGF0YTsKKwlu dW1fZGVwcyA9IGNodW5rLT5sZW5ndGhfZHcgKiA0IC8KKwkJc2l6ZW9mKHN0cnVjdCBkcm1fYW1k Z3B1X2NzX2NodW5rX3NlbSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgbnVtX2RlcHM7ICsraSkgewor CQlyID0gZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZShwLT5maWxwLCBkZXBzW2ldLmhhbmRsZSwK KwkJCQkJICAgICAgcC0+ZmVuY2UpOworCQlpZiAocikKKwkJCXJldHVybiByOworCX0KKwlyZXR1 cm4gMDsKK30KKworc3RhdGljIGludCBhbWRncHVfY3NfcG9zdF9kZXBlbmRlbmNpZXMoc3RydWN0 IGFtZGdwdV9jc19wYXJzZXIgKnApCit7CisJaW50IGksIHI7CisKKwlmb3IgKGkgPSAwOyBpIDwg cC0+bmNodW5rczsgKytpKSB7CisJCXN0cnVjdCBhbWRncHVfY3NfY2h1bmsgKmNodW5rOworCisJ CWNodW5rID0gJnAtPmNodW5rc1tpXTsKKworCQlpZiAoY2h1bmstPmNodW5rX2lkID09IEFNREdQ VV9DSFVOS19JRF9TWU5DT0JKX09VVCkgeworCQkJciA9IGFtZGdwdV9jc19wcm9jZXNzX3N5bmNv Ympfb3V0X2RlcChwLCBjaHVuayk7CisJCQlpZiAocikKKwkJCQlyZXR1cm4gcjsKKwkJfQorCX0K KwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGludCBhbWRncHVfY3Nfc3VibWl0KHN0cnVjdCBhbWRn cHVfY3NfcGFyc2VyICpwLAogCQkJICAgIHVuaW9uIGRybV9hbWRncHVfY3MgKmNzKQogewpAQCAt MTA4MCw2ICsxMTU5LDEzIEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2NzX3N1Ym1pdChzdHJ1Y3QgYW1k Z3B1X2NzX3BhcnNlciAqcCwKIAlqb2ItPm93bmVyID0gcC0+ZmlscDsKIAlqb2ItPmZlbmNlX2N0 eCA9IGVudGl0eS0+ZmVuY2VfY29udGV4dDsKIAlwLT5mZW5jZSA9IGRtYV9mZW5jZV9nZXQoJmpv Yi0+YmFzZS5zX2ZlbmNlLT5maW5pc2hlZCk7CisKKwlyID0gYW1kZ3B1X2NzX3Bvc3RfZGVwZW5k ZW5jaWVzKHApOworCWlmIChyKSB7CisJCWFtZGdwdV9qb2JfZnJlZShqb2IpOworCQlyZXR1cm4g cjsKKwl9CisKIAljcy0+b3V0LmhhbmRsZSA9IGFtZGdwdV9jdHhfYWRkX2ZlbmNlKHAtPmN0eCwg cmluZywgcC0+ZmVuY2UpOwogCWpvYi0+dWZfc2VxdWVuY2UgPSBjcy0+b3V0LmhhbmRsZTsKIAlh bWRncHVfam9iX2ZyZWVfcmVzb3VyY2VzKGpvYik7CkBAIC0xMDg3LDcgKzExNzMsNiBAQCBzdGF0 aWMgaW50IGFtZGdwdV9jc19zdWJtaXQoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsCiAKIAl0 cmFjZV9hbWRncHVfY3NfaW9jdGwoam9iKTsKIAlhbWRfc2NoZWRfZW50aXR5X3B1c2hfam9iKCZq b2ItPmJhc2UpOwotCiAJcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9kcnYuYwppbmRleCBmMmQ3MDVlLi41MzI5ZTdmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2Rydi5jCkBAIC03MTksNyArNzE5LDcgQEAgc3RhdGljIHN0cnVjdCBkcm1f ZHJpdmVyIGttc19kcml2ZXIgPSB7CiAJLmRyaXZlcl9mZWF0dXJlcyA9CiAJICAgIERSSVZFUl9V U0VfQUdQIHwKIAkgICAgRFJJVkVSX0hBVkVfSVJRIHwgRFJJVkVSX0lSUV9TSEFSRUQgfCBEUklW RVJfR0VNIHwKLQkgICAgRFJJVkVSX1BSSU1FIHwgRFJJVkVSX1JFTkRFUiB8IERSSVZFUl9NT0RF U0VULAorCSAgICBEUklWRVJfUFJJTUUgfCBEUklWRVJfUkVOREVSIHwgRFJJVkVSX01PREVTRVQg fCBEUklWRVJfU1lOQ09CSiwKIAkubG9hZCA9IGFtZGdwdV9kcml2ZXJfbG9hZF9rbXMsCiAJLm9w ZW4gPSBhbWRncHVfZHJpdmVyX29wZW5fa21zLAogCS5wb3N0Y2xvc2UgPSBhbWRncHVfZHJpdmVy X3Bvc3RjbG9zZV9rbXMsCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2FtZGdwdV9kcm0u aCBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oCmluZGV4IDZjMjQ5ZTUuLmNjNzAyY2Eg MTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oCisrKyBiL2luY2x1ZGUv dWFwaS9kcm0vYW1kZ3B1X2RybS5oCkBAIC00MTYsNiArNDE2LDggQEAgc3RydWN0IGRybV9hbWRn cHVfZ2VtX3ZhIHsKICNkZWZpbmUgQU1ER1BVX0NIVU5LX0lEX0lCCQkweDAxCiAjZGVmaW5lIEFN REdQVV9DSFVOS19JRF9GRU5DRQkJMHgwMgogI2RlZmluZSBBTURHUFVfQ0hVTktfSURfREVQRU5E RU5DSUVTCTB4MDMKKyNkZWZpbmUgQU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfSU4gICAgICAweDA0 CisjZGVmaW5lIEFNREdQVV9DSFVOS19JRF9TWU5DT0JKX09VVCAgICAgMHgwNQogCiBzdHJ1Y3Qg ZHJtX2FtZGdwdV9jc19jaHVuayB7CiAJX191MzIJCWNodW5rX2lkOwpAQCAtNDgzLDYgKzQ4NSwx MCBAQCBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19mZW5jZSB7CiAJX191MzIgb2Zmc2V0Owog fTsKIAorc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtfc2VtIHsKKwlfX3UzMiBoYW5kbGU7Cit9 OworCiBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19kYXRhIHsKIAl1bmlvbiB7CiAJCXN0cnVj dCBkcm1fYW1kZ3B1X2NzX2NodW5rX2liCQlpYl9kYXRhOwotLSAKMi45LjQKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0 CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=