From mboxrd@z Thu Jan 1 00:00:00 1970 From: Abdiel Janulgue Subject: [i-g-t PATCH v7 4/5] igt/kms_flip: Use new igt_spin_batch Date: Wed, 16 Nov 2016 23:18:03 +0200 Message-ID: <1479331084-11891-5-git-send-email-abdiel.janulgue@linux.intel.com> References: <1479331084-11891-1-git-send-email-abdiel.janulgue@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 90C0F6E6AB for ; Wed, 16 Nov 2016 13:22:22 +0000 (UTC) In-Reply-To: <1479331084-11891-1-git-send-email-abdiel.janulgue@linux.intel.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 Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org djc6IFJldXNlIE5TRUNfUEVSX1NFQyBkZWZpbmVzCgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0Bj aHJpcy13aWxzb24uY28udWs+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xs LmNoPgpTaWduZWQtb2ZmLWJ5OiBBYmRpZWwgSmFudWxndWUgPGFiZGllbC5qYW51bGd1ZUBsaW51 eC5pbnRlbC5jb20+Ci0tLQogdGVzdHMva21zX2ZsaXAuYyB8IDE4OCArKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCAxODQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdGVzdHMva21z X2ZsaXAuYyBiL3Rlc3RzL2ttc19mbGlwLmMKaW5kZXggMmE5ZmUyZS4uYzBhNTFiMCAxMDA2NDQK LS0tIGEvdGVzdHMva21zX2ZsaXAuYworKysgYi90ZXN0cy9rbXNfZmxpcC5jCkBAIC04NSw5ICs4 NSw2IEBACiAjZGVmaW5lIERSTV9DQVBfVElNRVNUQU1QX01PTk9UT05JQyA2CiAjZW5kaWYKIAot I2RlZmluZSBVU0VDX1BFUl9TRUMgMTAwMDAwMEwKLSNkZWZpbmUgTlNFQ19QRVJfU0VDIDEwMDAw MDAwMDBMCi0KIGRybU1vZGVSZXMgKnJlc291cmNlczsKIGludCBkcm1fZmQ7CiBzdGF0aWMgZHJt X2ludGVsX2J1Zm1nciAqYnVmbWdyOwpAQCAtMTkxLDEwOSArMTg4LDYgQEAgc3RhdGljIHVuc2ln bmVkIGxvbmcgZ2V0dGltZV91cyh2b2lkKQogCXJldHVybiB0cy50dl9zZWMgKiAxMDAwMDAwICsg dHMudHZfbnNlYyAvIDEwMDA7CiB9CiAKLXN0YXRpYyBpbnQgY2FsaWJyYXRlX2R1bW15X2xvYWQo c3RydWN0IHRlc3Rfb3V0cHV0ICpvLAotCQkJCWNvbnN0IGNoYXIgKnJpbmdfbmFtZSwKLQkJCQlp bnQgKCplbWl0KShzdHJ1Y3QgdGVzdF9vdXRwdXQgKm8sIGludCBsaW1pdCwgaW50IHRpbWVvdXQp KQotewotCXVuc2lnbmVkIGxvbmcgc3RhcnQ7Ci0JaW50IG9wcyA9IDE7Ci0KLQlzdGFydCA9IGdl dHRpbWVfdXMoKTsKLQotCWRvIHsKLQkJdW5zaWduZWQgbG9uZyBkaWZmOwotCQlpbnQgcmV0Owot Ci0JCXJldCA9IGVtaXQobywgKG9wcysxKS8yLCAxMCk7Ci0JCWRpZmYgPSBnZXR0aW1lX3VzKCkg LSBzdGFydDsKLQotCQlpZiAocmV0IHx8IGRpZmYgLyBVU0VDX1BFUl9TRUMgPj0gMSkKLQkJCWJy ZWFrOwotCi0JCW9wcyArPSBvcHM7Ci0JfSB3aGlsZSAob3BzIDwgMTAwMDAwKTsKLQotCWlndF9k ZWJ1ZygiJXMgZHVtbXkgbG9hZCBjYWxpYnJhdGVkOiAlZCBvcGVyYXRpb25zIC8gc2Vjb25kXG4i LAotCQkgIHJpbmdfbmFtZSwgb3BzKTsKLQotCXJldHVybiBvcHM7Ci19Ci0KLXN0YXRpYyB2b2lk IGJsaXRfY29weShkcm1faW50ZWxfYm8gKmRzdCwgZHJtX2ludGVsX2JvICpzcmMsCi0JCSAgICAg IHVuc2lnbmVkIGludCB3aWR0aCwgdW5zaWduZWQgaW50IGhlaWdodCwKLQkJICAgICAgdW5zaWdu ZWQgaW50IGRzdF9waXRjaCwgdW5zaWduZWQgaW50IHNyY19waXRjaCkKLXsKLQlCTElUX0NPUFlf QkFUQ0hfU1RBUlQoMCk7Ci0JT1VUX0JBVENIKCgzIDw8IDI0KSB8IC8qIDMyIGJpdHMgKi8KLQkJ ICAoMHhjYyA8PCAxNikgfCAvKiBjb3B5IFJPUCAqLwotCQkgIGRzdF9waXRjaCk7Ci0JT1VUX0JB VENIKDAgPDwgMTYgfCAwKTsKLQlPVVRfQkFUQ0goaGVpZ2h0IDw8IDE2IHwgd2lkdGgpOwotCU9V VF9SRUxPQ19GRU5DRUQoZHN0LCBJOTE1X0dFTV9ET01BSU5fUkVOREVSLCBJOTE1X0dFTV9ET01B SU5fUkVOREVSLCAwKTsKLQlPVVRfQkFUQ0goMCA8PCAxNiB8IDApOwotCU9VVF9CQVRDSChzcmNf cGl0Y2gpOwotCU9VVF9SRUxPQ19GRU5DRUQoc3JjLCBJOTE1X0dFTV9ET01BSU5fUkVOREVSLCAw LCAwKTsKLQlBRFZBTkNFX0JBVENIKCk7Ci0KLQlpZiAoYmF0Y2gtPmdlbiA+PSA2KSB7Ci0JCUJF R0lOX0JBVENIKDMsIDApOwotCQlPVVRfQkFUQ0goWFlfU0VUVVBfQ0xJUF9CTFRfQ01EKTsKLQkJ T1VUX0JBVENIKDApOwotCQlPVVRfQkFUQ0goMCk7Ci0JCUFEVkFOQ0VfQkFUQ0goKTsKLQl9Ci19 Ci0KLXN0YXRpYyBpbnQgX2VtaXRfZHVtbXlfbG9hZF9fYmNzKHN0cnVjdCB0ZXN0X291dHB1dCAq bywgaW50IGxpbWl0LCBpbnQgdGltZW91dCkKLXsKLQlpbnQgaSwgcmV0ID0gMDsKLQlkcm1faW50 ZWxfYm8gKnNyY19ibywgKmRzdF9ibywgKmZiX2JvOwotCXN0cnVjdCBpZ3RfZmIgKmZiX2luZm8g PSAmby0+ZmJfaW5mb1tvLT5jdXJyZW50X2ZiX2lkXTsKLQotCWlndF9yZXF1aXJlKGJ1Zm1ncik7 Ci0KLQlzcmNfYm8gPSBkcm1faW50ZWxfYm9fYWxsb2MoYnVmbWdyLCAiZHVtbXlfYm8iLCAyMDQ4 KjIwNDgqNCwgNDA5Nik7Ci0JaWd0X2Fzc2VydChzcmNfYm8pOwotCi0JZHN0X2JvID0gZHJtX2lu dGVsX2JvX2FsbG9jKGJ1Zm1nciwgImR1bW15X2JvIiwgMjA0OCoyMDQ4KjQsIDQwOTYpOwotCWln dF9hc3NlcnQoZHN0X2JvKTsKLQotCWZiX2JvID0gZ2VtX2hhbmRsZV90b19saWJkcm1fYm8oYnVm bWdyLCBkcm1fZmQsICJpbXBvcnRlZCIsIGZiX2luZm8tPmdlbV9oYW5kbGUpOwotCWlndF9hc3Nl cnQoZmJfYm8pOwotCi0JZm9yIChpID0gMDsgaSA8IGxpbWl0OyBpKyspIHsKLQkJYmxpdF9jb3B5 KGRzdF9ibywgc3JjX2JvLAotCQkJICAyMDQ4LCAyMDQ4LAotCQkJICAyMDQ4KjQsIDIwNDgqNCk7 Ci0KLQkJaWd0X3N3YXAoc3JjX2JvLCBkc3RfYm8pOwotCX0KLQlibGl0X2NvcHkoZmJfYm8sIHNy Y19ibywKLQkJICBtaW4oby0+ZmJfd2lkdGgsIDIwNDgpLCBtaW4oby0+ZmJfaGVpZ2h0LCAyMDQ4 KSwKLQkJICBmYl9pbmZvLT5zdHJpZGUsIDIwNDgqNCk7Ci0JaW50ZWxfYmF0Y2hidWZmZXJfZmx1 c2goYmF0Y2gpOwotCi0JaWYgKHRpbWVvdXQgPiAwKQotCQlyZXQgPSBkcm1faW50ZWxfZ2VtX2Jv X3dhaXQoZmJfYm8sIHRpbWVvdXQgKiBOU0VDX1BFUl9TRUMpOwotCi0JZHJtX2ludGVsX2JvX3Vu cmVmZXJlbmNlKHNyY19ibyk7Ci0JZHJtX2ludGVsX2JvX3VucmVmZXJlbmNlKGRzdF9ibyk7Ci0J ZHJtX2ludGVsX2JvX3VucmVmZXJlbmNlKGZiX2JvKTsKLQotCXJldHVybiByZXQ7Ci19Ci0KLXN0 YXRpYyB2b2lkIGVtaXRfZHVtbXlfbG9hZF9fYmNzKHN0cnVjdCB0ZXN0X291dHB1dCAqbywgaW50 IHNlY29uZHMpCi17Ci0Jc3RhdGljIGludCBvcHNfcGVyX3NlYzsKLQotCWlmIChvcHNfcGVyX3Nl YyA9PSAwKQotCQlvcHNfcGVyX3NlYyA9IGNhbGlicmF0ZV9kdW1teV9sb2FkKG8sICJiY3MiLAot CQkJCQkJICAgX2VtaXRfZHVtbXlfbG9hZF9fYmNzKTsKLQotCV9lbWl0X2R1bW15X2xvYWRfX2Jj cyhvLCBzZWNvbmRzICogb3BzX3Blcl9zZWMsIDApOwotfQotCiBzdGF0aWMgdm9pZCBlbWl0X2Zl bmNlX3N0cmVzcyhzdHJ1Y3QgdGVzdF9vdXRwdXQgKm8pCiB7CiAJY29uc3QgaW50IG51bV9mZW5j ZXMgPSBnZW1fYXZhaWxhYmxlX2ZlbmNlcyhkcm1fZmQpOwpAQCAtMzM4LDgyICsyMzIsNiBAQCBz dGF0aWMgdm9pZCBlbWl0X2ZlbmNlX3N0cmVzcyhzdHJ1Y3QgdGVzdF9vdXRwdXQgKm8pCiAJZnJl ZShleGVjKTsKIH0KIAotc3RhdGljIGludCBfZW1pdF9kdW1teV9sb2FkX19yY3Moc3RydWN0IHRl c3Rfb3V0cHV0ICpvLCBpbnQgbGltaXQsIGludCB0aW1lb3V0KQotewotCWNvbnN0IHN0cnVjdCBp Z3RfZmIgKmZiX2luZm8gPSAmby0+ZmJfaW5mb1tvLT5jdXJyZW50X2ZiX2lkXTsKLQlpZ3RfcmVu ZGVyX2NvcHlmdW5jX3QgY29weWZ1bmM7Ci0Jc3RydWN0IGlndF9idWYgc2JbM10sICpzcmMsICpk c3QsICpmYjsKLQlpbnQgaSwgcmV0ID0gMDsKLQotCWlndF9yZXF1aXJlKGJ1Zm1ncik7Ci0KLQlj b3B5ZnVuYyA9IGlndF9nZXRfcmVuZGVyX2NvcHlmdW5jKGRldmlkKTsKLQlpZiAoY29weWZ1bmMg PT0gTlVMTCkKLQkJcmV0dXJuIF9lbWl0X2R1bW15X2xvYWRfX2JjcyhvLCBsaW1pdCwgdGltZW91 dCk7Ci0KLQlzYlswXS5ibyA9IGRybV9pbnRlbF9ib19hbGxvYyhidWZtZ3IsICJkdW1teV9ibyIs IDIwNDgqMjA0OCo0LCA0MDk2KTsKLQlpZ3RfYXNzZXJ0KHNiWzBdLmJvKTsKLQlzYlswXS5zaXpl ID0gc2JbMF0uYm8tPnNpemU7Ci0Jc2JbMF0udGlsaW5nID0gSTkxNV9USUxJTkdfTk9ORTsKLQlz YlswXS5kYXRhID0gTlVMTDsKLQlzYlswXS5udW1fdGlsZXMgPSBzYlswXS5iby0+c2l6ZTsKLQlz YlswXS5zdHJpZGUgPSA0ICogMjA0ODsKLQotCXNiWzFdLmJvID0gZHJtX2ludGVsX2JvX2FsbG9j KGJ1Zm1nciwgImR1bW15X2JvIiwgMjA0OCoyMDQ4KjQsIDQwOTYpOwotCWlndF9hc3NlcnQoc2Jb MV0uYm8pOwotCXNiWzFdLnNpemUgPSBzYlsxXS5iby0+c2l6ZTsKLQlzYlsxXS50aWxpbmcgPSBJ OTE1X1RJTElOR19OT05FOwotCXNiWzFdLmRhdGEgPSBOVUxMOwotCXNiWzFdLm51bV90aWxlcyA9 IHNiWzFdLmJvLT5zaXplOwotCXNiWzFdLnN0cmlkZSA9IDQgKiAyMDQ4OwotCi0Jc2JbMl0uYm8g PSBnZW1faGFuZGxlX3RvX2xpYmRybV9ibyhidWZtZ3IsIGRybV9mZCwgImltcG9ydGVkIiwgZmJf aW5mby0+Z2VtX2hhbmRsZSk7Ci0JaWd0X2Fzc2VydChzYlsyXS5ibyk7Ci0Jc2JbMl0uc2l6ZSA9 IHNiWzJdLmJvLT5zaXplOwotCXNiWzJdLnRpbGluZyA9IGlndF9mYl9tb2RfdG9fdGlsaW5nKGZi X2luZm8tPnRpbGluZyk7Ci0Jc2JbMl0uZGF0YSA9IE5VTEw7Ci0Jc2JbMl0ubnVtX3RpbGVzID0g c2JbMl0uYm8tPnNpemU7Ci0Jc2JbMl0uc3RyaWRlID0gZmJfaW5mby0+c3RyaWRlOwotCi0Jc3Jj ID0gJnNiWzBdOwotCWRzdCA9ICZzYlsxXTsKLQlmYiA9ICZzYlsyXTsKLQotCWZvciAoaSA9IDA7 IGkgPCBsaW1pdDsgaSsrKSB7Ci0JCWNvcHlmdW5jKGJhdGNoLCBOVUxMLAotCQkJIHNyYywgMCwg MCwKLQkJCSAyMDQ4LCAyMDQ4LAotCQkJIGRzdCwgMCwgMCk7Ci0KLQkJaWd0X3N3YXAoc3JjLCBk c3QpOwotCX0KLQljb3B5ZnVuYyhiYXRjaCwgTlVMTCwKLQkJIHNyYywgMCwgMCwKLQkJIG1pbihv LT5mYl93aWR0aCwgMjA0OCksIG1pbihvLT5mYl9oZWlnaHQsIDIwNDgpLAotCQkgZmIsIDAsIDAp OwotCWludGVsX2JhdGNoYnVmZmVyX2ZsdXNoKGJhdGNoKTsKLQotCWlmICh0aW1lb3V0ID4gMCkK LQkJcmV0ID0gZHJtX2ludGVsX2dlbV9ib193YWl0KGZiLT5ibywgdGltZW91dCAqIE5TRUNfUEVS X1NFQyk7Ci0KLQlkcm1faW50ZWxfYm9fdW5yZWZlcmVuY2Uoc2JbMF0uYm8pOwotCWRybV9pbnRl bF9ib191bnJlZmVyZW5jZShzYlsxXS5ibyk7Ci0JZHJtX2ludGVsX2JvX3VucmVmZXJlbmNlKHNi WzJdLmJvKTsKLQotCXJldHVybiByZXQ7Ci19Ci0KLXN0YXRpYyB2b2lkIGVtaXRfZHVtbXlfbG9h ZF9fcmNzKHN0cnVjdCB0ZXN0X291dHB1dCAqbywgaW50IHNlY29uZHMpCi17Ci0Jc3RhdGljIGlu dCBvcHNfcGVyX3NlYzsKLQotCWlmIChvcHNfcGVyX3NlYyA9PSAwKQotCQlvcHNfcGVyX3NlYyA9 IGNhbGlicmF0ZV9kdW1teV9sb2FkKG8sICJyY3MiLAotCQkJCQkJICAgX2VtaXRfZHVtbXlfbG9h ZF9fcmNzKTsKLQotCV9lbWl0X2R1bW15X2xvYWRfX2JjcyhvLCBzZWNvbmRzICogb3BzX3Blcl9z ZWMsIDApOwotfQotCiBzdGF0aWMgdm9pZCBkcG1zX29mZl9vdGhlcl9vdXRwdXRzKHN0cnVjdCB0 ZXN0X291dHB1dCAqbykKIHsKIAlpbnQgaSwgbjsKQEAgLTg3NCwxMCArNjkyLDEyIEBAIHN0YXRp YyB1bnNpZ25lZCBpbnQgcnVuX3Rlc3Rfc3RlcChzdHJ1Y3QgdGVzdF9vdXRwdXQgKm8pCiAJCW8t PmN1cnJlbnRfZmJfaWQgPSAhby0+Y3VycmVudF9mYl9pZDsKIAogCWlmIChvLT5mbGFncyAmIFRF U1RfV0lUSF9EVU1NWV9CQ1MpCi0JCWVtaXRfZHVtbXlfbG9hZF9fYmNzKG8sIDEpOworCQlpZ3Rf c3Bpbl9iYXRjaF93YWl0KGRybV9mZCwgTlNFQ19QRVJfU0VDLCBJOTE1X0VYRUNfQkxULAorCQkJ CSAgICBvLT5mYl9pbmZvW28tPmN1cnJlbnRfZmJfaWRdLmdlbV9oYW5kbGUpOwogCiAJaWYgKG8t PmZsYWdzICYgVEVTVF9XSVRIX0RVTU1ZX1JDUykKLQkJZW1pdF9kdW1teV9sb2FkX19yY3Mobywg MSk7CisJCWlndF9zcGluX2JhdGNoX3dhaXQoZHJtX2ZkLCBOU0VDX1BFUl9TRUMsIEk5MTVfRVhF Q19SRU5ERVIsCisJCQkJICAgIG8tPmZiX2luZm9bby0+Y3VycmVudF9mYl9pZF0uZ2VtX2hhbmRs ZSk7CiAKIAlpZiAoby0+ZmxhZ3MgJiBURVNUX0ZCX1JFQ1JFQVRFKQogCQlyZWNyZWF0ZV9mYihv KTsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK