From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH i-g-t 3/3] tests/perf_pmu: Verify engine busyness accuracy Date: Tue, 19 Dec 2017 15:45:43 +0000 Message-ID: <20171219154543.10648-3-tvrtko.ursulin@linux.intel.com> References: <20171219154543.10648-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x242.google.com (mail-wm0-x242.google.com [IPv6:2a00:1450:400c:c09::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8D3DF6E116 for ; Tue, 19 Dec 2017 15:45:56 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id 64so4507695wme.3 for ; Tue, 19 Dec 2017 07:45:56 -0800 (PST) In-Reply-To: <20171219154543.10648-1-tvrtko.ursulin@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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkEgc3VidGVz dCB0byB2ZXJpZnkgdGhhdCB0aGUgZW5naW5lIGJ1c3luZXNzIGlzIHJlcG9ydGVkIHdpdGggZXhw ZWN0ZWQKYWNjdXJhY3kgb24gcGxhdGZvcm1zIHdoZXJlIHRoZSBmZWF0dXJlIGlzIGF2YWlsYWJs ZS4KCldlIHRlc3QgdGhyZWUgcGF0dGVybnM6IDIlLCA1MCUgYW5kIDk4JSBsb2FkIHBlciBlbmdp bmUuCgp2MjoKICogVXNlIHNwaW4gYmF0Y2ggaW5zdGVhZCBvZiBub3AgY2FsaWJyYXRpb24uCiAq IFZhcmlvdXMgdHdlYWtzLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51 cnN1bGluQGludGVsLmNvbT4KLS0tCiB0ZXN0cy9wZXJmX3BtdS5jIHwgMTQxICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFu Z2VkLCAxNDEgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3Rlc3RzL3BlcmZfcG11LmMgYi90 ZXN0cy9wZXJmX3BtdS5jCmluZGV4IDkzNWZlZTAzYjI1My4uM2NhODhiY2M2OTc2IDEwMDY0NAot LS0gYS90ZXN0cy9wZXJmX3BtdS5jCisrKyBiL3Rlc3RzL3BlcmZfcG11LmMKQEAgLTM1LDYgKzM1 LDcgQEAKICNpbmNsdWRlIDxkaXJlbnQuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaW5jbHVkZSA8 cG9sbC5oPgorI2luY2x1ZGUgPHNjaGVkLmg+CiAKICNpbmNsdWRlICJpZ3QuaCIKICNpbmNsdWRl ICJpZ3RfY29yZS5oIgpAQCAtOTgzLDYgKzk4NCwxMzYgQEAgdGVzdF9yYzYoaW50IGdlbV9mZCkK IAlhc3NlcnRfd2l0aGluX2Vwc2lsb24oYnVzeSAtIHByZXYsIDAuMCwgdG9sZXJhbmNlKTsKIH0K IAorc3RhdGljIHVpbnQ2NF90IF9fcG11X3JlYWRfc2luZ2xlKGludCBmZCwgdWludDY0X3QgKnRz KQoreworCXVpbnQ2NF90IGRhdGFbMl07CisKKwlpZ3RfYXNzZXJ0X2VxKHJlYWQoZmQsIGRhdGEs IHNpemVvZihkYXRhKSksIHNpemVvZihkYXRhKSk7CisKKwkqdHMgPSBkYXRhWzFdOworCisJcmV0 dXJuIGRhdGFbMF07Cit9CisKK3N0YXRpYyBkb3VibGUgX19lcnJvcihkb3VibGUgdmFsLCBkb3Vi bGUgcmVmKQoreworCXJldHVybiAoMTAwLjAgKiB2YWwgLyByZWYpIC0gMTAwLjA7Cit9CisKK3N0 YXRpYyB2b2lkIGRlYnVnX2Vycm9yKGNvbnN0IGNoYXIgKnN0ciwgZG91YmxlIHZhbCwgZG91Ymxl IHJlZikKK3sKKwlpZ3RfZGVidWcoIiVzPSUuMmYlJSAoJS4yZi8lLjJmKVxuIiwgc3RyLCBfX2Vy cm9yKHZhbCwgcmVmKSwgdmFsLCByZWYpOworfQorCitzdGF0aWMgdm9pZCBsb2dfZXJyb3IoY29u c3QgY2hhciAqc3RyLCBkb3VibGUgdmFsLCBkb3VibGUgcmVmKQoreworCWRlYnVnX2Vycm9yKHN0 ciwgdmFsLCByZWYpOworCWlndF9pbmZvKCIlcz0lLjJmJSVcbiIsIHN0ciwgX19lcnJvcih2YWws IHJlZikpOworfQorCitzdGF0aWMgdm9pZAorYWNjdXJhY3koaW50IGdlbV9mZCwgY29uc3Qgc3Ry dWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplLAorCSB1bnNpZ25lZCBsb25nIHRhcmdldF9i dXN5X3BjdCkKK3sKKwljb25zdCB1bnNpZ25lZCBpbnQgdGVzdF91cyA9IDFlNjsKKwl1bnNpZ25l ZCBsb25nIGJ1c3lfdXMgPSAyNTAwOworCXVuc2lnbmVkIGxvbmcgaWRsZV91cyA9IDEwMCAqIChi dXN5X3VzIC0gdGFyZ2V0X2J1c3lfcGN0ICoKKwkJCQlidXN5X3VzIC8gMTAwKSAvIHRhcmdldF9i dXN5X3BjdDsKKwlkb3VibGUgYnVzeV9yOworCXVpbnQ2NF90IHZhbFsyXTsKKwl1aW50NjRfdCB0 c1syXTsKKwlpbnQgZmQ7CisKKwkvKiBTYW1wbGluZyBwbGF0Zm9ybXMgY2Fubm90IHJlYWNoIHRo ZSBoaWdoIGFjY3VyYWN5IGNyaXRlcmlhLiAqLworCWlndF9yZXF1aXJlKGludGVsX2dlbihpbnRl bF9nZXRfZHJtX2RldmlkKGdlbV9mZCkpID49IDgpOworCisJd2hpbGUgKGlkbGVfdXMgPCAyNTAw KSB7CisJCWJ1c3lfdXMgKj0gMjsKKwkJaWRsZV91cyAqPSAyOworCX0KKworCWFzc2VydF93aXRo aW5fZXBzaWxvbigoZG91YmxlKWJ1c3lfdXMgLyAoYnVzeV91cyArIGlkbGVfdXMpLAorCQkJCShk b3VibGUpdGFyZ2V0X2J1c3lfcGN0IC8gMTAwLjAsIHRvbGVyYW5jZSk7CisKKwkvKiBFbWl0IFBX TSBwYXR0ZXJuIG9uIHRoZSBlbmdpbmUgZnJvbSBhIGNoaWxkLiAqLworCWlndF9mb3JrKGNoaWxk LCAxKSB7CisJCXN0cnVjdCBzY2hlZF9wYXJhbSBydCA9IHsgLnNjaGVkX3ByaW9yaXR5ID0gOTkg fTsKKwkJdW5zaWduZWQgbG9uZyBvdmVyaGVhZF9ucyA9IDA7CisJCXVuc2lnbmVkIGxvbmcgbG9v cHM7CisJCXVuc2lnbmVkIGxvbmcgaTsKKworCQkvKiBXZSBuZWVkIHRoZSBiZXN0IHNsZWVwIGFj Y3VyYWN5IHdlIGNhbiBnZXQuICovCisJCWlndF9yZXF1aXJlKHNjaGVkX3NldHNjaGVkdWxlcigw LAorCQkJCQkgICAgICAgU0NIRURfRklGTyB8IFNDSEVEX1JFU0VUX09OX0ZPUkssCisJCQkJCSAg ICAgICAmcnQpID09IDApOworCisJCS8qIE1lYXN1cmUgc2V0dXAgb3ZlcmhlYWQuICovCisJCWxv b3BzID0gdGVzdF91cyAvIDgwMDA7CisJCWZvciAoaSA9IDA7IGkgPCBsb29wczsgaSsrKSB7CisJ CQlzdHJ1Y3QgdGltZXNwZWMgc3RhcnQgPSB7IH07CisJCQlpZ3Rfc3Bpbl90ICpzcGluOworCQkJ dW5zaWduZWQgaW50IG5zOworCisJCQlpZ3RfbnNlY19lbGFwc2VkKCZzdGFydCk7CisJCQlzcGlu ID0gaWd0X3NwaW5fYmF0Y2hfbmV3KGdlbV9mZCwgMCwgZTJyaW5nKGdlbV9mZCwgZSksCisJCQkJ CQkgIDApOworCQkJaWd0X3NwaW5fYmF0Y2hfZW5kKHNwaW4pOworCQkJbnMgPSBpZ3RfbnNlY19l bGFwc2VkKCZzdGFydCk7CisJCQlnZW1fc3luYyhnZW1fZmQsIHNwaW4tPmhhbmRsZSk7CisJCQlp Z3Rfc3Bpbl9iYXRjaF9mcmVlKGdlbV9mZCwgc3Bpbik7CisJCQlvdmVyaGVhZF9ucyArPSBuczsK KwkJCXVzbGVlcCgxMDAwKTsKKwkJfQorCisJCW92ZXJoZWFkX25zIC89IHRlc3RfdXMgLyBsb29w czsKKwkJaWd0X2RlYnVnKCJzcGluIHNldHVwIG92ZXJoZWFkID0gJWx1dXNcbiIsIG92ZXJoZWFk X25zIC8gMTAwMCk7CisJCWlndF9hc3NlcnQob3ZlcmhlYWRfbnMgPCBidXN5X3VzICogMTAwMCk7 CisKKwkJLyogRW1pdCBQV00gYnVzeSBzaWduYWwuICovCisJCWxvb3BzID0gdGVzdF91cyAvIChi dXN5X3VzICsgaWRsZV91cyk7CisJCWZvciAoaSA9IDA7IGkgPCBsb29wczsgaSsrKSB7CisJCQlz dHJ1Y3QgdGltZXNwZWMgc3RhcnQgPSB7IH07CisJCQlpZ3Rfc3Bpbl90ICpzcGluOworCQkJdW5z aWduZWQgaW50IG5zOworCisJCQlzcGluID0gaWd0X3NwaW5fYmF0Y2hfbmV3KGdlbV9mZCwgMCwg ZTJyaW5nKGdlbV9mZCwgZSksCisJCQkJCQkgIDApOworCQkJbnMgPSBtZWFzdXJlZF91c2xlZXAo YnVzeV91cyAtIG92ZXJoZWFkX25zIC8gMTAwMCk7CisJCQlpZ3Rfc3Bpbl9iYXRjaF9lbmQoc3Bp bik7CisJCQlnZW1fc3luYyhnZW1fZmQsIHNwaW4tPmhhbmRsZSk7CisJCQlpZ3RfbnNlY19lbGFw c2VkKCZzdGFydCk7CisJCQlpZ3Rfc3Bpbl9iYXRjaF9mcmVlKGdlbV9mZCwgc3Bpbik7CisJCQlk ZWJ1Z19lcnJvcigiYnVzeSBlcnJvciIsIG5zLCBidXN5X3VzICogMTAwMCk7CisJCQlucyA9IGln dF9uc2VjX2VsYXBzZWQoJnN0YXJ0KTsKKworCQkJaWYgKG5zID4gaWRsZV91cyAqIDEwMDApCisJ CQkJbnMgPSAwOworCQkJZWxzZQorCQkJCW5zID0gaWRsZV91czsKKwkJCW5zID0gbWVhc3VyZWRf dXNsZWVwKG5zKTsKKwkJCWRlYnVnX2Vycm9yKCJpZGxlIGVycm9yIiwgbnMsIGlkbGVfdXMgKiAx MDAwKTsKKwkJfQorCX0KKworCS8qIExldCB0aGUgY2hpbGQgcnVuLiAqLworCXVzbGVlcCh0ZXN0 X3VzIC8gNCk7CisKKwkvKiBDb2xsZWN0IGVuZ2luZSBidXN5bmVzcyBmb3IgYSBzdWJzZXQgb2Yg Y2hpbGQgcnVudGltZS4gKi8KKwlmZCA9IG9wZW5fcG11KEk5MTVfUE1VX0VOR0lORV9CVVNZKGUt PmNsYXNzLCBlLT5pbnN0YW5jZSkpOworCXZhbFswXSA9IF9fcG11X3JlYWRfc2luZ2xlKGZkLCAm dHNbMF0pOworCXVzbGVlcCh0ZXN0X3VzIC8gMik7CisJdmFsWzFdID0gX19wbXVfcmVhZF9zaW5n bGUoZmQsICZ0c1sxXSk7CisJY2xvc2UoZmQpOworCisJaWd0X3dhaXRjaGlsZHJlbigpOworCisJ YnVzeV9yID0gKGRvdWJsZSkodmFsWzFdIC0gdmFsWzBdKSAvICh0c1sxXSAtIHRzWzBdKTsKKwor CWxvZ19lcnJvcigiZXJyb3IiLCBidXN5X3IsIHRhcmdldF9idXN5X3BjdCAvIDEwMC4wKTsKKwor CWFzc2VydF93aXRoaW5fZXBzaWxvbihidXN5X3IsIChkb3VibGUpdGFyZ2V0X2J1c3lfcGN0IC8g MTAwLjAsIDAuMTUpOworfQorCiBpZ3RfbWFpbgogewogCWNvbnN0IHVuc2lnbmVkIGludCBudW1f b3RoZXJfbWV0cmljcyA9CkBAIC0xMDExLDYgKzExNDIsOCBAQCBpZ3RfbWFpbgogCQlpbnZhbGlk X2luaXQoKTsKIAogCWZvcl9lYWNoX2VuZ2luZV9jbGFzc19pbnN0YW5jZShmZCwgZSkgeworCQlj b25zdCB1bnNpZ25lZCBpbnQgcGN0W10gPSB7IDIsIDUwLCA5OCB9OworCiAJCS8qKgogCQkgKiBU ZXN0IHRoYXQgYSBzaW5nbGUgZW5naW5lIG1ldHJpYyBjYW4gYmUgaW5pdGlhbGl6ZWQuCiAJCSAq LwpAQCAtMTA3Nyw2ICsxMjEwLDE0IEBAIGlndF9tYWluCiAJCSAqLwogCQlpZ3Rfc3VidGVzdF9m KCJtdWx0aS1jbGllbnQtJXMiLCBlLT5uYW1lKQogCQkJbXVsdGlfY2xpZW50KGZkLCBlKTsKKwor CQkvKioKKwkJKiBDaGVjayBlbmdpbmUgYnVzeW5lc3MgYWNjdXJhY3kgaXMgYXMgZXhwZWN0ZWQu CisJCSovCisJCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHBjdCk7IGkrKykgeworCQkJaWd0 X3N1YnRlc3RfZigiYnVzeS1hY2N1cmFjeS0ldS0lcyIsIHBjdFtpXSwgZS0+bmFtZSkKKwkJCQlh Y2N1cmFjeShmZCwgZSwgcGN0W2ldKTsKKwkJfQogCX0KIAogCS8qKgotLSAKMi4xNC4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK