From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Airlie Subject: [PATCH 4/5] amdgpu/cs: split out fence dependency checking Date: Fri, 12 May 2017 10:34:56 +1000 Message-ID: <20170512003457.24936-5-airlied@gmail.com> References: <20170512003457.24936-1-airlied@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170512003457.24936-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 RnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0LmNvbT4KClRoaXMganVzdCBzcGxpdHMg b3V0IHRoZSBmZW5jZSBkZXBlbmVuY3kgY2hlY2tpbmcgaW50byBpdCdzCm93biBmdW5jdGlvbiB0 byBtYWtlIGl0IGVhc2llciB0byBhZGQgc2VtYXBob3JlIGRlcGVuZGVuY2llcy4KClJldmlld2Vk LWJ5OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+ClNpZ25lZC1v ZmYtYnk6IERhdmUgQWlybGllIDxhaXJsaWVkQHJlZGhhdC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMgfCA4NSArKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgMzggZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwppbmRleCA5OTQyNGNiLi5k ZjI1YjMyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3Mu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3MuYwpAQCAtOTYzLDU2 ICs5NjMsNjUgQEAgc3RhdGljIGludCBhbWRncHVfY3NfaWJfZmlsbChzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqYWRldiwKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBhbWRncHVfY3NfZGVwZW5k ZW5jaWVzKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAotCQkJCSAgc3RydWN0IGFtZGdwdV9j c19wYXJzZXIgKnApCitzdGF0aWMgaW50IGFtZGdwdV9wcm9jZXNzX2ZlbmNlX2RlcChzdHJ1Y3Qg YW1kZ3B1X2NzX3BhcnNlciAqcCwKKwkJCQkgICAgc3RydWN0IGFtZGdwdV9jc19jaHVuayAqY2h1 bmspCiB7CiAJc3RydWN0IGFtZGdwdV9mcHJpdiAqZnByaXYgPSBwLT5maWxwLT5kcml2ZXJfcHJp djsKLQlpbnQgaSwgaiwgcjsKLQotCWZvciAoaSA9IDA7IGkgPCBwLT5uY2h1bmtzOyArK2kpIHsK LQkJc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtfZGVwICpkZXBzOwotCQlzdHJ1Y3QgYW1kZ3B1 X2NzX2NodW5rICpjaHVuazsKLQkJdW5zaWduZWQgbnVtX2RlcHM7CisJdW5zaWduZWQgbnVtX2Rl cHM7CisJaW50IGksIHI7CisJc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtfZGVwICpkZXBzOwog Ci0JCWNodW5rID0gJnAtPmNodW5rc1tpXTsKKwlkZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2Nz X2NodW5rX2RlcCAqKWNodW5rLT5rZGF0YTsKKwludW1fZGVwcyA9IGNodW5rLT5sZW5ndGhfZHcg KiA0IC8KKwkJc2l6ZW9mKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX2RlcCk7CiAKLQkJaWYg KGNodW5rLT5jaHVua19pZCAhPSBBTURHUFVfQ0hVTktfSURfREVQRU5ERU5DSUVTKQotCQkJY29u dGludWU7CisJZm9yIChpID0gMDsgaSA8IG51bV9kZXBzOyArK2kpIHsKKwkJc3RydWN0IGFtZGdw dV9yaW5nICpyaW5nOworCQlzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4OworCQlzdHJ1Y3QgZG1hX2Zl bmNlICpmZW5jZTsKIAotCQlkZXBzID0gKHN0cnVjdCBkcm1fYW1kZ3B1X2NzX2NodW5rX2RlcCAq KWNodW5rLT5rZGF0YTsKLQkJbnVtX2RlcHMgPSBjaHVuay0+bGVuZ3RoX2R3ICogNCAvCi0JCQlz aXplb2Yoc3RydWN0IGRybV9hbWRncHVfY3NfY2h1bmtfZGVwKTsKKwkJciA9IGFtZGdwdV9jc19n ZXRfcmluZyhwLT5hZGV2LCBkZXBzW2ldLmlwX3R5cGUsCisJCQkJICAgICAgIGRlcHNbaV0uaXBf aW5zdGFuY2UsCisJCQkJICAgICAgIGRlcHNbaV0ucmluZywgJnJpbmcpOworCQlpZiAocikKKwkJ CXJldHVybiByOwogCi0JCWZvciAoaiA9IDA7IGogPCBudW1fZGVwczsgKytqKSB7Ci0JCQlzdHJ1 Y3QgYW1kZ3B1X3JpbmcgKnJpbmc7Ci0JCQlzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4OwotCQkJc3Ry dWN0IGRtYV9mZW5jZSAqZmVuY2U7CisJCWN0eCA9IGFtZGdwdV9jdHhfZ2V0KGZwcml2LCBkZXBz W2ldLmN0eF9pZCk7CisJCWlmIChjdHggPT0gTlVMTCkKKwkJCXJldHVybiAtRUlOVkFMOwogCi0J CQlyID0gYW1kZ3B1X2NzX2dldF9yaW5nKGFkZXYsIGRlcHNbal0uaXBfdHlwZSwKLQkJCQkJICAg ICAgIGRlcHNbal0uaXBfaW5zdGFuY2UsCi0JCQkJCSAgICAgICBkZXBzW2pdLnJpbmcsICZyaW5n KTsKKwkJZmVuY2UgPSBhbWRncHVfY3R4X2dldF9mZW5jZShjdHgsIHJpbmcsCisJCQkJCSAgICAg ZGVwc1tpXS5oYW5kbGUpOworCQlpZiAoSVNfRVJSKGZlbmNlKSkgeworCQkJciA9IFBUUl9FUlIo ZmVuY2UpOworCQkJYW1kZ3B1X2N0eF9wdXQoY3R4KTsKKwkJCXJldHVybiByOworCQl9IGVsc2Ug aWYgKGZlbmNlKSB7CisJCQlyID0gYW1kZ3B1X3N5bmNfZmVuY2UocC0+YWRldiwgJnAtPmpvYi0+ c3luYywKKwkJCQkJICAgICAgZmVuY2UpOworCQkJZG1hX2ZlbmNlX3B1dChmZW5jZSk7CisJCQlh bWRncHVfY3R4X3B1dChjdHgpOwogCQkJaWYgKHIpCiAJCQkJcmV0dXJuIHI7CisJCX0KKwl9CisJ cmV0dXJuIDA7Cit9CiAKLQkJCWN0eCA9IGFtZGdwdV9jdHhfZ2V0KGZwcml2LCBkZXBzW2pdLmN0 eF9pZCk7Ci0JCQlpZiAoY3R4ID09IE5VTEwpCi0JCQkJcmV0dXJuIC1FSU5WQUw7CitzdGF0aWMg aW50IGFtZGdwdV9jc19kZXBlbmRlbmNpZXMoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCisJ CQkJICBzdHJ1Y3QgYW1kZ3B1X2NzX3BhcnNlciAqcCkKK3sKKwlpbnQgaSwgcjsKIAotCQkJZmVu Y2UgPSBhbWRncHVfY3R4X2dldF9mZW5jZShjdHgsIHJpbmcsCi0JCQkJCQkgICAgIGRlcHNbal0u aGFuZGxlKTsKLQkJCWlmIChJU19FUlIoZmVuY2UpKSB7Ci0JCQkJciA9IFBUUl9FUlIoZmVuY2Up OwotCQkJCWFtZGdwdV9jdHhfcHV0KGN0eCk7Ci0JCQkJcmV0dXJuIHI7CisJZm9yIChpID0gMDsg aSA8IHAtPm5jaHVua3M7ICsraSkgeworCQlzdHJ1Y3QgYW1kZ3B1X2NzX2NodW5rICpjaHVuazsK IAotCQkJfSBlbHNlIGlmIChmZW5jZSkgewotCQkJCXIgPSBhbWRncHVfc3luY19mZW5jZShhZGV2 LCAmcC0+am9iLT5zeW5jLAotCQkJCQkJICAgICAgZmVuY2UpOwotCQkJCWRtYV9mZW5jZV9wdXQo ZmVuY2UpOwotCQkJCWFtZGdwdV9jdHhfcHV0KGN0eCk7Ci0JCQkJaWYgKHIpCi0JCQkJCXJldHVy biByOwotCQkJfQorCQljaHVuayA9ICZwLT5jaHVua3NbaV07CisKKwkJaWYgKGNodW5rLT5jaHVu a19pZCA9PSBBTURHUFVfQ0hVTktfSURfREVQRU5ERU5DSUVTKSB7CisJCQlyID0gYW1kZ3B1X3By b2Nlc3NfZmVuY2VfZGVwKHAsIGNodW5rKTsKKwkJCWlmIChyKQorCQkJCXJldHVybiByOwogCQl9 CiAJfQogCi0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4 Cg==