From mboxrd@z Thu Jan 1 00:00:00 1970 From: Derek Morton Subject: [PATCH i-g-t v3] gem_flink_race/prime_self_import: Improve test reliability Date: Mon, 14 Dec 2015 09:59:17 +0000 Message-ID: <1450087157-30462-1-git-send-email-derek.j.morton@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 32D3C6E421 for ; Mon, 14 Dec 2015 01:59:24 -0800 (PST) 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 Cc: daniel.vetter@ffwll.ch, thomas.wood@intel.com List-Id: intel-gfx@lists.freedesktop.org Z2VtX2ZsaW5rX3JhY2UgYW5kIHByaW1lX3NlbGZfaW1wb3J0IGhhdmUgc3VidGVzdHMgd2hpY2gg cmVhZCB0aGUKbnVtYmVyIG9mIG9wZW4gZ2VtIG9iamVjdHMgZnJvbSBkZWJ1Z2ZzIHRvIGRldGVy bWluZSBpZiBvYmplY3RzIGhhdmUKbGVha2VkIGR1cmluZyB0aGUgdGVzdC4gSG93ZXZlciB0aGUg dGVzdCBjYW4gZmFpbCBzcG9yYWRpY2FsbHkgaWYKdGhlIG51bWJlciBvZiBnZW0gb2JqZWN0cyBj aGFuZ2VzIGR1ZSB0byBvdGhlciBwcm9jZXNzIGFjdGl2aXR5LgpUaGlzIHBhdGNoIGludHJvZHVj ZXMgYSBjaGFuZ2UgdG8gY2hlY2sgdGhlIG51bWJlciBvZiBnZW0gb2JqZWN0cwpzZXZlcmFsIHRp bWVzIHRvIGZpbHRlciBvdXQgYW55IGZsdWN0dWF0aW9ucy4KCnYyOiBNb3ZlZCB0aGUgY29tbW9u IGNvZGUgdG8gYSBsaWJyYXJ5IGFuZCBtYWRlIHRoZSBsb29wIGFuZHJvaWQKc3BlY2lmaWMgKERh bmllbCBWZXR0ZXIpCnYzOiBSZW5hbWVkIGdldF9zdGFibGVfb2JqX2NvdW50IC0+IGlndF9nZXRf c3RhYmxlX29ial9jb3VudAoKU2lnbmVkLW9mZi1ieTogRGVyZWsgTW9ydG9uIDxkZXJlay5qLm1v cnRvbkBpbnRlbC5jb20+Ci0tLQogbGliL2lndF9kZWJ1Z2ZzLmMgICAgICAgICB8IDU4ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBsaWIvaWd0X2RlYnVn ZnMuaCAgICAgICAgIHwgIDYgKysrKysKIHRlc3RzL2dlbV9mbGlua19yYWNlLmMgICAgfCAyNSAr KystLS0tLS0tLS0tLS0tLS0tLQogdGVzdHMvcHJpbWVfc2VsZl9pbXBvcnQuYyB8IDMxICsrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwg NDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliL2lndF9kZWJ1Z2ZzLmMgYi9saWIvaWd0 X2RlYnVnZnMuYwppbmRleCAyYzNiMWNmLi40MzIyZThlIDEwMDY0NAotLS0gYS9saWIvaWd0X2Rl YnVnZnMuYworKysgYi9saWIvaWd0X2RlYnVnZnMuYwpAQCAtNjY3LDMgKzY2Nyw2MSBAQCB2b2lk IGlndF9lbmFibGVfcHJlZmF1bHQodm9pZCkKIHsKIAlpZ3RfcHJlZmF1bHRfY29udHJvbCh0cnVl KTsKIH0KKworc3RhdGljIGludCBnZXRfb2JqZWN0X2NvdW50KHZvaWQpCit7CisJRklMRSAqZmls ZTsKKwlpbnQgcmV0LCBzY2FubmVkOworCisJaWd0X2Ryb3BfY2FjaGVzX3NldChEUk9QX1JFVElS RSB8IERST1BfQUNUSVZFKTsKKworCWZpbGUgPSBpZ3RfZGVidWdmc19mb3BlbigiaTkxNV9nZW1f b2JqZWN0cyIsICJyIik7CisKKwlzY2FubmVkID0gZnNjYW5mKGZpbGUsICIlaSBvYmplY3RzIiwg JnJldCk7CisJaWd0X2Fzc2VydF9lcShzY2FubmVkLCAxKTsKKworCXJldHVybiByZXQ7Cit9CisK Ky8qKgorICogaWd0X2dldF9zdGFibGVfb2JqX2NvdW50OgorICogQGRyaXZlcjogZmQgdG8gZHJt L2k5MTUgR0VNIGRyaXZlcgorICoKKyAqIFRoaXMgcHV0cyB0aGUgZHJpdmVyIGludG8gYSBzdGFi bGUgKHF1aWVzY2VudCkgc3RhdGUgYW5kIHRoZW4gcmV0dXJucyB0aGUKKyAqIGN1cnJlbnQgbnVt YmVyIG9mIGdlbSBidWZmZXIgb2JqZWN0cyBhcyByZXBvcnRlZCBpbiB0aGUgaTkxNV9nZW1fb2Jq ZWN0cworICogZGVidWdGUyBpbnRlcmZhY2UuCisgKi8KK2ludCBpZ3RfZ2V0X3N0YWJsZV9vYmpf Y291bnQoaW50IGRyaXZlcikKK3sKKwlpbnQgb2JqX2NvdW50OworCWdlbV9xdWllc2NlbnRfZ3B1 KGRyaXZlcik7CisJb2JqX2NvdW50ID0gZ2V0X29iamVjdF9jb3VudCgpOworCS8qIFRoZSB0ZXN0 IHJlbGllcyBvbiB0aGUgc3lzdGVtIGJlaW5nIGluIHRoZSBzYW1lIHN0YXRlIGJlZm9yZSBhbmQK KwkgKiBhZnRlciB0aGUgdGVzdCBzbyBhbnkgZGlmZmVyZW5jZSBpbiB0aGUgb2JqZWN0IGNvdW50 IGlzIGEgcmVzdWx0IG9mCisJICogbGVha3MgZHVyaW5nIHRoZSB0ZXN0LiBnZW1fcXVpZXNjZW50 X2dwdSgpIG1vc3RseSBhY2hpZXZlcyB0aGlzIGJ1dAorCSAqIG9uIGFuZHJvaWQgb2NjYXNpb25h bGx5IG9ial9jb3VudCBjYW4gc3RpbGwgY2hhbmdlIGJyaWVmbHkuCisJICogVGhlIGxvb3AgZW5z dXJlcyBvYmpfY291bnQgaGFzIHJlbWFpbmVkIHN0YWJsZSBvdmVyIHNldmVyYWwgY2hlY2tzCisJ ICovCisjaWZkZWYgQU5EUk9JRAorCXsKKwkJaW50IGxvb3BfY291bnQgPSAwOworCQlpbnQgcHJl dl9vYmpfY291bnQgPSBvYmpfY291bnQ7CisJCXdoaWxlIChsb29wX2NvdW50IDwgNCkgeworCQkJ dXNsZWVwKDIwMDAwMCk7CisJCQlnZW1fcXVpZXNjZW50X2dwdShkcml2ZXIpOworCQkJb2JqX2Nv dW50ID0gZ2V0X29iamVjdF9jb3VudCgpOworCQkJaWYgKG9ial9jb3VudCA9PSBwcmV2X29ial9j b3VudCkgeworCQkJCWxvb3BfY291bnQrKzsKKwkJCX0gZWxzZSB7CisJCQkJaWd0X2RlYnVnKCJs b29wX2NvdW50PSVkLCBvYmpfY291bnQ9JWQsIHByZXZfb2JqX2NvdW50PSVkXG4iLAorCQkJCQls b29wX2NvdW50LCBvYmpfY291bnQsIHByZXZfb2JqX2NvdW50KTsKKwkJCQlsb29wX2NvdW50ID0g MDsKKwkJCQlwcmV2X29ial9jb3VudCA9IG9ial9jb3VudDsKKwkJCX0KKworCQl9CisJfQorI2Vu ZGlmCisJcmV0dXJuIG9ial9jb3VudDsKK30KKwpkaWZmIC0tZ2l0IGEvbGliL2lndF9kZWJ1Z2Zz LmggYi9saWIvaWd0X2RlYnVnZnMuaAppbmRleCBiYmY3ZjY5Li4yNDAxOGViIDEwMDY0NAotLS0g YS9saWIvaWd0X2RlYnVnZnMuaAorKysgYi9saWIvaWd0X2RlYnVnZnMuaApAQCAtMTY1LDQgKzE2 NSwxMCBAQCB2b2lkIGlndF9kcm9wX2NhY2hlc19zZXQodWludDY0X3QgdmFsKTsKIHZvaWQgaWd0 X2Rpc2FibGVfcHJlZmF1bHQodm9pZCk7CiB2b2lkIGlndF9lbmFibGVfcHJlZmF1bHQodm9pZCk7 CiAKKy8qCisgKiBQdXQgdGhlIGRyaXZlciBpbnRvIGEgc3RhYmxlIChxdWllc2NlbnQpIHN0YXRl IGFuZCBnZXQgdGhlIGN1cnJlbnQgbnVtYmVyIG9mCisgKiBnZW0gYnVmZmVyIG9iamVjdHMKKyAq LworaW50IGlndF9nZXRfc3RhYmxlX29ial9jb3VudChpbnQgZHJpdmVyKTsKKwogI2VuZGlmIC8q IF9fSUdUX0RFQlVHRlNfSF9fICovCmRpZmYgLS1naXQgYS90ZXN0cy9nZW1fZmxpbmtfcmFjZS5j IGIvdGVzdHMvZ2VtX2ZsaW5rX3JhY2UuYwppbmRleCBiMTdlZjg1Li4zMGUzM2Y2IDEwMDY0NAot LS0gYS90ZXN0cy9nZW1fZmxpbmtfcmFjZS5jCisrKyBiL3Rlc3RzL2dlbV9mbGlua19yYWNlLmMK QEAgLTQ0LDI4ICs0NCwxMSBAQCBJR1RfVEVTVF9ERVNDUklQVElPTigiQ2hlY2sgZm9yIGZsaW5r L29wZW4gdnMuIGdlbSBjbG9zZSByYWNlcy4iKTsKICAqIGluIHRoZSBmbGluayBuYW1lIGFuZCBj b3JyZXNwb25kaW5nIHJlZmVyZW5jZSBnZXR0aW5nIGxlYWtlZC4KICAqLwogCi0vKiBXZSB3YW50 IGxvY2tsZXNzIGFuZCBJJ20gdG8gbGF6eSB0byBkaWcgb3V0IGFuIGF0b21pYyBsaWJhcmFyeS4g T24geDg2IHRoaXMKKy8qIFdlIHdhbnQgbG9ja2xlc3MgYW5kIEknbSB0byBsYXp5IHRvIGRpZyBv dXQgYW4gYXRvbWljIGxpYnJhcnkuIE9uIHg4NiB0aGlzCiAgKiB3b3JrcywgdG9vLiAqLwogdm9s YXRpbGUgaW50IHBsc19kaWUgPSAwOwogaW50IGZkOwogCi1zdGF0aWMgaW50IGdldF9vYmplY3Rf Y291bnQodm9pZCkKLXsKLQlGSUxFICpmaWxlOwotCWludCBzY2FubmVkLCByZXQ7Ci0KLQlpZ3Rf ZHJvcF9jYWNoZXNfc2V0KERST1BfUkVUSVJFIHwgRFJPUF9BQ1RJVkUpOwotCi0JZmlsZSA9IGln dF9kZWJ1Z2ZzX2ZvcGVuKCJpOTE1X2dlbV9vYmplY3RzIiwgInIiKTsKLQotCXNjYW5uZWQgPSBm c2NhbmYoZmlsZSwgIiVpIG9iamVjdHMiLCAmcmV0KTsKLQlpZ3RfYXNzZXJ0X2VxKHNjYW5uZWQs IDEpOwotCWlndF9kZWJ1ZygiUmVwb3J0cyAlZCBvYmplY3RzXG4iLCByZXQpOwotCi0JcmV0dXJu IHJldDsKLX0KLQotCiBzdGF0aWMgdm9pZCAqdGhyZWFkX2ZuX2ZsaW5rX25hbWUodm9pZCAqcCkK IHsKIAlzdHJ1Y3QgZHJtX2dlbV9vcGVuIG9wZW5fc3RydWN0OwpAQCAtMTY0LDggKzE0Nyw3IEBA IHN0YXRpYyB2b2lkIHRlc3RfZmxpbmtfY2xvc2Uodm9pZCkKIAkgKiB1cCB0aGUgY291bnRzICov CiAJZmFrZSA9IGRybV9vcGVuX2RyaXZlcihEUklWRVJfSU5URUwpOwogCi0JZ2VtX3F1aWVzY2Vu dF9ncHUoZmFrZSk7Ci0Jb2JqX2NvdW50ID0gZ2V0X29iamVjdF9jb3VudCgpOworCW9ial9jb3Vu dCA9IGlndF9nZXRfc3RhYmxlX29ial9jb3VudChmYWtlKTsKIAogCW51bV90aHJlYWRzID0gc3lz Y29uZihfU0NfTlBST0NFU1NPUlNfT05MTik7CiAKQEAgLTE5MCw4ICsxNzIsNyBAQCBzdGF0aWMg dm9pZCB0ZXN0X2ZsaW5rX2Nsb3NlKHZvaWQpCiAKIAljbG9zZShmZCk7CiAKLQlnZW1fcXVpZXNj ZW50X2dwdShmYWtlKTsKLQlvYmpfY291bnQgPSBnZXRfb2JqZWN0X2NvdW50KCkgLSBvYmpfY291 bnQ7CisJb2JqX2NvdW50ID0gaWd0X2dldF9zdGFibGVfb2JqX2NvdW50KGZha2UpIC0gb2JqX2Nv dW50OwogCiAJaWd0X2luZm8oImxlYWtlZCAlaSBvYmplY3RzXG4iLCBvYmpfY291bnQpOwogCmRp ZmYgLS1naXQgYS90ZXN0cy9wcmltZV9zZWxmX2ltcG9ydC5jIGIvdGVzdHMvcHJpbWVfc2VsZl9p bXBvcnQuYwppbmRleCA5MWZlMjMxLi45OTIzMzRkIDEwMDY0NAotLS0gYS90ZXN0cy9wcmltZV9z ZWxmX2ltcG9ydC5jCisrKyBiL3Rlc3RzL3ByaW1lX3NlbGZfaW1wb3J0LmMKQEAgLTQ3LDcgKzQ3 LDcgQEAKICNpbmNsdWRlICJkcm0uaCIKIAogSUdUX1RFU1RfREVTQ1JJUFRJT04oIkNoZWNrIHdo ZXRoZXIgcHJpbWUgaW1wb3J0L2V4cG9ydCB3b3JrcyBvbiB0aGUgc2FtZSIKLQkJICAgICAiIGRl dmljZS4iKTsKKwkJICAgICAiIGRldmljZS4uLiBidXQgd2l0aCBkaWZmZXJlbnQgZmRzLiIpOwog CiAjZGVmaW5lIEJPX1NJWkUgKDE2KjEwMjQpCiAKQEAgLTE1Nyw3ICsxNTcsNyBAQCBzdGF0aWMg dm9pZCB0ZXN0X3dpdGhfb25lX2JvX3R3b19maWxlcyh2b2lkKQogCWRtYV9idWZfZmQyID0gcHJp bWVfaGFuZGxlX3RvX2ZkKGZkMiwgaGFuZGxlX29wZW4pOwogCWhhbmRsZV9pbXBvcnQgPSBwcmlt ZV9mZF90b19oYW5kbGUoZmQyLCBkbWFfYnVmX2ZkMik7CiAKLQkvKiBkbWEtYnVmIHNlbGZpbXBv cnRpbmcgYW4gZmxpbmsgYm8gc2hvdWxkIGdpdmUgdGhlIHNhbWUgaGFuZGxlICovCisJLyogZG1h LWJ1ZiBzZWxmIGltcG9ydGluZyBhbiBmbGluayBibyBzaG91bGQgZ2l2ZSB0aGUgc2FtZSBoYW5k bGUgKi8KIAlpZ3RfYXNzZXJ0X2VxX3UzMihoYW5kbGVfaW1wb3J0LCBoYW5kbGVfb3Blbik7CiAK IAljbG9zZShmZDEpOwpAQCAtMjExLDIxICsyMTEsNiBAQCBzdGF0aWMgdm9pZCB0ZXN0X3dpdGhf b25lX2JvKHZvaWQpCiAJY2hlY2tfYm8oZmQyLCBoYW5kbGVfaW1wb3J0MSwgZmQyLCBoYW5kbGVf aW1wb3J0MSk7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X29iamVjdF9jb3VudCh2b2lkKQotewotCUZJ TEUgKmZpbGU7Ci0JaW50IHJldCwgc2Nhbm5lZDsKLQotCWlndF9kcm9wX2NhY2hlc19zZXQoRFJP UF9SRVRJUkUgfCBEUk9QX0FDVElWRSk7Ci0KLQlmaWxlID0gaWd0X2RlYnVnZnNfZm9wZW4oImk5 MTVfZ2VtX29iamVjdHMiLCAiciIpOwotCi0Jc2Nhbm5lZCA9IGZzY2FuZihmaWxlLCAiJWkgb2Jq ZWN0cyIsICZyZXQpOwotCWlndF9hc3NlcnRfZXEoc2Nhbm5lZCwgMSk7Ci0KLQlyZXR1cm4gcmV0 OwotfQotCiBzdGF0aWMgdm9pZCAqdGhyZWFkX2ZuX3JlaW1wb3J0X3ZzX2Nsb3NlKHZvaWQgKnAp CiB7CiAJc3RydWN0IGRybV9nZW1fY2xvc2UgY2xvc2VfYm87CkBAIC0yNTgsOCArMjQzLDcgQEAg c3RhdGljIHZvaWQgdGVzdF9yZWltcG9ydF9jbG9zZV9yYWNlKHZvaWQpCiAJICogdXAgdGhlIGNv dW50cyAqLwogCWZha2UgPSBkcm1fb3Blbl9kcml2ZXIoRFJJVkVSX0lOVEVMKTsKIAotCWdlbV9x dWllc2NlbnRfZ3B1KGZha2UpOwotCW9ial9jb3VudCA9IGdldF9vYmplY3RfY291bnQoKTsKKwlv YmpfY291bnQgPSBpZ3RfZ2V0X3N0YWJsZV9vYmpfY291bnQoZmFrZSk7CiAKIAludW1fdGhyZWFk cyA9IHN5c2NvbmYoX1NDX05QUk9DRVNTT1JTX09OTE4pOwogCkBAIC0yOTAsOCArMjc0LDcgQEAg c3RhdGljIHZvaWQgdGVzdF9yZWltcG9ydF9jbG9zZV9yYWNlKHZvaWQpCiAJY2xvc2UoZmRzWzBd KTsKIAljbG9zZShmZHNbMV0pOwogCi0JZ2VtX3F1aWVzY2VudF9ncHUoZmFrZSk7Ci0Jb2JqX2Nv dW50ID0gZ2V0X29iamVjdF9jb3VudCgpIC0gb2JqX2NvdW50OworCW9ial9jb3VudCA9IGlndF9n ZXRfc3RhYmxlX29ial9jb3VudChmYWtlKSAtIG9ial9jb3VudDsKIAogCWlndF9pbmZvKCJsZWFr ZWQgJWkgb2JqZWN0c1xuIiwgb2JqX2NvdW50KTsKIApAQCAtMzUwLDggKzMzMyw3IEBAIHN0YXRp YyB2b2lkIHRlc3RfZXhwb3J0X2Nsb3NlX3JhY2Uodm9pZCkKIAkgKiB1cCB0aGUgY291bnRzICov CiAJZmFrZSA9IGRybV9vcGVuX2RyaXZlcihEUklWRVJfSU5URUwpOwogCi0JZ2VtX3F1aWVzY2Vu dF9ncHUoZmFrZSk7Ci0Jb2JqX2NvdW50ID0gZ2V0X29iamVjdF9jb3VudCgpOworCW9ial9jb3Vu dCA9IGlndF9nZXRfc3RhYmxlX29ial9jb3VudChmYWtlKTsKIAogCWZkID0gZHJtX29wZW5fZHJp dmVyKERSSVZFUl9JTlRFTCk7CiAKQEAgLTM3Myw4ICszNTUsNyBAQCBzdGF0aWMgdm9pZCB0ZXN0 X2V4cG9ydF9jbG9zZV9yYWNlKHZvaWQpCiAKIAljbG9zZShmZCk7CiAKLQlnZW1fcXVpZXNjZW50 X2dwdShmYWtlKTsKLQlvYmpfY291bnQgPSBnZXRfb2JqZWN0X2NvdW50KCkgLSBvYmpfY291bnQ7 CisJb2JqX2NvdW50ID0gaWd0X2dldF9zdGFibGVfb2JqX2NvdW50KGZha2UpIC0gb2JqX2NvdW50 OwogCiAJaWd0X2luZm8oImxlYWtlZCAlaSBvYmplY3RzXG4iLCBvYmpfY291bnQpOwogCi0tIAox LjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK