From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Ekstrand Subject: [PATCH 8/9] drm/syncobj: Add a callback mechanism for replace_fence Date: Tue, 8 Aug 2017 15:46:08 -0700 Message-ID: <1502232369-19753-9-git-send-email-jason.ekstrand@intel.com> References: <1502232369-19753-1-git-send-email-jason.ekstrand@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pf0-x244.google.com (mail-pf0-x244.google.com [IPv6:2607:f8b0:400e:c00::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 515446E277 for ; Tue, 8 Aug 2017 22:46:43 +0000 (UTC) Received: by mail-pf0-x244.google.com with SMTP id h75so4351500pfh.5 for ; Tue, 08 Aug 2017 15:46:43 -0700 (PDT) In-Reply-To: <1502232369-19753-1-git-send-email-jason.ekstrand@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Jason Ekstrand , Jason Ekstrand List-Id: dri-devel@lists.freedesktop.org SXQgaXMgdXNlZnVsIGluIGNlcnRhaW4gY2lyY3Vtc3RhbmNlcyB0byBrbm93IHdoZW4gdGhlIGZl bmNlIGlzIHJlcGxhY2VkCmluIGEgc3luY29iai4gIFNwZWNpZmljYWxseSwgaXQgbWF5IGJlIHVz ZWZ1bCB0byBrbm93IHdoZW4gdGhlIGZlbmNlCmdvZXMgZnJvbSBOVUxMIHRvIHNvbWV0aGluZyB2 YWxpZC4gIFRoaXMgZG9lcyBtYWtlIHN5bmNvYmpfcmVwbGFjZV9mZW5jZQphIGxpdHRsZSBtb3Jl IGV4cGVuc2l2ZSBiZWNhdXNlIGl0IGhhcyB0byB0YWtlIGEgbG9jayBidXQsIGluIHRoZSBjb21t b24KY2FzZSB3aGVyZSB0aGVyZSBpcyBubyBjYWxsYmFjayBsaXN0LCBpdCBzcGVuZHMgYSB2ZXJ5 IHNob3J0IGFtb3VudCBvZgp0aW1lIGluc2lkZSB0aGUgbG9jay4KClNpZ25lZC1vZmYtYnk6IEph c29uIEVrc3RyYW5kIDxqYXNvbkBqbGVrc3RyYW5kLm5ldD4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v ZHJtX3N5bmNvYmouYyB8IDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0KIGluY2x1ZGUvZHJtL2RybV9zeW5jb2JqLmggICAgIHwgMzMgKysrKysrKysrKysrKysr KysrKysrKysrKysrLQogMiBmaWxlcyBjaGFuZ2VkLCA4MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fc3luY29iai5jIGIvZHJp dmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmMKaW5kZXggMjU4MDdmNS4uNTEwZGZjMiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9zeW5jb2JqLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2RybV9zeW5jb2JqLmMKQEAgLTk2LDYgKzk2LDQ2IEBAIHN0cnVjdCBkbWFfZmVuY2UgKmRybV9z eW5jb2JqX2ZlbmNlX2dldChzdHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmopCiB9CiBFWFBPUlRf U1lNQk9MKGRybV9zeW5jb2JqX2ZlbmNlX2dldCk7CiAKK3N0YXRpYyB2b2lkIGRybV9zeW5jb2Jq X2FkZF9jYWxsYmFja19sb2NrZWQoc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqLAorCQkJCQkg ICAgc3RydWN0IGRybV9zeW5jb2JqX2NiICpjYiwKKwkJCQkJICAgIGRybV9zeW5jb2JqX2Z1bmNf dCBmdW5jKQoreworCWNiLT5mdW5jID0gZnVuYzsKKwlsaXN0X2FkZF90YWlsKCZjYi0+bm9kZSwg JnN5bmNvYmotPmNiX2xpc3QpOworfQorCisvKioKKyAqIGRybV9zeW5jb2JqX2FkZF9jYWxsYmFj ayAtIGFkZHMgYSBjYWxsYmFjayB0byBzeW5jb2JqOjpjYl9saXN0CisgKiBAc3luY29iajogU3lu YyBvYmplY3QgdG8gd2hpY2ggdG8gYWRkIHRoZSBjYWxsYmFjaworICogQGNiOiBDYWxsYmFjayB0 byBhZGQKKyAqIEBmdW5jOiBGdW5jIHRvIHVzZSB3aGVuIGluaXRpYWxpemluZyB0aGUgZHJtX3N5 bmNvYmpfY2Igc3RydWN0CisgKgorICogVGhpcyBhZGRzIGEgY2FsbGJhY2sgdG8gYmUgY2FsbGVk IG5leHQgdGltZSB0aGUgZmVuY2UgaXMgcmVwbGFjZWQKKyAqLwordm9pZCBkcm1fc3luY29ial9h ZGRfY2FsbGJhY2soc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqLAorCQkJICAgICAgc3RydWN0 IGRybV9zeW5jb2JqX2NiICpjYiwKKwkJCSAgICAgIGRybV9zeW5jb2JqX2Z1bmNfdCBmdW5jKQor eworCXNwaW5fbG9jaygmc3luY29iai0+bG9jayk7CisJZHJtX3N5bmNvYmpfYWRkX2NhbGxiYWNr X2xvY2tlZChzeW5jb2JqLCBjYiwgZnVuYyk7CisJc3Bpbl91bmxvY2soJnN5bmNvYmotPmxvY2sp OworfQorRVhQT1JUX1NZTUJPTChkcm1fc3luY29ial9hZGRfY2FsbGJhY2spOworCisvKioKKyAq IGRybV9zeW5jb2JqX2FkZF9jYWxsYmFjayAtIHJlbW92ZXMgYSBjYWxsYmFjayB0byBzeW5jb2Jq OjpjYl9saXN0CisgKiBAc3luY29iajogU3luYyBvYmplY3QgZnJvbSB3aGljaCB0byByZW1vdmUg dGhlIGNhbGxiYWNrCisgKiBAY2I6IENhbGxiYWNrIHRvIHJlbW92ZQorICovCit2b2lkIGRybV9z eW5jb2JqX3JlbW92ZV9jYWxsYmFjayhzdHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmosCisJCQkJ IHN0cnVjdCBkcm1fc3luY29ial9jYiAqY2IpCit7CisJc3Bpbl9sb2NrKCZzeW5jb2JqLT5sb2Nr KTsKKwlsaXN0X2RlbF9pbml0KCZjYi0+bm9kZSk7CisJc3Bpbl91bmxvY2soJnN5bmNvYmotPmxv Y2spOworfQorRVhQT1JUX1NZTUJPTChkcm1fc3luY29ial9yZW1vdmVfY2FsbGJhY2spOworCiAv KioKICAqIGRybV9zeW5jb2JqX3JlcGxhY2VfZmVuY2UgLSByZXBsYWNlIGZlbmNlIGluIGEgc3lu YyBvYmplY3QuCiAgKiBAZmlsZV9wcml2YXRlOiBkcm0gZmlsZSBwcml2YXRlIHBvaW50ZXIuCkBA IC0xMDgsMTMgKzE0OCwyMSBAQCB2b2lkIGRybV9zeW5jb2JqX3JlcGxhY2VfZmVuY2Uoc3RydWN0 IGRybV9zeW5jb2JqICpzeW5jb2JqLAogCQkJICAgICAgIHN0cnVjdCBkbWFfZmVuY2UgKmZlbmNl KQogewogCXN0cnVjdCBkbWFfZmVuY2UgKm9sZF9mZW5jZSA9IE5VTEw7CisJc3RydWN0IGRybV9z eW5jb2JqX2NiICpjdXIsICp0bXA7CiAKIAlpZiAoZmVuY2UpCiAJCWRtYV9mZW5jZV9nZXQoZmVu Y2UpOwogCiAJc3Bpbl9sb2NrKCZzeW5jb2JqLT5sb2NrKTsKKwogCW9sZF9mZW5jZSA9IHN5bmNv YmotPmZlbmNlOwogCXN5bmNvYmotPmZlbmNlID0gZmVuY2U7CisKKwlsaXN0X2Zvcl9lYWNoX2Vu dHJ5X3NhZmUoY3VyLCB0bXAsICZzeW5jb2JqLT5jYl9saXN0LCBub2RlKSB7CisJCWxpc3RfZGVs X2luaXQoJmN1ci0+bm9kZSk7CisJCWN1ci0+ZnVuYyhzeW5jb2JqLCBjdXIpOworCX0KKwogCXNw aW5fdW5sb2NrKCZzeW5jb2JqLT5sb2NrKTsKIAogCWRtYV9mZW5jZV9wdXQob2xkX2ZlbmNlKTsK QEAgLTE1MSw3ICsxOTksNyBAQCB2b2lkIGRybV9zeW5jb2JqX2ZyZWUoc3RydWN0IGtyZWYgKmty ZWYpCiAJc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqID0gY29udGFpbmVyX29mKGtyZWYsCiAJ CQkJCQkgICBzdHJ1Y3QgZHJtX3N5bmNvYmosCiAJCQkJCQkgICByZWZjb3VudCk7Ci0JZG1hX2Zl bmNlX3B1dChzeW5jb2JqLT5mZW5jZSk7CisJZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZShzeW5j b2JqLCBOVUxMKTsKIAlrZnJlZShzeW5jb2JqKTsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX3N5bmNv YmpfZnJlZSk7CkBAIC0xNjcsNiArMjE1LDcgQEAgc3RhdGljIGludCBkcm1fc3luY29ial9jcmVh dGUoc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXZhdGUsCiAJCXJldHVybiAtRU5PTUVNOwogCiAJ a3JlZl9pbml0KCZzeW5jb2JqLT5yZWZjb3VudCk7CisJSU5JVF9MSVNUX0hFQUQoJnN5bmNvYmot PmNiX2xpc3QpOwogCXNwaW5fbG9ja19pbml0KCZzeW5jb2JqLT5sb2NrKTsKIAogCWlkcl9wcmVs b2FkKEdGUF9LRVJORUwpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX3N5bmNvYmouaCBi L2luY2x1ZGUvZHJtL2RybV9zeW5jb2JqLmgKaW5kZXggMWM4MTY1OC4uYTgxYWY3NiAxMDA2NDQK LS0tIGEvaW5jbHVkZS9kcm0vZHJtX3N5bmNvYmouaAorKysgYi9pbmNsdWRlL2RybS9kcm1fc3lu Y29iai5oCkBAIC0yOCw2ICsyOCw4IEBACiAKICNpbmNsdWRlICJsaW51eC9kbWEtZmVuY2UuaCIK IAorc3RydWN0IGRybV9zeW5jb2JqX2NiOworCiAvKioKICAqIHN0cnVjdCBkcm1fc3luY29iaiAt IHN5bmMgb2JqZWN0LgogICoKQEAgLTQ2LDggKzQ4LDEzIEBAIHN0cnVjdCBkcm1fc3luY29iaiB7 CiAJICovCiAJc3RydWN0IGRtYV9mZW5jZSAqZmVuY2U7CiAJLyoqCisJICogQGxpc3QKKwkgKiBM aXN0IG9mIGNhbGxiYWtzIHRvIGNhbGwgd2hlbiB0aGUgZmVuY2UgZ2V0cyByZXBsYWNlZAorCSAq LworCXN0cnVjdCBsaXN0X2hlYWQgY2JfbGlzdDsKKwkvKioKIAkgKiBAc3BpbmxvY2s6Ci0JICog bG9ja3MgZmVuY2UuCisJICogbG9ja3MgZmVuY2UgYW5kIGNiX2xpc3QuCiAJICovCiAJc3Bpbmxv Y2tfdCBsb2NrOwogCS8qKgpAQCAtNTcsNiArNjQsMjUgQEAgc3RydWN0IGRybV9zeW5jb2JqIHsK IAlzdHJ1Y3QgZmlsZSAqZmlsZTsKIH07CiAKK3R5cGVkZWYgdm9pZCAoKmRybV9zeW5jb2JqX2Z1 bmNfdCkoc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqLAorCQkJCSAgIHN0cnVjdCBkcm1fc3lu Y29ial9jYiAqY2IpOworCisvKioKKyAqIHN0cnVjdCBkcm1fc3luY29ial9jYiAtIGNhbGxiYWNr IGZvciBkcm1fc3luY29ial9hZGRfY2FsbGJhY2sKKyAqIEBub2RlOiB1c2VkIGJ5IGRybV9zeW5j b2JfYWRkX2NhbGxiYWNrIHRvIGFwcGVuZCB0aGlzIHN0cnVjdCB0bworICoJICBzeW5jb2JqOjpj Yl9saXN0CisgKiBAZnVuYzogZHJtX3N5bmNvYmpfZnVuY190IHRvIGNhbGwKKyAqCisgKiBUaGlz IHN0cnVjdCB3aWxsIGJlIGluaXRpYWxpemVkIGJ5IGRybV9zeW5jb2JqX2FkZF9jYWxsYmFjaywg YWRkaXRpb25hbAorICogZGF0YSBjYW4gYmUgcGFzc2VkIGFsb25nIGJ5IGVtYmVkZGluZyBkcm1f c3luY29ial9jYiBpbiBhbm90aGVyIHN0cnVjdC4KKyAqIFRoZSBjYWxsYmFjayB3aWxsIGdldCBj YWxsZWQgdGhlIG5leHQgdGltZSBkcm1fc3luY29ial9yZXBsYWNlX2ZlbmNlIGlzCisgKiBjYWxs ZWQuCisgKi8KK3N0cnVjdCBkcm1fc3luY29ial9jYiB7CisJc3RydWN0IGxpc3RfaGVhZCBub2Rl OworCWRybV9zeW5jb2JqX2Z1bmNfdCBmdW5jOworfTsKKwogdm9pZCBkcm1fc3luY29ial9mcmVl KHN0cnVjdCBrcmVmICprcmVmKTsKIAogLyoqCkBAIC04NSw2ICsxMTEsMTEgQEAgZHJtX3N5bmNv YmpfcHV0KHN0cnVjdCBkcm1fc3luY29iaiAqb2JqKQogc3RydWN0IGRybV9zeW5jb2JqICpkcm1f c3luY29ial9maW5kKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRlLAogCQkJCSAgICAgdTMy IGhhbmRsZSk7CiBzdHJ1Y3QgZG1hX2ZlbmNlICpkcm1fc3luY29ial9mZW5jZV9nZXQoc3RydWN0 IGRybV9zeW5jb2JqICpzeW5jb2JqKTsKK3ZvaWQgZHJtX3N5bmNvYmpfYWRkX2NhbGxiYWNrKHN0 cnVjdCBkcm1fc3luY29iaiAqc3luY29iaiwKKwkJCSAgICAgIHN0cnVjdCBkcm1fc3luY29ial9j YiAqY2IsCisJCQkgICAgICBkcm1fc3luY29ial9mdW5jX3QgZnVuYyk7Cit2b2lkIGRybV9zeW5j b2JqX3JlbW92ZV9jYWxsYmFjayhzdHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmosCisJCQkJIHN0 cnVjdCBkcm1fc3luY29ial9jYiAqY2IpOwogdm9pZCBkcm1fc3luY29ial9yZXBsYWNlX2ZlbmNl KHN0cnVjdCBkcm1fc3luY29iaiAqc3luY29iaiwKIAkJCSAgICAgICBzdHJ1Y3QgZG1hX2ZlbmNl ICpmZW5jZSk7CiBpbnQgZHJtX3N5bmNvYmpfZmluZF9mZW5jZShzdHJ1Y3QgZHJtX2ZpbGUgKmZp bGVfcHJpdmF0ZSwKLS0gCjIuNS4wLjQwMC5nZmY4NmZhZgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2 ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==