From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Ekstrand Subject: [PATCH 6/7] drm/syncobj: Add a callback mechanism for replace_fence (v2) Date: Tue, 15 Aug 2017 21:13:54 -0700 Message-ID: <1502856835-9433-7-git-send-email-jason.ekstrand@intel.com> References: <1502856835-9433-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 C8E1C6E3AF for ; Wed, 16 Aug 2017 04:14:14 +0000 (UTC) Received: by mail-pf0-x244.google.com with SMTP id t86so274188pfe.1 for ; Tue, 15 Aug 2017 21:14:14 -0700 (PDT) In-Reply-To: <1502856835-9433-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 IHNob3J0IGFtb3VudCBvZgp0aW1lIGluc2lkZSB0aGUgbG9jay4KCnYyOgogLSBEb24ndCBsb2Nr IGluIGRybV9zeW5jb2JqX2ZlbmNlX2dldC4gIFdlIG9ubHkgcmVhbGx5IG5lZWQgdG8gbG9jawog ICBhcm91bmQgZmVuY2VfcmVwbGFjZSB0byBtYWtlIHRoZSBjYWxsYmFjayB3b3JrLgoKU2lnbmVk LW9mZi1ieTogSmFzb24gRWtzdHJhbmQgPGphc29uQGpsZWtzdHJhbmQubmV0PgotLS0KIGRyaXZl cnMvZ3B1L2RybS9kcm1fc3luY29iai5jIHwgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKystLQogaW5jbHVkZS9kcm0vZHJtX3N5bmNvYmouaCAgICAgfCAzOSArKysr KysrKysrKysrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDk3IGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9zeW5j b2JqLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5bmNvYmouYwppbmRleCA3NTVhZjVmLi4yNGE1 Mjg2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3N5bmNvYmouYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX3N5bmNvYmouYwpAQCAtODAsNiArODAsNDYgQEAgc3RydWN0IGRybV9z eW5jb2JqICpkcm1fc3luY29ial9maW5kKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRlLAog fQogRVhQT1JUX1NZTUJPTChkcm1fc3luY29ial9maW5kKTsKIAorc3RhdGljIHZvaWQgZHJtX3N5 bmNvYmpfYWRkX2NhbGxiYWNrX2xvY2tlZChzdHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmosCisJ CQkJCSAgICBzdHJ1Y3QgZHJtX3N5bmNvYmpfY2IgKmNiLAorCQkJCQkgICAgZHJtX3N5bmNvYmpf ZnVuY190IGZ1bmMpCit7CisJY2ItPmZ1bmMgPSBmdW5jOworCWxpc3RfYWRkX3RhaWwoJmNiLT5u b2RlLCAmc3luY29iai0+Y2JfbGlzdCk7Cit9CisKKy8qKgorICogZHJtX3N5bmNvYmpfYWRkX2Nh bGxiYWNrIC0gYWRkcyBhIGNhbGxiYWNrIHRvIHN5bmNvYmo6OmNiX2xpc3QKKyAqIEBzeW5jb2Jq OiBTeW5jIG9iamVjdCB0byB3aGljaCB0byBhZGQgdGhlIGNhbGxiYWNrCisgKiBAY2I6IENhbGxi YWNrIHRvIGFkZAorICogQGZ1bmM6IEZ1bmMgdG8gdXNlIHdoZW4gaW5pdGlhbGl6aW5nIHRoZSBk cm1fc3luY29ial9jYiBzdHJ1Y3QKKyAqCisgKiBUaGlzIGFkZHMgYSBjYWxsYmFjayB0byBiZSBj YWxsZWQgbmV4dCB0aW1lIHRoZSBmZW5jZSBpcyByZXBsYWNlZAorICovCit2b2lkIGRybV9zeW5j b2JqX2FkZF9jYWxsYmFjayhzdHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmosCisJCQkgICAgICBz dHJ1Y3QgZHJtX3N5bmNvYmpfY2IgKmNiLAorCQkJICAgICAgZHJtX3N5bmNvYmpfZnVuY190IGZ1 bmMpCit7CisJc3Bpbl9sb2NrKCZzeW5jb2JqLT5sb2NrKTsKKwlkcm1fc3luY29ial9hZGRfY2Fs bGJhY2tfbG9ja2VkKHN5bmNvYmosIGNiLCBmdW5jKTsKKwlzcGluX3VubG9jaygmc3luY29iai0+ bG9jayk7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9zeW5jb2JqX2FkZF9jYWxsYmFjayk7CisKKy8q KgorICogZHJtX3N5bmNvYmpfYWRkX2NhbGxiYWNrIC0gcmVtb3ZlcyBhIGNhbGxiYWNrIHRvIHN5 bmNvYmo6OmNiX2xpc3QKKyAqIEBzeW5jb2JqOiBTeW5jIG9iamVjdCBmcm9tIHdoaWNoIHRvIHJl bW92ZSB0aGUgY2FsbGJhY2sKKyAqIEBjYjogQ2FsbGJhY2sgdG8gcmVtb3ZlCisgKi8KK3ZvaWQg ZHJtX3N5bmNvYmpfcmVtb3ZlX2NhbGxiYWNrKHN0cnVjdCBkcm1fc3luY29iaiAqc3luY29iaiwK KwkJCQkgc3RydWN0IGRybV9zeW5jb2JqX2NiICpjYikKK3sKKwlzcGluX2xvY2soJnN5bmNvYmot PmxvY2spOworCWxpc3RfZGVsX2luaXQoJmNiLT5ub2RlKTsKKwlzcGluX3VubG9jaygmc3luY29i ai0+bG9jayk7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9zeW5jb2JqX3JlbW92ZV9jYWxsYmFjayk7 CisKIC8qKgogICogZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZSAtIHJlcGxhY2UgZmVuY2UgaW4g YSBzeW5jIG9iamVjdC4KICAqIEBzeW5jb2JqOiBTeW5jIG9iamVjdCB0byByZXBsYWNlIGZlbmNl IGluCkBAIC05MSwxMCArMTMxLDI0IEBAIHZvaWQgZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZShz dHJ1Y3QgZHJtX3N5bmNvYmogKnN5bmNvYmosCiAJCQkgICAgICAgc3RydWN0IGRtYV9mZW5jZSAq ZmVuY2UpCiB7CiAJc3RydWN0IGRtYV9mZW5jZSAqb2xkX2ZlbmNlOworCXN0cnVjdCBkcm1fc3lu Y29ial9jYiAqY3VyLCAqdG1wOwogCiAJaWYgKGZlbmNlKQogCQlkbWFfZmVuY2VfZ2V0KGZlbmNl KTsKLQlvbGRfZmVuY2UgPSB4Y2hnKCZzeW5jb2JqLT5mZW5jZSwgZmVuY2UpOworCisJc3Bpbl9s b2NrKCZzeW5jb2JqLT5sb2NrKTsKKworCW9sZF9mZW5jZSA9IHN5bmNvYmotPmZlbmNlOworCXN5 bmNvYmotPmZlbmNlID0gZmVuY2U7CisKKwlpZiAoZmVuY2UgIT0gb2xkX2ZlbmNlKSB7CisJCWxp c3RfZm9yX2VhY2hfZW50cnlfc2FmZShjdXIsIHRtcCwgJnN5bmNvYmotPmNiX2xpc3QsIG5vZGUp IHsKKwkJCWxpc3RfZGVsX2luaXQoJmN1ci0+bm9kZSk7CisJCQljdXItPmZ1bmMoc3luY29iaiwg Y3VyKTsKKwkJfQorCX0KKworCXNwaW5fdW5sb2NrKCZzeW5jb2JqLT5sb2NrKTsKIAogCWRtYV9m ZW5jZV9wdXQob2xkX2ZlbmNlKTsKIH0KQEAgLTEzMCw3ICsxODQsNyBAQCB2b2lkIGRybV9zeW5j b2JqX2ZyZWUoc3RydWN0IGtyZWYgKmtyZWYpCiAJc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2Jq ID0gY29udGFpbmVyX29mKGtyZWYsCiAJCQkJCQkgICBzdHJ1Y3QgZHJtX3N5bmNvYmosCiAJCQkJ CQkgICByZWZjb3VudCk7Ci0JZG1hX2ZlbmNlX3B1dChzeW5jb2JqLT5mZW5jZSk7CisJZHJtX3N5 bmNvYmpfcmVwbGFjZV9mZW5jZShzeW5jb2JqLCBOVUxMKTsKIAlrZnJlZShzeW5jb2JqKTsKIH0K IEVYUE9SVF9TWU1CT0woZHJtX3N5bmNvYmpfZnJlZSk7CkBAIC0xNDYsNiArMjAwLDggQEAgc3Rh dGljIGludCBkcm1fc3luY29ial9jcmVhdGUoc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXZhdGUs CiAJCXJldHVybiAtRU5PTUVNOwogCiAJa3JlZl9pbml0KCZzeW5jb2JqLT5yZWZjb3VudCk7CisJ SU5JVF9MSVNUX0hFQUQoJnN5bmNvYmotPmNiX2xpc3QpOworCXNwaW5fbG9ja19pbml0KCZzeW5j b2JqLT5sb2NrKTsKIAogCWlkcl9wcmVsb2FkKEdGUF9LRVJORUwpOwogCXNwaW5fbG9jaygmZmls ZV9wcml2YXRlLT5zeW5jb2JqX3RhYmxlX2xvY2spOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtX3N5bmNvYmouaCBiL2luY2x1ZGUvZHJtL2RybV9zeW5jb2JqLmgKaW5kZXggY2U5NGQxNC4u YWVmN2MxMCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX3N5bmNvYmouaAorKysgYi9pbmNs dWRlL2RybS9kcm1fc3luY29iai5oCkBAIC0yOCw2ICsyOCw4IEBACiAKICNpbmNsdWRlICJsaW51 eC9kbWEtZmVuY2UuaCIKIAorc3RydWN0IGRybV9zeW5jb2JqX2NiOworCiAvKioKICAqIHN0cnVj dCBkcm1fc3luY29iaiAtIHN5bmMgb2JqZWN0LgogICoKQEAgLTQzLDE1ICs0NSw0NyBAQCBzdHJ1 Y3QgZHJtX3N5bmNvYmogewogCS8qKgogCSAqIEBmZW5jZToKIAkgKiBOVUxMIG9yIGEgcG9pbnRl ciB0byB0aGUgZmVuY2UgYm91bmQgdG8gdGhpcyBvYmplY3QuCisJICoKKwkgKiBUaGlzIGZpZWxk IHNob3VsZCBub3QgYmUgdXNlZCBkaXJlY3RseS4gIFVzZSBkcm1fc3luY29ial9mZW5jZV9nZXQK KwkgKiBhbmQgZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZSBpbnN0ZWFkLgogCSAqLwogCXN0cnVj dCBkbWFfZmVuY2UgKmZlbmNlOwogCS8qKgorCSAqIEBsaXN0OgorCSAqIExpc3Qgb2YgY2FsbGJh Y2tzIHRvIGNhbGwgd2hlbiB0aGUgZmVuY2UgZ2V0cyByZXBsYWNlZAorCSAqLworCXN0cnVjdCBs aXN0X2hlYWQgY2JfbGlzdDsKKwkvKioKKwkgKiBAbG9jazoKKwkgKiBsb2NrcyBjYl9saXN0IGFu ZCB3cml0ZS1sb2NrcyBmZW5jZS4KKwkgKi8KKwlzcGlubG9ja190IGxvY2s7CisJLyoqCiAJICog QGZpbGU6CiAJICogYSBmaWxlIGJhY2tpbmcgZm9yIHRoaXMgc3luY29iai4KIAkgKi8KIAlzdHJ1 Y3QgZmlsZSAqZmlsZTsKIH07CiAKK3R5cGVkZWYgdm9pZCAoKmRybV9zeW5jb2JqX2Z1bmNfdCko c3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqLAorCQkJCSAgIHN0cnVjdCBkcm1fc3luY29ial9j YiAqY2IpOworCisvKioKKyAqIHN0cnVjdCBkcm1fc3luY29ial9jYiAtIGNhbGxiYWNrIGZvciBk cm1fc3luY29ial9hZGRfY2FsbGJhY2sKKyAqIEBub2RlOiB1c2VkIGJ5IGRybV9zeW5jb2JfYWRk X2NhbGxiYWNrIHRvIGFwcGVuZCB0aGlzIHN0cnVjdCB0bworICoJICBzeW5jb2JqOjpjYl9saXN0 CisgKiBAZnVuYzogZHJtX3N5bmNvYmpfZnVuY190IHRvIGNhbGwKKyAqCisgKiBUaGlzIHN0cnVj dCB3aWxsIGJlIGluaXRpYWxpemVkIGJ5IGRybV9zeW5jb2JqX2FkZF9jYWxsYmFjaywgYWRkaXRp b25hbAorICogZGF0YSBjYW4gYmUgcGFzc2VkIGFsb25nIGJ5IGVtYmVkZGluZyBkcm1fc3luY29i al9jYiBpbiBhbm90aGVyIHN0cnVjdC4KKyAqIFRoZSBjYWxsYmFjayB3aWxsIGdldCBjYWxsZWQg dGhlIG5leHQgdGltZSBkcm1fc3luY29ial9yZXBsYWNlX2ZlbmNlIGlzCisgKiBjYWxsZWQuCisg Ki8KK3N0cnVjdCBkcm1fc3luY29ial9jYiB7CisJc3RydWN0IGxpc3RfaGVhZCBub2RlOworCWRy bV9zeW5jb2JqX2Z1bmNfdCBmdW5jOworfTsKKwogdm9pZCBkcm1fc3luY29ial9mcmVlKHN0cnVj dCBrcmVmICprcmVmKTsKIAogLyoqCkBAIC05MSw2ICsxMjUsMTEgQEAgZHJtX3N5bmNvYmpfZmVu Y2VfZ2V0KHN0cnVjdCBkcm1fc3luY29iaiAqc3luY29iaikKIAogc3RydWN0IGRybV9zeW5jb2Jq ICpkcm1fc3luY29ial9maW5kKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2YXRlLAogCQkJCSAg ICAgdTMyIGhhbmRsZSk7Cit2b2lkIGRybV9zeW5jb2JqX2FkZF9jYWxsYmFjayhzdHJ1Y3QgZHJt X3N5bmNvYmogKnN5bmNvYmosCisJCQkgICAgICBzdHJ1Y3QgZHJtX3N5bmNvYmpfY2IgKmNiLAor CQkJICAgICAgZHJtX3N5bmNvYmpfZnVuY190IGZ1bmMpOwordm9pZCBkcm1fc3luY29ial9yZW1v dmVfY2FsbGJhY2soc3RydWN0IGRybV9zeW5jb2JqICpzeW5jb2JqLAorCQkJCSBzdHJ1Y3QgZHJt X3N5bmNvYmpfY2IgKmNiKTsKIHZvaWQgZHJtX3N5bmNvYmpfcmVwbGFjZV9mZW5jZShzdHJ1Y3Qg ZHJtX3N5bmNvYmogKnN5bmNvYmosCiAJCQkgICAgICAgc3RydWN0IGRtYV9mZW5jZSAqZmVuY2Up OwogaW50IGRybV9zeW5jb2JqX2ZpbmRfZmVuY2Uoc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXZh dGUsCi0tIAoyLjUuMC40MDAuZ2ZmODZmYWYKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo=