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: Wed, 24 May 2017 17:06:15 +1000 Message-ID: <20170524070615.1634-6-airlied@gmail.com> References: <20170524070615.1634-1-airlied@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170524070615.1634-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 YSB2ZXJzaW9uIGJ1bXAgdG8gZXhwb3NlCml0IHRvIHVzZXJzcGFjZS4KCnYxLjE6IGtlZXAgZmls ZSByZWZlcmVuY2Ugb24gaW1wb3J0Lgp2MjogbW92ZSB0byB1c2luZyBzeW5jb2Jqcwp2Mi4xOiBj aGFuZ2Ugc29tZSBBUElzIHRvIGp1c3QgdXNlIHAgcG9pbnRlci4KdjM6IG1ha2UgbW9yZSByb2J1 c3QgYWdhaW5zdCBDUyBmYWlsdXJlcywgd2Ugbm93IGFkZCB0aGUKd2FpdCBzZW1zIGJ1dCBvbmx5 IHJlbW92ZSB0aGVtIG9uY2UgdGhlIENTIGpvYiBoYXMgYmVlbgpzdWJtaXR0ZWQuCnY0OiByZXdy aXRlIG5hbWVzIG9mIEFQSSBhbmQgYmFzZSBvbiBuZXcgc3luY29iaiBjb2RlLgp2NTogbW92ZSBw b3N0IGRlcHMgZWFybGllciwgcmVuYW1lIHNvbWUgYXBpcwoKU2lnbmVkLW9mZi1ieTogRGF2ZSBB aXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfY3MuYyAgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGRy aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYyB8ICAyICstCiBpbmNsdWRlL3Vh cGkvZHJtL2FtZGdwdV9kcm0uaCAgICAgICAgICAgfCAgNiArKysKIDMgZmlsZXMgY2hhbmdlZCwg OTMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV9jcy5jCmluZGV4IDMwMjI1ZDcuLjNjYmQ1NDcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9jcy5jCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSA8bGludXgvcGFn ZW1hcC5oPgogI2luY2x1ZGUgPGRybS9kcm1QLmg+CiAjaW5jbHVkZSA8ZHJtL2FtZGdwdV9kcm0u aD4KKyNpbmNsdWRlIDxkcm0vZHJtX3N5bmNvYmouaD4KICNpbmNsdWRlICJhbWRncHUuaCIKICNp bmNsdWRlICJhbWRncHVfdHJhY2UuaCIKIApAQCAtMjI2LDYgKzIyNyw4IEBAIGludCBhbWRncHVf Y3NfcGFyc2VyX2luaXQoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnAsIHZvaWQgKmRhdGEpCiAJ CQlicmVhazsKIAogCQljYXNlIEFNREdQVV9DSFVOS19JRF9ERVBFTkRFTkNJRVM6CisJCWNhc2Ug QU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfSU46CisJCWNhc2UgQU1ER1BVX0NIVU5LX0lEX1NZTkNP QkpfT1VUOgogCQkJYnJlYWs7CiAKIAkJZGVmYXVsdDoKQEAgLTEwNDAsNiArMTA0Myw0MCBAQCBz dGF0aWMgaW50IGFtZGdwdV9jc19wcm9jZXNzX2ZlbmNlX2RlcChzdHJ1Y3QgYW1kZ3B1X2NzX3Bh cnNlciAqcCwKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGludCBhbWRncHVfc3luY29ial9sb29r dXBfYW5kX2FkZF90b19zeW5jKHN0cnVjdCBhbWRncHVfY3NfcGFyc2VyICpwLAorCQkJCQkJIHVp bnQzMl90IGhhbmRsZSkKK3sKKwlpbnQgcjsKKwlzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZTsKKwly ID0gZHJtX3N5bmNvYmpfZmVuY2VfZ2V0KHAtPmZpbHAsIGhhbmRsZSwgJmZlbmNlKTsKKwlpZiAo cikKKwkJcmV0dXJuIHI7CisKKwlyID0gYW1kZ3B1X3N5bmNfZmVuY2UocC0+YWRldiwgJnAtPmpv Yi0+c3luYywgZmVuY2UpOworCWRtYV9mZW5jZV9wdXQoZmVuY2UpOworCisJcmV0dXJuIHI7Cit9 CisKK3N0YXRpYyBpbnQgYW1kZ3B1X2NzX3Byb2Nlc3Nfc3luY29ial9pbl9kZXAoc3RydWN0IGFt ZGdwdV9jc19wYXJzZXIgKnAsCisJCQkJCSAgICBzdHJ1Y3QgYW1kZ3B1X2NzX2NodW5rICpjaHVu aykKK3sKKwl1bnNpZ25lZCBudW1fZGVwczsKKwlpbnQgaSwgcjsKKwlzdHJ1Y3QgZHJtX2FtZGdw dV9jc19jaHVua19zZW0gKmRlcHM7CisKKwlkZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2No dW5rX3NlbSAqKWNodW5rLT5rZGF0YTsKKwludW1fZGVwcyA9IGNodW5rLT5sZW5ndGhfZHcgKiA0 IC8KKwkJc2l6ZW9mKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX3NlbSk7CisKKwlmb3IgKGkg PSAwOyBpIDwgbnVtX2RlcHM7ICsraSkgeworCQlyID0gYW1kZ3B1X3N5bmNvYmpfbG9va3VwX2Fu ZF9hZGRfdG9fc3luYyhwLCBkZXBzW2ldLmhhbmRsZSk7CisJCWlmIChyKQorCQkJcmV0dXJuIHI7 CisJfQorCXJldHVybiAwOworfQorCiBzdGF0aWMgaW50IGFtZGdwdV9jc19kZXBlbmRlbmNpZXMo c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJCQkJICBzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNl ciAqcCkKIHsKQEAgLTEwNTQsMTIgKzEwOTEsNTQgQEAgc3RhdGljIGludCBhbWRncHVfY3NfZGVw ZW5kZW5jaWVzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJciA9IGFtZGdwdV9jc19w cm9jZXNzX2ZlbmNlX2RlcChwLCBjaHVuayk7CiAJCQlpZiAocikKIAkJCQlyZXR1cm4gcjsKKwkJ fSBlbHNlIGlmIChjaHVuay0+Y2h1bmtfaWQgPT0gQU1ER1BVX0NIVU5LX0lEX1NZTkNPQkpfSU4p IHsKKwkJCXIgPSBhbWRncHVfY3NfcHJvY2Vzc19zeW5jb2JqX2luX2RlcChwLCBjaHVuayk7CisJ CQlpZiAocikKKwkJCQlyZXR1cm4gcjsKIAkJfQogCX0KIAogCXJldHVybiAwOwogfQogCitzdGF0 aWMgaW50IGFtZGdwdV9jc19wcm9jZXNzX3N5bmNvYmpfb3V0X2RlcChzdHJ1Y3QgYW1kZ3B1X2Nz X3BhcnNlciAqcCwKKwkJCQkJICAgICBzdHJ1Y3QgYW1kZ3B1X2NzX2NodW5rICpjaHVuaykKK3sK Kwl1bnNpZ25lZCBudW1fZGVwczsKKwlpbnQgaSwgcjsKKwlzdHJ1Y3QgZHJtX2FtZGdwdV9jc19j aHVua19zZW0gKmRlcHM7CisKKwlkZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX3Nl bSAqKWNodW5rLT5rZGF0YTsKKwludW1fZGVwcyA9IGNodW5rLT5sZW5ndGhfZHcgKiA0IC8KKwkJ c2l6ZW9mKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX3NlbSk7CisKKwlmb3IgKGkgPSAwOyBp IDwgbnVtX2RlcHM7ICsraSkgeworCQlyID0gZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZShwLT5m aWxwLCBkZXBzW2ldLmhhbmRsZSwKKwkJCQkJICAgICAgcC0+ZmVuY2UpOworCQlpZiAocikKKwkJ CXJldHVybiByOworCX0KKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBhbWRncHVfY3NfcG9z dF9kZXBlbmRlbmNpZXMoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnApCit7CisJaW50IGksIHI7 CisKKwlmb3IgKGkgPSAwOyBpIDwgcC0+bmNodW5rczsgKytpKSB7CisJCXN0cnVjdCBhbWRncHVf Y3NfY2h1bmsgKmNodW5rOworCisJCWNodW5rID0gJnAtPmNodW5rc1tpXTsKKworCQlpZiAoY2h1 bmstPmNodW5rX2lkID09IEFNREdQVV9DSFVOS19JRF9TWU5DT0JKX09VVCkgeworCQkJciA9IGFt ZGdwdV9jc19wcm9jZXNzX3N5bmNvYmpfb3V0X2RlcChwLCBjaHVuayk7CisJCQlpZiAocikKKwkJ CQlyZXR1cm4gcjsKKwkJfQorCX0KKwlyZXR1cm4gMDsKK30KKwogc3RhdGljIGludCBhbWRncHVf Y3Nfc3VibWl0KHN0cnVjdCBhbWRncHVfY3NfcGFyc2VyICpwLAogCQkJICAgIHVuaW9uIGRybV9h bWRncHVfY3MgKmNzKQogewpAQCAtMTA4MCw2ICsxMTU5LDEzIEBAIHN0YXRpYyBpbnQgYW1kZ3B1 X2NzX3N1Ym1pdChzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCwKIAlqb2ItPm93bmVyID0gcC0+ ZmlscDsKIAlqb2ItPmZlbmNlX2N0eCA9IGVudGl0eS0+ZmVuY2VfY29udGV4dDsKIAlwLT5mZW5j ZSA9IGRtYV9mZW5jZV9nZXQoJmpvYi0+YmFzZS5zX2ZlbmNlLT5maW5pc2hlZCk7CisKKwlyID0g YW1kZ3B1X2NzX3Bvc3RfZGVwZW5kZW5jaWVzKHApOworCWlmIChyKSB7CisJCWFtZGdwdV9qb2Jf ZnJlZShqb2IpOworCQlyZXR1cm4gcjsKKwl9CisKIAljcy0+b3V0LmhhbmRsZSA9IGFtZGdwdV9j dHhfYWRkX2ZlbmNlKHAtPmN0eCwgcmluZywgcC0+ZmVuY2UpOwogCWpvYi0+dWZfc2VxdWVuY2Ug PSBjcy0+b3V0LmhhbmRsZTsKIAlhbWRncHVfam9iX2ZyZWVfcmVzb3VyY2VzKGpvYik7CkBAIC0x MDg3LDcgKzExNzMsNiBAQCBzdGF0aWMgaW50IGFtZGdwdV9jc19zdWJtaXQoc3RydWN0IGFtZGdw dV9jc19wYXJzZXIgKnAsCiAKIAl0cmFjZV9hbWRncHVfY3NfaW9jdGwoam9iKTsKIAlhbWRfc2No ZWRfZW50aXR5X3B1c2hfam9iKCZqb2ItPmJhc2UpOwotCiAJcmV0dXJuIDA7CiB9CiAKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kcnYuYwppbmRleCBmMmQ3MDVlLi41MzI5ZTdmIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rydi5jCkBAIC03MTksNyArNzE5LDcg QEAgc3RhdGljIHN0cnVjdCBkcm1fZHJpdmVyIGttc19kcml2ZXIgPSB7CiAJLmRyaXZlcl9mZWF0 dXJlcyA9CiAJICAgIERSSVZFUl9VU0VfQUdQIHwKIAkgICAgRFJJVkVSX0hBVkVfSVJRIHwgRFJJ VkVSX0lSUV9TSEFSRUQgfCBEUklWRVJfR0VNIHwKLQkgICAgRFJJVkVSX1BSSU1FIHwgRFJJVkVS X1JFTkRFUiB8IERSSVZFUl9NT0RFU0VULAorCSAgICBEUklWRVJfUFJJTUUgfCBEUklWRVJfUkVO REVSIHwgRFJJVkVSX01PREVTRVQgfCBEUklWRVJfU1lOQ09CSiwKIAkubG9hZCA9IGFtZGdwdV9k cml2ZXJfbG9hZF9rbXMsCiAJLm9wZW4gPSBhbWRncHVfZHJpdmVyX29wZW5fa21zLAogCS5wb3N0 Y2xvc2UgPSBhbWRncHVfZHJpdmVyX3Bvc3RjbG9zZV9rbXMsCmRpZmYgLS1naXQgYS9pbmNsdWRl L3VhcGkvZHJtL2FtZGdwdV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oCmlu ZGV4IDZjMjQ5ZTUuLmNjNzAyY2EgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1 X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oCkBAIC00MTYsNiArNDE2 LDggQEAgc3RydWN0IGRybV9hbWRncHVfZ2VtX3ZhIHsKICNkZWZpbmUgQU1ER1BVX0NIVU5LX0lE X0lCCQkweDAxCiAjZGVmaW5lIEFNREdQVV9DSFVOS19JRF9GRU5DRQkJMHgwMgogI2RlZmluZSBB TURHUFVfQ0hVTktfSURfREVQRU5ERU5DSUVTCTB4MDMKKyNkZWZpbmUgQU1ER1BVX0NIVU5LX0lE X1NZTkNPQkpfSU4gICAgICAweDA0CisjZGVmaW5lIEFNREdQVV9DSFVOS19JRF9TWU5DT0JKX09V VCAgICAgMHgwNQogCiBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVuayB7CiAJX191MzIJCWNodW5r X2lkOwpAQCAtNDgzLDYgKzQ4NSwxMCBAQCBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19mZW5j ZSB7CiAJX191MzIgb2Zmc2V0OwogfTsKIAorc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtfc2Vt IHsKKwlfX3UzMiBoYW5kbGU7Cit9OworCiBzdHJ1Y3QgZHJtX2FtZGdwdV9jc19jaHVua19kYXRh IHsKIAl1bmlvbiB7CiAJCXN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX2liCQlpYl9kYXRhOwot LSAKMi45LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=