From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 10/10] drm/i915: Gate engine stats collection with a static key Date: Wed, 2 Aug 2017 13:39:13 +0100 Message-ID: <20170802123913.14399-1-tvrtko.ursulin@linux.intel.com> References: <20170802123249.14194-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-wr0-x241.google.com (mail-wr0-x241.google.com [IPv6:2a00:1450:400c:c0c::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 01AC96F0FD for ; Wed, 2 Aug 2017 12:39:20 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id y43so3571348wrd.0 for ; Wed, 02 Aug 2017 05:39:20 -0700 (PDT) In-Reply-To: <20170802123249.14194-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClRoaXMgcmVk dWNlcyB0aGUgY29zdCBvZiB0aGUgc29mdHdhcmUgZW5naW5lIGJ1c3luZXNzIHRyYWNraW5nCnRv IGEgc2luZ2xlIG5vLW9wIGluc3RydWN0aW9uIHdoZW4gdGhlcmUgYXJlIG5vIGxpc3RlbmVycy4K ClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZW5naW5lX2NzLmMgIHwgMTcgKysrKysr KysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8IDU0ICsrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRp b25zKCspLCAyNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9lbmdpbmVfY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9j cy5jCmluZGV4IGU3MDlmNGVkZWY5MC4uZmI2MWRmM2Y3NzBjIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9lbmdpbmVfY3MuYwpAQCAtMjEsNiArMjEsNyBAQAogICogSU4gVEhFIFNPRlRXQVJF LgogICoKICAqLworI2luY2x1ZGUgPGxpbnV4L3N0YXRpY19rZXkuaD4KIAogI2luY2x1ZGUgImk5 MTVfZHJ2LmgiCiAjaW5jbHVkZSAiaW50ZWxfcmluZ2J1ZmZlci5oIgpAQCAtMTM0Nyw2ICsxMzQ4 LDEwIEBAIHZvaWQgaW50ZWxfZW5naW5lc19tYXJrX2lkbGUoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmk5MTUpCiAJfQogfQogCitERUZJTkVfU1RBVElDX0tFWV9GQUxTRShpOTE1X2VuZ2luZV9z dGF0c19rZXkpOworc3RhdGljIERFRklORV9NVVRFWChpOTE1X2VuZ2luZV9zdGF0c19tdXRleCk7 CitzdGF0aWMgaW50IGk5MTVfZW5naW5lX3N0YXRzX3JlZjsKKwogaW50IGludGVsX2VuYWJsZV9l bmdpbmVfc3RhdHMoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogewogCXVuc2lnbmVk IGxvbmcgZmxhZ3M7CkBAIC0xMzU0LDYgKzEzNTksOCBAQCBpbnQgaW50ZWxfZW5hYmxlX2VuZ2lu ZV9zdGF0cyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJaWYgKCFpOTE1LmVuYWJs ZV9leGVjbGlzdHMpCiAJCXJldHVybiAtRU5PREVWOwogCisJbXV0ZXhfbG9jaygmaTkxNV9lbmdp bmVfc3RhdHNfbXV0ZXgpOworCiAJc3Bpbl9sb2NrX2lycXNhdmUoJmVuZ2luZS0+c3RhdHMubG9j aywgZmxhZ3MpOwogCWlmIChlbmdpbmUtPnN0YXRzLmVuYWJsZWQrKyA9PSAwKSB7CiAJCWVuZ2lu ZS0+c3RhdHMucmVmID0gMDsKQEAgLTEzNjMsMTAgKzEzNzAsMTYgQEAgaW50IGludGVsX2VuYWJs ZV9lbmdpbmVfc3RhdHMoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCX0KIAlzcGlu X3VubG9ja19pcnFyZXN0b3JlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKIAorCWlmIChp OTE1X2VuZ2luZV9zdGF0c19yZWYrKyA9PSAwKQorCQlzdGF0aWNfYnJhbmNoX2VuYWJsZSgmaTkx NV9lbmdpbmVfc3RhdHNfa2V5KTsKKworCW11dGV4X3VubG9jaygmaTkxNV9lbmdpbmVfc3RhdHNf bXV0ZXgpOworCiAJcmV0dXJuIDA7CiAKIGJ1c3k6CiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgm ZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFncyk7CisJbXV0ZXhfdW5sb2NrKCZpOTE1X2VuZ2luZV9z dGF0c19tdXRleCk7CiAKIAlyZXR1cm4gLUVCVVNZOwogfQpAQCAtMTM3OCwxMCArMTM5MSwxNCBA QCB2b2lkIGludGVsX2Rpc2FibGVfZW5naW5lX3N0YXRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSkKIAlpZiAoIWk5MTUuZW5hYmxlX2V4ZWNsaXN0cykKIAkJcmV0dXJuOwogCisJbXV0 ZXhfbG9jaygmaTkxNV9lbmdpbmVfc3RhdHNfbXV0ZXgpOwogCXNwaW5fbG9ja19pcnFzYXZlKCZl bmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKIAlXQVJOX09OX09OQ0UoZW5naW5lLT5zdGF0cy5l bmFibGVkID09IDApOwogCWVuZ2luZS0+c3RhdHMuZW5hYmxlZC0tOwogCXNwaW5fdW5sb2NrX2ly cXJlc3RvcmUoJmVuZ2luZS0+c3RhdHMubG9jaywgZmxhZ3MpOworCWlmICgtLWk5MTVfZW5naW5l X3N0YXRzX3JlZiA9PSAwKQorCQlzdGF0aWNfYnJhbmNoX2Rpc2FibGUoJmk5MTVfZW5naW5lX3N0 YXRzX2tleSk7CisJbXV0ZXhfdW5sb2NrKCZpOTE1X2VuZ2luZV9zdGF0c19tdXRleCk7CiB9CiAK IGludCBpbnRlbF9lbmFibGVfZW5naW5lc19zdGF0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5kZXggZmQ1 ZDgzOGNhN2I1Li43NGFkZDBhMThlN2QgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmgKQEAgLTc1NCw0OCArNzU0LDU0IEBAIHZvaWQgaW50ZWxfZW5naW5lc19yZXNldF9k ZWZhdWx0X3N1Ym1pc3Npb24oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpOwogc3RydWN0 IGludGVsX2VuZ2luZV9jcyAqCiBpbnRlbF9lbmdpbmVfbG9va3VwX3VzZXIoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTUsIHU4IGNsYXNzLCB1OCBpbnN0YW5jZSk7CiAKK0RFQ0xBUkVfU1RB VElDX0tFWV9GQUxTRShpOTE1X2VuZ2luZV9zdGF0c19rZXkpOworCiBzdGF0aWMgaW5saW5lIHZv aWQgaW50ZWxfZW5naW5lX2NvbnRleHRfaW4oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5l KQogewogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAKLQlpZiAoUkVBRF9PTkNFKGVuZ2luZS0+c3Rh dHMuZW5hYmxlZCkgPT0gMCkKLQkJcmV0dXJuOworCWlmIChzdGF0aWNfYnJhbmNoX3VubGlrZWx5 KCZpOTE1X2VuZ2luZV9zdGF0c19rZXkpKSB7CisJCWlmIChSRUFEX09OQ0UoZW5naW5lLT5zdGF0 cy5lbmFibGVkKSA9PSAwKQorCQkJcmV0dXJuOwogCi0Jc3Bpbl9sb2NrX2lycXNhdmUoJmVuZ2lu ZS0+c3RhdHMubG9jaywgZmxhZ3MpOworCQlzcGluX2xvY2tfaXJxc2F2ZSgmZW5naW5lLT5zdGF0 cy5sb2NrLCBmbGFncyk7CiAKLQlpZiAoZW5naW5lLT5zdGF0cy5lbmFibGVkID4gMCkgewotCQlp ZiAoZW5naW5lLT5zdGF0cy5yZWYrKyA9PSAwKQotCQkJZW5naW5lLT5zdGF0cy5zdGFydCA9IGt0 aW1lX2dldCgpOwotCQlHRU1fQlVHX09OKGVuZ2luZS0+c3RhdHMucmVmID09IDApOwotCX0KKwkJ CWlmIChlbmdpbmUtPnN0YXRzLmVuYWJsZWQgPiAwKSB7CisJCQkJaWYgKGVuZ2luZS0+c3RhdHMu cmVmKysgPT0gMCkKKwkJCQkJZW5naW5lLT5zdGF0cy5zdGFydCA9IGt0aW1lX2dldCgpOworCQkJ CUdFTV9CVUdfT04oZW5naW5lLT5zdGF0cy5yZWYgPT0gMCk7CisJCQl9CiAKLQlzcGluX3VubG9j a19pcnFyZXN0b3JlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKKwkJc3Bpbl91bmxvY2tf aXJxcmVzdG9yZSgmZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFncyk7CisJfQogfQogCiBzdGF0aWMg aW5saW5lIHZvaWQgaW50ZWxfZW5naW5lX2NvbnRleHRfb3V0KHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKmVuZ2luZSkKIHsKIAl1bnNpZ25lZCBsb25nIGZsYWdzOwogCi0JaWYgKFJFQURfT05DRShl bmdpbmUtPnN0YXRzLmVuYWJsZWQpID09IDApCi0JCXJldHVybjsKKwlpZiAoc3RhdGljX2JyYW5j aF91bmxpa2VseSgmaTkxNV9lbmdpbmVfc3RhdHNfa2V5KSkgeworCQlpZiAoUkVBRF9PTkNFKGVu Z2luZS0+c3RhdHMuZW5hYmxlZCkgPT0gMCkKKwkJCXJldHVybjsKIAotCXNwaW5fbG9ja19pcnFz YXZlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKKwkJc3Bpbl9sb2NrX2lycXNhdmUoJmVu Z2luZS0+c3RhdHMubG9jaywgZmxhZ3MpOwogCi0JaWYgKGVuZ2luZS0+c3RhdHMuZW5hYmxlZCA+ IDApIHsKLQkJLyoKLQkJICogQWZ0ZXIgdHVybmluZyBvbiBlbmdpbmUgc3RhdHMsIGNvbnRleHQg b3V0IG1pZ2h0IGJlIHRoZQotCQkgKiBmaXJzdCBldmVudCB3aGljaCB0aGVuIG5lZWRzIHRvIGJl IGlnbm9yZWQgKHJlZiA9PSAwKS4KLQkJICovCi0JCWlmIChlbmdpbmUtPnN0YXRzLnJlZiAmJiAt LWVuZ2luZS0+c3RhdHMucmVmID09IDApIHsKLQkJCWt0aW1lX3QgbGFzdCA9IGt0aW1lX3N1Yihr dGltZV9nZXQoKSwKLQkJCQkJCSBlbmdpbmUtPnN0YXRzLnN0YXJ0KTsKKwkJaWYgKGVuZ2luZS0+ c3RhdHMuZW5hYmxlZCA+IDApIHsKKwkJCS8qCisJCQkgKiBBZnRlciB0dXJuaW5nIG9uIGVuZ2lu ZSBzdGF0cywgY29udGV4dCBvdXQgbWlnaHQgYmUKKwkJCSAqIHRoZSBmaXJzdCBldmVudCB3aGlj aCB0aGVuIG5lZWRzIHRvIGJlIGlnbm9yZWQuCisJCQkgKi8KKwkJCWlmIChlbmdpbmUtPnN0YXRz LnJlZiAmJiAtLWVuZ2luZS0+c3RhdHMucmVmID09IDApIHsKKwkJCQlrdGltZV90IGxhc3QgPSBr dGltZV9zdWIoa3RpbWVfZ2V0KCksCisJCQkJCQkJIGVuZ2luZS0+c3RhdHMuc3RhcnQpOwogCi0J CQllbmdpbmUtPnN0YXRzLnRvdGFsID0ga3RpbWVfYWRkKGVuZ2luZS0+c3RhdHMudG90YWwsCi0J CQkJCQkJbGFzdCk7CisJCQkJZW5naW5lLT5zdGF0cy50b3RhbCA9CisJCQkJCWt0aW1lX2FkZChl bmdpbmUtPnN0YXRzLnRvdGFsLCBsYXN0KTsKKwkJCX0KIAkJfQotCX0KIAotCXNwaW5fdW5sb2Nr X2lycXJlc3RvcmUoJmVuZ2luZS0+c3RhdHMubG9jaywgZmxhZ3MpOworCQlzcGluX3VubG9ja19p cnFyZXN0b3JlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKKwl9CiB9CiAKIGludCBpbnRl bF9lbmFibGVfZW5naW5lX3N0YXRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7Ci0t IAoyLjkuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==