From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chunming Zhou Subject: [PATCH 8/9] drm/syncobj: add timeline signal ioctl for syncobj v5 Date: Mon, 25 Mar 2019 16:32:23 +0800 Message-ID: <20190325083224.2983-8-david1.zhou@amd.com> References: <20190325083224.2983-1-david1.zhou@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190325083224.2983-1-david1.zhou-5C7GfCeVMHo@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: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, lionel.g.landwerlin-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org, jason-fQELhIk9awXprZlt/sZkLg@public.gmane.org, Christian.Koenig-5C7GfCeVMHo@public.gmane.org, Tobias.Hector-5C7GfCeVMHo@public.gmane.org Cc: Chunming Zhou , Chris Wilson , Dave Airlie djI6IGluZGl2aWR1YWxseSBhbGxvY2F0ZSBjaGFpbiBhcnJheSwgc2luY2UgY2hhaW4gbm9kZSBp cyBmcmVlIGluZGVwZW5kZW50bHkuCnYzOiBhbGwgZXhpc3RpbmcgcG9pbnRzIG11c3QgYmUgYWxy ZWFkeSBzaWduYWxlZCBiZWZvcmUgY3B1IHBlcmZvcm0gc2lnbmFsIG9wZXJhdGlvbiwKICAgIHNv IGFkZCBjaGVjayBjb25kaXRpb24gZm9yIHRoYXQuCnY0OiByZW1vdmUgdjMgY2hhbmdlIGFuZCBh ZGQgY2hlY2tpbmcgdG8gcHJldmVudCBvdXQtb2Ytb3JkZXIKdjU6IHVuaWZ5IGJpbmFyeSBhbmQg dGltZWxpbmUKClNpZ25lZC1vZmYtYnk6IENodW5taW5nIFpob3UgPGRhdmlkMS56aG91QGFtZC5j b20+CkNjOiBUb2JpYXMgSGVjdG9yIDxUb2JpYXMuSGVjdG9yQGFtZC5jb20+CkNjOiBKYXNvbiBF a3N0cmFuZCA8amFzb25Aamxla3N0cmFuZC5uZXQ+CkNjOiBEYXZlIEFpcmxpZSA8YWlybGllZEBy ZWRoYXQuY29tPgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNj OiBMaW9uZWwgTGFuZHdlcmxpbiA8bGlvbmVsLmcubGFuZHdlcmxpbkBpbnRlbC5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2RybV9pbnRlcm5hbC5oIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2Ry bV9pb2N0bC5jICAgIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmMgIHwgNzMg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS91YXBpL2RybS9kcm0u aCAgICAgICAgIHwgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9pbnRlcm5hbC5oIGIvZHJpdmVycy9ncHUvZHJt L2RybV9pbnRlcm5hbC5oCmluZGV4IGRkMTFhZTVmMWVlZi4uZDlhNDgzYTVmY2UwIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ludGVybmFsLmgKKysrIGIvZHJpdmVycy9ncHUvZHJt L2RybV9pbnRlcm5hbC5oCkBAIC0xOTAsNiArMTkwLDggQEAgaW50IGRybV9zeW5jb2JqX3Jlc2V0 X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQkgICAgc3RydWN0 IGRybV9maWxlICpmaWxlX3ByaXZhdGUpOwogaW50IGRybV9zeW5jb2JqX3NpZ25hbF9pb2N0bChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQkJICAgICBzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGVfcHJpdmF0ZSk7CitpbnQgZHJtX3N5bmNvYmpfdGltZWxpbmVfc2lnbmFsX2lvY3Rs KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCisJCQkJICAgICAgc3RydWN0IGRy bV9maWxlICpmaWxlX3ByaXZhdGUpOwogaW50IGRybV9zeW5jb2JqX3F1ZXJ5X2lvY3RsKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQkgICAgc3RydWN0IGRybV9maWxlICpm aWxlX3ByaXZhdGUpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2lvY3RsLmMg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2lvY3RsLmMKaW5kZXggOTJiM2I3YjJmZDgxLi5kMzM3ZjE2 MTkwOWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9jdGwuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2lvY3RsLmMKQEAgLTY5Niw2ICs2OTYsOCBAQCBzdGF0aWMgY29uc3Qg c3RydWN0IGRybV9pb2N0bF9kZXNjIGRybV9pb2N0bHNbXSA9IHsKIAkJICAgICAgRFJNX1VOTE9D S0VEfERSTV9SRU5ERVJfQUxMT1cpLAogCURSTV9JT0NUTF9ERUYoRFJNX0lPQ1RMX1NZTkNPQkpf U0lHTkFMLCBkcm1fc3luY29ial9zaWduYWxfaW9jdGwsCiAJCSAgICAgIERSTV9VTkxPQ0tFRHxE Uk1fUkVOREVSX0FMTE9XKSwKKwlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9TWU5DT0JKX1RJTUVM SU5FX1NJR05BTCwgZHJtX3N5bmNvYmpfdGltZWxpbmVfc2lnbmFsX2lvY3RsLAorCQkgICAgICBE Uk1fVU5MT0NLRUR8RFJNX1JFTkRFUl9BTExPVyksCiAJRFJNX0lPQ1RMX0RFRihEUk1fSU9DVExf U1lOQ09CSl9RVUVSWSwgZHJtX3N5bmNvYmpfcXVlcnlfaW9jdGwsCiAJCSAgICAgIERSTV9VTkxP Q0tFRHxEUk1fUkVOREVSX0FMTE9XKSwKIAlEUk1fSU9DVExfREVGKERSTV9JT0NUTF9DUlRDX0dF VF9TRVFVRU5DRSwgZHJtX2NydGNfZ2V0X3NlcXVlbmNlX2lvY3RsLCBEUk1fVU5MT0NLRUQpLApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX3N5bmNvYmouYwppbmRleCBlZTJkNjZlMDQ3ZTcuLjA5OTU5NjE5MDg0NSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2RybV9zeW5jb2JqLmMKQEAgLTExODMsNiArMTE4Myw3OSBAQCBkcm1fc3luY29ial9zaWduYWxf aW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAlyZXR1cm4gcmV0Owog fQogCitpbnQKK2RybV9zeW5jb2JqX3RpbWVsaW5lX3NpZ25hbF9pb2N0bChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCB2b2lkICpkYXRhLAorCQkJCSAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXZh dGUpCit7CisJc3RydWN0IGRybV9zeW5jb2JqX3RpbWVsaW5lX2FycmF5ICphcmdzID0gZGF0YTsK KwlzdHJ1Y3QgZHJtX3N5bmNvYmogKipzeW5jb2JqczsKKwlzdHJ1Y3QgZG1hX2ZlbmNlX2NoYWlu ICoqY2hhaW5zOworCXVpbnQ2NF90ICpwb2ludHM7CisJdWludDMyX3QgaSwgajsKKwlpbnQgcmV0 OworCisJaWYgKCFkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX1NZTkNPQkopKQor CQlyZXR1cm4gLUVPUE5PVFNVUFA7CisKKwlpZiAoYXJncy0+cGFkICE9IDApCisJCXJldHVybiAt RUlOVkFMOworCisJaWYgKGFyZ3MtPmNvdW50X2hhbmRsZXMgPT0gMCkKKwkJcmV0dXJuIC1FSU5W QUw7CisKKwlyZXQgPSBkcm1fc3luY29ial9hcnJheV9maW5kKGZpbGVfcHJpdmF0ZSwKKwkJCQkg ICAgIHU2NF90b191c2VyX3B0cihhcmdzLT5oYW5kbGVzKSwKKwkJCQkgICAgIGFyZ3MtPmNvdW50 X2hhbmRsZXMsCisJCQkJICAgICAmc3luY29ianMpOworCWlmIChyZXQgPCAwKQorCQlyZXR1cm4g cmV0OworCisJcG9pbnRzID0ga21hbGxvY19hcnJheShhcmdzLT5jb3VudF9oYW5kbGVzLCBzaXpl b2YoKnBvaW50cyksCisJCQkgICAgICAgR0ZQX0tFUk5FTCk7CisJaWYgKCFwb2ludHMpIHsKKwkJ cmV0ID0gLUVOT01FTTsKKwkJZ290byBvdXQ7CisJfQorCWlmICghdTY0X3RvX3VzZXJfcHRyKGFy Z3MtPnBvaW50cykpIHsKKwkJbWVtc2V0KHBvaW50cywgMCwgYXJncy0+Y291bnRfaGFuZGxlcyAq IHNpemVvZih1aW50NjRfdCkpOworCX0gZWxzZSBpZiAoY29weV9mcm9tX3VzZXIocG9pbnRzLCB1 NjRfdG9fdXNlcl9wdHIoYXJncy0+cG9pbnRzKSwKKwkJCQkgIHNpemVvZih1aW50NjRfdCkgKiBh cmdzLT5jb3VudF9oYW5kbGVzKSkgeworCQlyZXQgPSAtRUZBVUxUOworCQlnb3RvIGVycl9wb2lu dHM7CisJfQorCisJY2hhaW5zID0ga21hbGxvY19hcnJheShhcmdzLT5jb3VudF9oYW5kbGVzLCBz aXplb2Yodm9pZCAqKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFjaGFpbnMpIHsKKwkJcmV0ID0gLUVO T01FTTsKKwkJZ290byBlcnJfcG9pbnRzOworCX0KKwlmb3IgKGkgPSAwOyBpIDwgYXJncy0+Y291 bnRfaGFuZGxlczsgaSsrKSB7CisJCWNoYWluc1tpXSA9IGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBk bWFfZmVuY2VfY2hhaW4pLCBHRlBfS0VSTkVMKTsKKwkJaWYgKCFjaGFpbnNbaV0pIHsKKwkJCWZv ciAoaiA9IDA7IGogPCBpOyBqKyspCisJCQkJa2ZyZWUoY2hhaW5zW2pdKTsKKwkJCXJldCA9IC1F Tk9NRU07CisJCQlnb3RvIGVycl9jaGFpbnM7CisJCX0KKwl9CisKKwlmb3IgKGkgPSAwOyBpIDwg YXJncy0+Y291bnRfaGFuZGxlczsgaSsrKSB7CisJCXN0cnVjdCBkbWFfZmVuY2UgKmZlbmNlID0g ZG1hX2ZlbmNlX2dldF9zdHViKCk7CisKKwkJZHJtX3N5bmNvYmpfYWRkX3BvaW50KHN5bmNvYmpz W2ldLCBjaGFpbnNbaV0sCisJCQkJICAgICAgZmVuY2UsIHBvaW50c1tpXSk7CisJCWRtYV9mZW5j ZV9wdXQoZmVuY2UpOworCX0KK2Vycl9jaGFpbnM6CisJa2ZyZWUoY2hhaW5zKTsKK2Vycl9wb2lu dHM6CisJa2ZyZWUocG9pbnRzKTsKK291dDoKKwlkcm1fc3luY29ial9hcnJheV9mcmVlKHN5bmNv YmpzLCBhcmdzLT5jb3VudF9oYW5kbGVzKTsKKworCXJldHVybiByZXQ7Cit9CisKIGludCBkcm1f c3luY29ial9xdWVyeV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAog CQkJICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRlKQogewpkaWZmIC0tZ2l0IGEvaW5j bHVkZS91YXBpL2RybS9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtLmgKaW5kZXggZThkMGQ2 YjUxODc1Li4yMzZiMDFhMWZhYmYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vZHJtLmgK KysrIGIvaW5jbHVkZS91YXBpL2RybS9kcm0uaApAQCAtOTQzLDYgKzk0Myw3IEBAIGV4dGVybiAi QyIgewogI2RlZmluZSBEUk1fSU9DVExfU1lOQ09CSl9USU1FTElORV9XQUlUCURSTV9JT1dSKDB4 Q0EsIHN0cnVjdCBkcm1fc3luY29ial90aW1lbGluZV93YWl0KQogI2RlZmluZSBEUk1fSU9DVExf U1lOQ09CSl9RVUVSWQkJRFJNX0lPV1IoMHhDQiwgc3RydWN0IGRybV9zeW5jb2JqX3RpbWVsaW5l X2FycmF5KQogI2RlZmluZSBEUk1fSU9DVExfU1lOQ09CSl9UUkFOU0ZFUglEUk1fSU9XUigweEND LCBzdHJ1Y3QgZHJtX3N5bmNvYmpfdHJhbnNmZXIpCisjZGVmaW5lIERSTV9JT0NUTF9TWU5DT0JK X1RJTUVMSU5FX1NJR05BTAlEUk1fSU9XUigweENELCBzdHJ1Y3QgZHJtX3N5bmNvYmpfdGltZWxp bmVfYXJyYXkpCiAKIC8qKgogICogRGV2aWNlIHNwZWNpZmljIGlvY3RscyBzaG91bGQgb25seSBi ZSBpbiB0aGVpciByZXNwZWN0aXZlIGhlYWRlcnMKLS0gCjIuMTcuMQoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1k LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4