From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Foss Subject: [PATCH i-g-t v11 10/21] tests/sw_sync: Add subtest test_sync_multi_consumer_producer Date: Wed, 7 Dec 2016 15:07:43 -0500 Message-ID: <20161207200754.7690-11-robert.foss@collabora.com> References: <20161207200754.7690-1-robert.foss@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by gabe.freedesktop.org (Postfix) with ESMTPS id E849E6E63D for ; Wed, 7 Dec 2016 20:08:24 +0000 (UTC) In-Reply-To: <20161207200754.7690-1-robert.foss@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, Gustavo Padovan , Daniel Stone , Daniel Vetter , Marius Vlad , Eric Engestrom , Chris Wilson , Tomeu Vizoso , Petri Latvala List-Id: intel-gfx@lists.freedesktop.org VGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgc3RyZXNzaW5nIHRoZSBrZXJuZWwgYnkgY3JlYXRpbmcg bXVsdGlwbGUKY29uc3VtZXIvcHJvZHVjZXIgdGhyZWFkcyB0aGF0IHdhaXQgb24gYSBzaW5nbGUg dGltZWxpbmUgdG8gYmUgaW5jcmVtZW50ZWQKYnkgYW5vdGhlciBjb251bWVyL3Byb2R1Y2VyIHRo cmVhZCBkb2VzIG5vdCBmYWlsLgpBbmQgdGhhdCB0aGUgb3JkZXIgYW1vbmdzdCB0aGUgdGhyZWFk cyBpcyBtYWludGFpbmVkLgoKU2lnbmVkLW9mZi1ieTogUm9iZXJ0IEZvc3MgPHJvYmVydC5mb3Nz QGNvbGxhYm9yYS5jb20+ClJldmlld2VkLWJ5OiBFcmljIEVuZ2VzdHJvbSA8ZXJpY0Blbmdlc3Ry b20uY2g+ClJldmlld2VkLWJ5OiBUb21ldSBWaXpvc28gPHRvbWV1LnZpem9zb0Bjb2xsYWJvcmEu Y29tPgotLS0KIHRlc3RzL3N3X3N5bmMuYyB8IDk1ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDkwIGluc2Vy dGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdGVzdHMvc3dfc3luYy5jIGIv dGVzdHMvc3dfc3luYy5jCmluZGV4IDViNjUzMmMyLi5mMzJkYWU1YSAxMDA2NDQKLS0tIGEvdGVz dHMvc3dfc3luYy5jCisrKyBiL3Rlc3RzL3N3X3N5bmMuYwpAQCAtMTAyLDI0ICsxMDIsMjggQEAg c3RhdGljIHZvaWQgdGVzdF9zeW5jX2J1c3kodm9pZCkKIAogCS8qIE1ha2Ugc3VyZSB0aGF0IGZl bmNlIGhhcyBub3QgYmVlbiBzaWduYWxlZCB5ZXQgKi8KIAlyZXQgPSBzeW5jX3dhaXQoZmVuY2Us IDApOwotCWlndF9hc3NlcnRfZihyZXQgPT0gLTEgJiYgZXJybm8gPT0gRVRJTUUsICJGZW5jZSBz aWduYWxlZCBlYXJseSAodGltZWxpbmUgdmFsdWUgMCwgZmVuY2Ugc2Vxbm8gNSlcbiIpOworCWln dF9hc3NlcnRfZihyZXQgPT0gLTEgJiYgZXJybm8gPT0gRVRJTUUsCisJICAgICJGZW5jZSBzaWdu YWxlZCBlYXJseSAodGltZWxpbmUgdmFsdWUgMCwgZmVuY2Ugc2Vxbm8gNSlcbiIpOwogCiAJLyog QWR2YW5jZSB0aW1lbGluZSBmcm9tIDAgLT4gMSAqLwogCXN3X3N5bmNfdGltZWxpbmVfaW5jKHRp bWVsaW5lLCAxKTsKIAogCS8qIE1ha2Ugc3VyZSB0aGF0IGZlbmNlIGhhcyBub3QgYmVlbiBzaWdu YWxlZCB5ZXQgKi8KIAlyZXQgPSBzeW5jX3dhaXQoZmVuY2UsIDApOwotCWlndF9hc3NlcnRfZihy ZXQgPT0gLTEgJiYgZXJybm8gPT0gRVRJTUUsICJGZW5jZSBzaWduYWxlZCBlYXJseSAodGltZWxp bmUgdmFsdWUgMSwgZmVuY2Ugc2Vxbm8gNSlcbiIpOworCWlndF9hc3NlcnRfZihyZXQgPT0gLTEg JiYgZXJybm8gPT0gRVRJTUUsCisJICAgICJGZW5jZSBzaWduYWxlZCBlYXJseSAodGltZWxpbmUg dmFsdWUgMSwgZmVuY2Ugc2Vxbm8gNSlcbiIpOwogCiAJLyogQWR2YW5jZSB0aW1lbGluZSBmcm9t IDEgLT4gNTogc2lnbmFsaW5nIHRoZSBmZW5jZSAoc2Vxbm8gNSkqLwogCXN3X3N5bmNfdGltZWxp bmVfaW5jKHRpbWVsaW5lLCA0KTsKIAlyZXQgPSBzeW5jX3dhaXQoZmVuY2UsIDApOwotCWlndF9h c3NlcnRfZihyZXQgPT0gMCwgIkZlbmNlIG5vdCBzaWduYWxlZCAodGltZWxpbmUgdmFsdWUgNSwg ZmVuY2Ugc2Vxbm8gNSlcbiIpOworCWlndF9hc3NlcnRfZihyZXQgPT0gMCwKKwkgICAgIkZlbmNl IG5vdCBzaWduYWxlZCAodGltZWxpbmUgdmFsdWUgNSwgZmVuY2Ugc2Vxbm8gNSlcbiIpOwogCiAJ LyogR28gZXZlbiBmdXJ0aGVyLCBhbmQgY29uZmlybSB3YWl0IHN0aWxsIHN1Y2NlZWRzICovCiAJ c3dfc3luY190aW1lbGluZV9pbmModGltZWxpbmUsIDUpOwogCXJldCA9IHN5bmNfd2FpdChmZW5j ZSwgMCk7Ci0JaWd0X2Fzc2VydF9mKHJldCA9PSAwLCAiRmVuY2Ugbm90IHNpZ25hbGVkICh0aW1l bGluZSB2YWx1ZSAxMCwgZmVuY2Ugc2Vxbm8gNSlcbiIpOworCWlndF9hc3NlcnRfZihyZXQgPT0g MCwKKwkgICAgIkZlbmNlIG5vdCBzaWduYWxlZCAodGltZWxpbmUgdmFsdWUgMTAsIGZlbmNlIHNl cW5vIDUpXG4iKTsKIAogCXNlcW5vID0gMTA7CiAJZm9yX2VhY2hfcHJpbWVfbnVtYmVyKHByaW1l LCAxMDApIHsKQEAgLTEzMCw3ICsxMzQsOCBAQCBzdGF0aWMgdm9pZCB0ZXN0X3N5bmNfYnVzeSh2 b2lkKQogCQlzd19zeW5jX3RpbWVsaW5lX2luYyh0aW1lbGluZSwgcHJpbWUpOwogCiAJCXJldCA9 IHN5bmNfd2FpdChmZW5jZV9wcmltZSwgMCk7Ci0JCWlndF9hc3NlcnRfZihyZXQgPT0gMCwgIkZl bmNlIG5vdCBzaWduYWxlZCBkdXJpbmcgdGVzdCBvZiBwcmltZSB0aW1lbGluZSBpbmNyZW1lbnRz XG4iKTsKKwkJaWd0X2Fzc2VydF9mKHJldCA9PSAwLAorCQkgICAgIkZlbmNlIG5vdCBzaWduYWxl ZCBkdXJpbmcgdGVzdCBvZiBwcmltZSB0aW1lbGluZSBpbmNyZW1lbnRzXG4iKTsKIAkJY2xvc2Uo ZmVuY2VfcHJpbWUpOwogCX0KIApAQCAtMzEyLDYgKzMxNyw4MyBAQCBzdGF0aWMgdm9pZCB0ZXN0 X3N5bmNfbXVsdGlfY29uc3VtZXIodm9pZCkKIAlpZ3RfYXNzZXJ0X2YodGhyZWFkX3JldCA9PSAw LCAiQSBzeW5jIHRocmVhZCByZXBvcnRlZCBmYWlsdXJlLlxuIik7CiB9CiAKKyNkZWZpbmUgTVVM VElfQ09OU1VNRVJfUFJPRFVDRVJfVEhSRUFEUyA4CisjZGVmaW5lIE1VTFRJX0NPTlNVTUVSX1BS T0RVQ0VSX0lURVJBVElPTlMgKDEgPDwgMTQpCitzdGF0aWMgdm9pZCAqIHRlc3Rfc3luY19tdWx0 aV9jb25zdW1lcl9wcm9kdWNlcl90aHJlYWQodm9pZCAqYXJnKQoreworCWRhdGFfdCAqZGF0YSA9 IGFyZzsKKwlpbnQgdGhyZWFkX2lkID0gZGF0YS0+dGhyZWFkX2lkOworCWludCB0aW1lbGluZSA9 IGRhdGEtPnRpbWVsaW5lOworCWludCByZXQsIGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgTVVMVElf Q09OU1VNRVJfUFJPRFVDRVJfSVRFUkFUSU9OUzsgaSsrKSB7CisJCWludCBuZXh0X3BvaW50ID0g aSAqIE1VTFRJX0NPTlNVTUVSX1BST0RVQ0VSX1RIUkVBRFMgKyB0aHJlYWRfaWQ7CisJCWludCBm ZW5jZSA9IHN3X3N5bmNfZmVuY2VfY3JlYXRlKHRpbWVsaW5lLCBuZXh0X3BvaW50KTsKKworCQly ZXQgPSBzeW5jX3dhaXQoZmVuY2UsIDEwMDApOworCQlpZiAocmV0ID09IC0xKQorCQl7CisJCQly ZXR1cm4gKHZvaWQgKikgMTsKKwkJfQorCisJCWlmICgqKGRhdGEtPmNvdW50ZXIpICE9IG5leHRf cG9pbnQpCisJCXsKKwkJCXJldHVybiAodm9pZCAqKSAxOworCQl9CisKKwkJKCpkYXRhLT5jb3Vu dGVyKSsrOworCisJCS8qIEtpY2sgb2ZmIHRoZSBuZXh0IHRocmVhZC4gKi8KKwkJc3dfc3luY190 aW1lbGluZV9pbmModGltZWxpbmUsIDEpOworCisJCWNsb3NlKGZlbmNlKTsKKwl9CisJcmV0dXJu IE5VTEw7Cit9CisKK3N0YXRpYyB2b2lkIHRlc3Rfc3luY19tdWx0aV9jb25zdW1lcl9wcm9kdWNl cih2b2lkKQoreworCWRhdGFfdCBkYXRhX2FycltNVUxUSV9DT05TVU1FUl9QUk9EVUNFUl9USFJF QURTXTsKKwlwdGhyZWFkX3QgdGhyZWFkX2FycltNVUxUSV9DT05TVU1FUl9QUk9EVUNFUl9USFJF QURTXTsKKwlpbnQgdGltZWxpbmU7CisJdm9sYXRpbGUgdWludDMyX3QgY291bnRlciA9IDA7CisJ dWludHB0cl90IHRocmVhZF9yZXQgPSAwOworCWRhdGFfdCBkYXRhOworCWludCBpLCByZXQ7CisK Kwl0aW1lbGluZSA9IHN3X3N5bmNfdGltZWxpbmVfY3JlYXRlKCk7CisKKwlkYXRhLmNvdW50ZXIg PSAmY291bnRlcjsKKwlkYXRhLnRpbWVsaW5lID0gdGltZWxpbmU7CisKKwkvKiBTdGFydCBjb25z dW1lciB0aHJlYWRzLiAqLworCWZvciAoaSA9IDA7IGkgPCBNVUxUSV9DT05TVU1FUl9QUk9EVUNF Ul9USFJFQURTOyBpKyspCisJeworCQlkYXRhX2FycltpXSA9IGRhdGE7CisJCWRhdGFfYXJyW2ld LnRocmVhZF9pZCA9IGk7CisJCXJldCA9IHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWRfYXJyW2ldLCBO VUxMLAorCQkJCSAgICAgdGVzdF9zeW5jX211bHRpX2NvbnN1bWVyX3Byb2R1Y2VyX3RocmVhZCwK KwkJCQkgICAgICh2b2lkICopICYoZGF0YV9hcnJbaV0pKTsKKwkJaWd0X2Fzc2VydF9lcShyZXQs IDApOworCX0KKworCS8qIFdhaXQgZm9yIHRocmVhZHMgdG8gY29tcGxldGUuICovCisJZm9yIChp ID0gMDsgaSA8IE1VTFRJX0NPTlNVTUVSX1BST0RVQ0VSX1RIUkVBRFM7IGkrKykKKwl7CisJCXVp bnRwdHJfdCBsb2NhbF90aHJlYWRfcmV0OworCQlwdGhyZWFkX2pvaW4odGhyZWFkX2FycltpXSwg KHZvaWQgKiopJmxvY2FsX3RocmVhZF9yZXQpOworCQl0aHJlYWRfcmV0IHw9IGxvY2FsX3RocmVh ZF9yZXQ7CisJfQorCisJY2xvc2UodGltZWxpbmUpOworCisJaWd0X2Fzc2VydF9mKGNvdW50ZXIg PT0gTVVMVElfQ09OU1VNRVJfUFJPRFVDRVJfVEhSRUFEUyAqCisJICAgICAgICAgICAgICAgICAg ICAgICAgTVVMVElfQ09OU1VNRVJfUFJPRFVDRVJfSVRFUkFUSU9OUywKKwkJICAgICAiQ291bnRl ciBoYXMgdW5leHBlY3RlZCB2YWx1ZS5cbiIpOworCisJaWd0X2Fzc2VydF9mKHRocmVhZF9yZXQg PT0gMCwgIkEgc3luYyB0aHJlYWQgcmVwb3J0ZWQgZmFpbHVyZS5cbiIpOworfQorCiBpZ3RfbWFp bgogewogCWlndF9zdWJ0ZXN0KCJhbGxvY190aW1lbGluZSIpCkBAIC0zMzcsNSArNDE5LDggQEAg aWd0X21haW4KIAogCWlndF9zdWJ0ZXN0KCJzeW5jX211bHRpX2NvbnN1bWVyIikKIAkJdGVzdF9z eW5jX211bHRpX2NvbnN1bWVyKCk7CisKKwlpZ3Rfc3VidGVzdCgic3luY19tdWx0aV9jb25zdW1l cl9wcm9kdWNlciIpCisJCXRlc3Rfc3luY19tdWx0aV9jb25zdW1lcl9wcm9kdWNlcigpOwogfQog Ci0tIAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=