From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 677B66EB49 for ; Fri, 3 Apr 2020 09:22:44 +0000 (UTC) From: Karthik B S Date: Fri, 3 Apr 2020 14:47:04 +0530 Message-Id: <20200403091704.32232-1-karthik.b.s@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t] tests/kms_async: Add test to validate asynchronous flips List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: QXN5bmNocm9ub3VzIGZsaXBzIGFyZSBpc3N1ZWQgdXNpbmcgdGhlIHBhZ2UgZmxpcCBJT0NUTC4K VGhlIHRlc3QgY29uc2lzdHMgb2YgdHdvIHN1YnRlc3RzLiBUaGUgZmlyc3Qgc3VidGVzdCB3YWl0 cyBmb3IKdGhlIHBhZ2UgZmxpcCBldmVudCB0byBiZSByZWNldmllZCBiZWZvcmUgZ2l2aW5nIHRo ZSBuZXh0IGZsaXAsCmFuZCB0aGUgc2Vjb25kIHN1YnRlc3QgZG9lc24ndCB3YWl0IGZvciBwYWdl IGZsaXAgZXZlbnRzLgoKVGhlIHRlc3QgcGFzc2VzIGlmIHRoZSBJT0NUTCBpcyBzdWNjZXNmdWwu CgpTaWduZWQtb2ZmLWJ5OiBLYXJ0aGlrIEIgUyA8a2FydGhpay5iLnNAaW50ZWwuY29tPgpTdWdn ZXN0ZWQtYnk6IFBhdWxvIFphbm9uaSA8cGF1bG8uci56YW5vbmlAaW50ZWwuY29tPgotLS0KIHRl c3RzL01ha2VmaWxlLnNvdXJjZXMgfCAgIDEgKwogdGVzdHMva21zX2FzeW5jLmMgICAgICB8IDIw NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogdGVzdHMvbWVzb24u YnVpbGQgICAgICB8ICAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDIwOCBpbnNlcnRpb25zKCspCiBj cmVhdGUgbW9kZSAxMDA2NDQgdGVzdHMva21zX2FzeW5jLmMKCmRpZmYgLS1naXQgYS90ZXN0cy9N YWtlZmlsZS5zb3VyY2VzIGIvdGVzdHMvTWFrZWZpbGUuc291cmNlcwppbmRleCA0ZTQ0Yzk4Yy4u ZWVkZjRmY2IgMTAwNjQ0Ci0tLSBhL3Rlc3RzL01ha2VmaWxlLnNvdXJjZXMKKysrIGIvdGVzdHMv TWFrZWZpbGUuc291cmNlcwpAQCAtMjksNiArMjksNyBAQCBURVNUU19wcm9ncyA9IFwKIAlmYmRl diBcCiAJa21zXzNkIFwKIAlrbXNfYWRkZmJfYmFzaWMgXAorCWttc19hc3luYyBcCiAJa21zX2F0 b21pYyBcCiAJa21zX2F0b21pY19pbnRlcnJ1cHRpYmxlIFwKIAlrbXNfYXRvbWljX3RyYW5zaXRp b24gXApkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2FzeW5jLmMgYi90ZXN0cy9rbXNfYXN5bmMuYwpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMC4uMGUyMWY5ZjYKLS0tIC9kZXYvbnVs bAorKysgYi90ZXN0cy9rbXNfYXN5bmMuYwpAQCAtMCwwICsxLDIwNiBAQAorLyoKKyAqIENvcHly aWdodCDCqSAyMDIwIEludGVsIENvcnBvcmF0aW9uCisgKgorICogUGVybWlzc2lvbiBpcyBoZXJl YnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKKyAq IGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVz ICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJl c3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCisgKiB0aGUgcmlnaHRzIHRv IHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5z ZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQg cGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBz dWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUgY29w eXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBu ZXh0CisgKiBwYXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vi c3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCisgKiBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdB UkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQ UkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FS UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg UFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwKKyAqIFRIRSBB VVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1B R0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRS QUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORworICogRlJPTSwgT1VUIE9GIE9SIElOIENP Tk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUwor ICogSU4gVEhFIFNPRlRXQVJFLgorICoKKyAqLworCisjaW5jbHVkZSAiaWd0LmgiCisjaW5jbHVk ZSAiaWd0X2F1eC5oIgorI2luY2x1ZGUgPHBvbGwuaD4KKworI2RlZmluZSBCVUZTIDQKKyNkZWZp bmUgV0FSTV9VUF9USU1FIDIKKyNkZWZpbmUgUlVOX1RJTUUgMTAKKwordHlwZWRlZiBzdHJ1Y3Qg eworCWludCBkcm1fZmQ7CisJaWd0X2Rpc3BsYXlfdCBkaXNwbGF5OworfSBkYXRhX3Q7CisKK3N0 YXRpYyBkcm1Nb2RlQ29ubmVjdG9yUHRyIGZpbmRfY29ubmVjdG9yX2Zvcl9tb2Rlc2V0KGRhdGFf dCAqZGF0YSkKK3sKKwlpZ3Rfb3V0cHV0X3QgKm91dHB1dDsKKwlkcm1Nb2RlQ29ubmVjdG9yUHRy IHJldCA9IE5VTEw7CisKKwlmb3JfZWFjaF9jb25uZWN0ZWRfb3V0cHV0KCZkYXRhLT5kaXNwbGF5 LCBvdXRwdXQpIHsKKwkJaWYgKG91dHB1dC0+Y29uZmlnLmNvbm5lY3Rvci0+Y291bnRfbW9kZXMg PiAwKSB7CisJCQlyZXQgPSBvdXRwdXQtPmNvbmZpZy5jb25uZWN0b3I7CisJCQlicmVhazsKKwkJ fQorCX0KKworCWlndF9hc3NlcnRfZihyZXQsICJDb25uZWN0b3IgTk9UIGZvdW5kXG4iKTsKKwly ZXR1cm4gcmV0OworfQorCitzdGF0aWMgdm9pZCBmbGlwX2hhbmRsZXIoaW50IGZkXywgdW5zaWdu ZWQgaW50IHNlcXVlbmNlLCB1bnNpZ25lZCBpbnQgdHZfc2VjLAorCQkJIHVuc2lnbmVkIGludCB0 dl91c2VjLCB2b2lkICpfZGF0YSkKK3sKKwlzdGF0aWMgdW5zaWduZWQgaW50IGxhc3RfbXM7CisJ dW5zaWduZWQgaW50IGN1cl9tczsKKworCWlndF9hc3NlcnQoX2RhdGEgPT0gTlVMTCk7CisKKwlj dXJfbXMgPSB0dl9zZWMgKiAxMDAwICsgdHZfdXNlYyAvIDEwMDA7CisKKwlpZ3RfZGVidWcoIkZs aXAgaW50ZXJ2YWw6ICVkbXNcbiIsIGN1cl9tcyAtIGxhc3RfbXMpOworCisJbGFzdF9tcyA9IGN1 cl9tczsKKworCWlndF9kZWJ1ZygiRmxpcCBldmVudCByZWNlaXZlZCwgZmQ6JWQgc2VxOiV1IHR2 X3NlYzoldSwgIgorCQkgICJ0dl91c2VjOiV1IGRhdGE6JXBcbiIsCisJCSAgZmRfLCBzZXF1ZW5j ZSwgdHZfc2VjLCB0dl91c2VjLCBfZGF0YSk7Cit9CisKK3N0YXRpYyB2b2lkIHdhaXRfZmxpcF9l dmVudChkYXRhX3QgKmRhdGEpCit7CisJaW50IHJldDsKKwlkcm1FdmVudENvbnRleHQgZXZjdHg7 CisJc3RydWN0IHBvbGxmZCBwZmQ7CisJc3RhdGljIGludCB0aW1lb3V0cyA9IDA7CisKKwlldmN0 eC52ZXJzaW9uID0gMjsKKwlldmN0eC52YmxhbmtfaGFuZGxlciA9IE5VTEw7CisJZXZjdHgucGFn ZV9mbGlwX2hhbmRsZXIgPSBmbGlwX2hhbmRsZXI7CisKKwlwZmQuZmQgPSBkYXRhLT5kcm1fZmQ7 CisJcGZkLmV2ZW50cyA9IFBPTExJTjsKKwlwZmQucmV2ZW50cyA9IDA7CisKKwlyZXQgPSBwb2xs KCZwZmQsIDEsIDEwMDAwKTsKKworCXN3aXRjaCAocmV0KSB7CisJY2FzZSAwOgorCQl0aW1lb3V0 cysrOworCQlpZ3RfZGVidWcoIlBvbGwgdGltZW91dCAlZCFcbiIsIHRpbWVvdXRzKTsKKwkJYnJl YWs7CisJY2FzZSAxOgorCQlyZXQgPSBkcm1IYW5kbGVFdmVudChkYXRhLT5kcm1fZmQsICZldmN0 eCk7CisJCWlndF9hc3NlcnQocmV0ID09IDApOworCQlicmVhazsKKwlkZWZhdWx0OgorCQkvKiB1 bmV4cGVjdGVkICovCisJCWlndF9hc3NlcnQoMCk7CisJfQorfQorCitzdGF0aWMgdm9pZCBtYWtl X2ZiKGRhdGFfdCAqZGF0YSwgc3RydWN0IGlndF9mYiAqZmIsCisJCSAgICBkcm1Nb2RlQ29ubmVj dG9yUHRyIGNvbm5lY3RvciwgaW50IGluZGV4KQoreworCXVpbnQzMl90IHdpZHRoLCBoZWlnaHQ7 CisJaW50IHJlY193aWR0aDsKKworCXdpZHRoID0gY29ubmVjdG9yLT5tb2Rlc1swXS5oZGlzcGxh eTsKKwloZWlnaHQgPSBjb25uZWN0b3ItPm1vZGVzWzBdLnZkaXNwbGF5OworCisJcmVjX3dpZHRo ID0gd2lkdGggLyAoQlVGUyAqIDIpOworCisJaWd0X2NyZWF0ZV9mYihkYXRhLT5kcm1fZmQsIHdp ZHRoLCBoZWlnaHQsIERSTV9GT1JNQVRfQVJHQjg4ODgsCisJCSAgICAgIExPQ0FMX0k5MTVfRk9S TUFUX01PRF9YX1RJTEVELCBmYik7CisJaWd0X2RyYXdfZmlsbF9mYihkYXRhLT5kcm1fZmQsIGZi LCAweDg4KTsKKwlpZ3RfZHJhd19yZWN0X2ZiKGRhdGEtPmRybV9mZCwgTlVMTCwgTlVMTCwgZmIs IElHVF9EUkFXX01NQVBfQ1BVLAorCQkJIHJlY193aWR0aCoyK3JlY193aWR0aCppbmRleCwgaGVp Z2h0LzQsCisJCQkgcmVjX3dpZHRoLCBoZWlnaHQvMiwgcmFuZCgpKTsKK30KKworc3RhdGljIHZv aWQgdGVzdF9hc3luY19mbGlwKGRhdGFfdCAqZGF0YSwgYm9vbCB3YWl0X2Zvcl9mbGlwcykKK3sK KwlzdHJ1Y3QgaWd0X2ZiIGJ1ZnNbQlVGU107CisJZHJtTW9kZVJlc1B0ciByZXM7CisJZHJtTW9k ZUNvbm5lY3RvclB0ciBjb25uZWN0b3I7CisJdWludDMyX3QgY3J0Y19pZDsKKwlpbnQgaSwgcmV0 LCBmcmFtZSwgd2FybV9lbmRfZnJhbWU7CisJbG9uZyBsb25nIGludCBmcHM7CisJc3RydWN0IHRp bWV2YWwgc3RhcnQsIGVuZCwgZGlmZjsKKwlib29sIHdhcm1pbmdfdXAgPSB0cnVlOworCisJcmVz ID0gZHJtTW9kZUdldFJlc291cmNlcyhkYXRhLT5kcm1fZmQpOworCWlndF9hc3NlcnQocmVzKTsK KworCWttc3Rlc3RfdW5zZXRfYWxsX2NydGNzKGRhdGEtPmRybV9mZCwgcmVzKTsKKworCWNvbm5l Y3RvciA9IGZpbmRfY29ubmVjdG9yX2Zvcl9tb2Rlc2V0KGRhdGEpOworCWNydGNfaWQgPSBrbXN0 ZXN0X2ZpbmRfY3J0Y19mb3JfY29ubmVjdG9yKGRhdGEtPmRybV9mZCwKKwkJCQkJCSAgcmVzLCBj b25uZWN0b3IsIDApOworCisJZm9yIChpID0gMDsgaSA8IEJVRlM7IGkrKykKKwkJbWFrZV9mYihk YXRhLCAmYnVmc1tpXSwgY29ubmVjdG9yLCBpKTsKKworCXJldCA9IGRybU1vZGVTZXRDcnRjKGRh dGEtPmRybV9mZCwgY3J0Y19pZCwgYnVmc1swXS5mYl9pZCwgMCwgMCwKKwkJCSAgICAgJmNvbm5l Y3Rvci0+Y29ubmVjdG9yX2lkLCAxLCAmY29ubmVjdG9yLT5tb2Rlc1swXSk7CisJaWd0X2Fzc2Vy dChyZXQgPT0gMCk7CisKKwlnZXR0aW1lb2ZkYXkoJnN0YXJ0LCBOVUxMKTsKKwlmcmFtZSA9IDE7 CisJZG8geworCQlpbnQgZmxhZ3MgPSBEUk1fTU9ERV9QQUdFX0ZMSVBfQVNZTkM7CisKKwkJaWYg KHdhaXRfZm9yX2ZsaXBzKQorCQkJZmxhZ3MgfD0gRFJNX01PREVfUEFHRV9GTElQX0VWRU5UOwor CisJCXJldCA9IGRybU1vZGVQYWdlRmxpcChkYXRhLT5kcm1fZmQsIGNydGNfaWQsCisJCQkJICAg ICAgYnVmc1tmcmFtZSAlIDRdLmZiX2lkLAorCQkJCSAgICAgIGZsYWdzLCBOVUxMKTsKKworCQlp Z3RfYXNzZXJ0KHJldCA9PSAwIHx8IHJldCA9PSAtRUJVU1kpOworCisJCWlmICh3YWl0X2Zvcl9m bGlwcykKKwkJCXdhaXRfZmxpcF9ldmVudChkYXRhKTsKKworCQlnZXR0aW1lb2ZkYXkoJmVuZCwg TlVMTCk7CisJCXRpbWVyc3ViKCZlbmQsICZzdGFydCwgJmRpZmYpOworCisJCS8qIDJzIG9mIHdh cm0tdXAgdGltZSBmb3IgdGhlIGZyZXEgdG8gc3RhYmlsaXplICovCisJCWlmICh3YXJtaW5nX3Vw ICYmIGRpZmYudHZfc2VjID49IFdBUk1fVVBfVElNRSkgeworCQkJd2FybWluZ191cCA9IGZhbHNl OworCQkJd2FybV9lbmRfZnJhbWUgPSBmcmFtZTsKKwkJCXN0YXJ0ID0gZW5kOworCQl9CisKKwkJ ZnJhbWUrKzsKKwl9IHdoaWxlIChkaWZmLnR2X3NlYyA8IFJVTl9USU1FKTsKKworCWZwcyA9IChm cmFtZSAtIHdhcm1fZW5kX2ZyYW1lKSAqIDEwMDAgLyBSVU5fVElNRTsKKwlpZ3RfaW5mbygiZnBz OiAlbGxkLiUwM2xsZFxuIiwgZnBzIC8gMTAwMCwgZnBzICUgMTAwMCk7CisKKwlmb3IgKGkgPSAw OyBpIDwgQlVGUzsgaSsrKQorCQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwgJmJ1ZnNbaV0p OworfQorCitpZ3RfbWFpbgoreworCWRhdGFfdCBkYXRhOworCisJaWd0X2ZpeHR1cmUgeworCQlk YXRhLmRybV9mZCA9IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIoRFJJVkVSX0lOVEVMKTsKKwkJa21z dGVzdF9zZXRfdnRfZ3JhcGhpY3NfbW9kZSgpOworCQlpZ3RfZGlzcGxheV9yZXF1aXJlKCZkYXRh LmRpc3BsYXksIGRhdGEuZHJtX2ZkKTsKKwkJaWd0X2Rpc3BsYXlfcmVxdWlyZV9vdXRwdXQoJmRh dGEuZGlzcGxheSk7CisJfQorCisJaWd0X3N1YnRlc3QoImFzeW5jLWZsaXAtd2l0aC1wYWdlLWZs aXAtZXZlbnRzIikKKwkJdGVzdF9hc3luY19mbGlwKCZkYXRhLCB0cnVlKTsKKwlpZ3Rfc3VidGVz dCgiYXN5bmMtZmxpcC13aXRob3V0LXBhZ2UtZmxpcC1ldmVudHMiKQorCQl0ZXN0X2FzeW5jX2Zs aXAoJmRhdGEsIGZhbHNlKTsKKworCWlndF9maXh0dXJlCisJCWlndF9kaXNwbGF5X2ZpbmkoJmRh dGEuZGlzcGxheSk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9tZXNvbi5idWlsZCBiL3Rlc3RzL21l c29uLmJ1aWxkCmluZGV4IGU4ODJmNGRjLi4wODMwYjFjOSAxMDA2NDQKLS0tIGEvdGVzdHMvbWVz b24uYnVpbGQKKysrIGIvdGVzdHMvbWVzb24uYnVpbGQKQEAgLTEzLDYgKzEzLDcgQEAgdGVzdF9w cm9ncyA9IFsKIAknZmJkZXYnLAogCSdrbXNfM2QnLAogCSdrbXNfYWRkZmJfYmFzaWMnLAorCSdr bXNfYXN5bmMnLAogCSdrbXNfYXRvbWljJywKIAkna21zX2F0b21pY19pbnRlcnJ1cHRpYmxlJywK IAkna21zX2F0b21pY190cmFuc2l0aW9uJywKLS0gCjIuMjIuMAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRl dkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==