From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 4/7] drm/i915/pmu: Add queued counter Date: Thu, 7 Jun 2018 14:24:31 +0100 Message-ID: <20180607132431.32664-1-tvrtko.ursulin@linux.intel.com> References: <20180606143919.9194-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-x244.google.com (mail-wr0-x244.google.com [IPv6:2a00:1450:400c:c0c::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 35C6E6F272 for ; Thu, 7 Jun 2018 13:24:38 +0000 (UTC) Received: by mail-wr0-x244.google.com with SMTP id x4-v6so1699348wro.11 for ; Thu, 07 Jun 2018 06:24:38 -0700 (PDT) In-Reply-To: <20180606143919.9194-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGFkZCBh IFBNVSBjb3VudGVyIHRvIGV4cG9zZSB0aGUgbnVtYmVyIG9mIHJlcXVlc3RzIHdoaWNoIGhhdmUg YmVlbgpzdWJtaXR0ZWQgZnJvbSB1c2Vyc3BhY2UgYnV0IGFyZSBub3QgeWV0IHJ1bm5hYmxlIGR1 ZSBkZXBlbmRlbmNpZXMgYW5kCnVuc2lnbmFsZWQgZmVuY2VzLgoKVGhpcyBpcyB1c2VmdWwgdG8g YW5hbHl6ZSB0aGUgb3ZlcmFsbCBsb2FkIG9mIHRoZSBzeXN0ZW0uCgp2MjoKICogUmViYXNlIGZv ciBuYW1lIGNoYW5nZSBhbmQgcmUtb3JkZXIuCiAqIERyb3AgZmxvYXRpbmcgcG9pbnQgY29uc3Rh bnQuIChDaHJpcyBXaWxzb24pCgp2MzoKICogQ2hhbmdlIHNjYWxlIHRvIDEwMjQgZm9yIGZhc3Rl ciBhcml0aG1ldGljcy4gKENocmlzIFdpbHNvbikKCnY0OgogKiBSZWZhY3RvcmVkIGZvciB0aW1l ciBwZXJpb2QgYWNjb3VudGluZy4KCnY1OgogKiBBdm9pZCA2NC1kaXZpc2lvbi4gKENocmlzIFdp bHNvbikKCnY2OgogKiBEbyBmZXdlciBkaXZpc2lvbnMgYnkgYWNjdW11bGF0aW5nIGluIHFkLm5z IHVuaXRzLiAoQ2hyaXMgV2lsc29uKQogKiBDaGFuZ2UgY291bnRlciBzY2FsZSB0byBhdm9pZCBt dWx0aXBsaWNhdGlvbiBpbiByZWFkb3V0IGFuZCBpbmNyZWFzZQogICBjb3VudGVyIGhlYWRyb29t LgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNv bT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jICAgICAgICAgfCA1OCArKysr KysrKysrKysrKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmggfCAgMiArLQogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgICAgICAgIHwg IDkgKysrLQogMyBmaWxlcyBjaGFuZ2VkLCA1NyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9wbXUuYwppbmRleCBiOGM2OTUzODY3ZWUuLmY4YTgxOTYwMGVi YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wbXUuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jCkBAIC0xNSw3ICsxNSw4IEBACiAjZGVmaW5lIEVO R0lORV9TQU1QTEVfTUFTSyBcCiAJKEJJVChJOTE1X1NBTVBMRV9CVVNZKSB8IFwKIAkgQklUKEk5 MTVfU0FNUExFX1dBSVQpIHwgXAotCSBCSVQoSTkxNV9TQU1QTEVfU0VNQSkpCisJIEJJVChJOTE1 X1NBTVBMRV9TRU1BKSB8IFwKKwkgQklUKEk5MTVfU0FNUExFX1FVRVVFRCkpCiAKICNkZWZpbmUg RU5HSU5FX1NBTVBMRV9CSVRTICgxIDw8IEk5MTVfUE1VX1NBTVBMRV9CSVRTKQogCkBAIC0xNjEs NiArMTYyLDEyIEBAIGFkZF9zYW1wbGUoc3RydWN0IGk5MTVfcG11X3NhbXBsZSAqc2FtcGxlLCB1 MzIgdmFsKQogCXNhbXBsZS0+Y3VyICs9IHZhbDsKIH0KIAorc3RhdGljIHZvaWQKK2FkZF9zYW1w bGVfbXVsdChzdHJ1Y3QgaTkxNV9wbXVfc2FtcGxlICpzYW1wbGUsIHUzMiB2YWwsIHUzMiBtdWwp Cit7CisJc2FtcGxlLT5jdXIgKz0gbXVsX3UzMl91MzIodmFsLCBtdWwpOworfQorCiBzdGF0aWMg dm9pZAogZW5naW5lc19zYW1wbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1 bnNpZ25lZCBpbnQgcGVyaW9kX25zKQogewpAQCAtMjA0LDYgKzIxMSwxMSBAQCBlbmdpbmVzX3Nh bXBsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHVuc2lnbmVkIGludCBwZXJp b2RfbnMpCiAJCWlmICh2YWwgJiBSSU5HX1dBSVRfU0VNQVBIT1JFKQogCQkJYWRkX3NhbXBsZSgm ZW5naW5lLT5wbXUuc2FtcGxlW0k5MTVfU0FNUExFX1NFTUFdLAogCQkJCSAgIHBlcmlvZF9ucyk7 CisKKwkJaWYgKGVuZ2luZS0+cG11LmVuYWJsZSAmIEJJVChJOTE1X1NBTVBMRV9RVUVVRUQpKQor CQkJYWRkX3NhbXBsZV9tdWx0KCZlbmdpbmUtPnBtdS5zYW1wbGVbSTkxNV9TQU1QTEVfUVVFVUVE XSwKKwkJCQkJYXRvbWljX3JlYWQoJmVuZ2luZS0+cmVxdWVzdF9zdGF0cy5xdWV1ZWQpLAorCQkJ CQlwZXJpb2RfbnMpOwogCX0KIAogCWlmIChmdykKQEAgLTIxMiwxMiArMjI0LDYgQEAgZW5naW5l c19zYW1wbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1bnNpZ25lZCBpbnQg cGVyaW9kX25zKQogCWludGVsX3J1bnRpbWVfcG1fcHV0KGRldl9wcml2KTsKIH0KIAotc3RhdGlj IHZvaWQKLWFkZF9zYW1wbGVfbXVsdChzdHJ1Y3QgaTkxNV9wbXVfc2FtcGxlICpzYW1wbGUsIHUz MiB2YWwsIHUzMiBtdWwpCi17Ci0Jc2FtcGxlLT5jdXIgKz0gbXVsX3UzMl91MzIodmFsLCBtdWwp OwotfQotCiBzdGF0aWMgdm9pZAogZnJlcXVlbmN5X3NhbXBsZShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsIHVuc2lnbmVkIGludCBwZXJpb2RfbnMpCiB7CkBAIC0zMjMsNiArMzI5 LDcgQEAgZW5naW5lX2V2ZW50X3N0YXR1cyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUs CiAJc3dpdGNoIChzYW1wbGUpIHsKIAljYXNlIEk5MTVfU0FNUExFX0JVU1k6CiAJY2FzZSBJOTE1 X1NBTVBMRV9XQUlUOgorCWNhc2UgSTkxNV9TQU1QTEVfUVVFVUVEOgogCQlicmVhazsKIAljYXNl IEk5MTVfU0FNUExFX1NFTUE6CiAJCWlmIChJTlRFTF9HRU4oZW5naW5lLT5pOTE1KSA8IDYpCkBA IC01NDAsNiArNTQ3LDE1IEBAIHN0YXRpYyB1NjQgX19pOTE1X3BtdV9ldmVudF9yZWFkKHN0cnVj dCBwZXJmX2V2ZW50ICpldmVudCkKIAkJCXZhbCA9IGt0aW1lX3RvX25zKGludGVsX2VuZ2luZV9n ZXRfYnVzeV90aW1lKGVuZ2luZSkpOwogCQl9IGVsc2UgewogCQkJdmFsID0gZW5naW5lLT5wbXUu c2FtcGxlW3NhbXBsZV0uY3VyOworCisJCQlpZiAoc2FtcGxlID09IEk5MTVfU0FNUExFX1FVRVVF RCkgeworCQkJCUJVSUxEX0JVR19PTihOU0VDX1BFUl9TRUMgJQorCQkJCQkgICAgIEk5MTVfU0FN UExFX1FVRVVFRF9ESVZJU09SKTsKKwkJCQkvKiB0byBxZCAqLworCQkJCXZhbCA9IGRpdl91NjQo dmFsLAorCQkJCQkgICAgICBOU0VDX1BFUl9TRUMgLworCQkJCQkgICAgICBJOTE1X1NBTVBMRV9R VUVVRURfRElWSVNPUik7CisJCQl9CiAJCX0KIAl9IGVsc2UgewogCQlzd2l0Y2ggKGV2ZW50LT5h dHRyLmNvbmZpZykgewpAQCAtNzk2LDYgKzgxMiwxNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGF0 dHJpYnV0ZV9ncm91cCAqaTkxNV9wbXVfYXR0cl9ncm91cHNbXSA9IHsKIHsgXAogCS5zYW1wbGUg PSAoX19zYW1wbGUpLCBcCiAJLm5hbWUgPSAoX19uYW1lKSwgXAorCS5zdWZmaXggPSAidW5pdCIs IFwKKwkudmFsdWUgPSAibnMiLCBcCit9CisKKyNkZWZpbmUgX19lbmdpbmVfZXZlbnRfc2NhbGUo X19zYW1wbGUsIF9fbmFtZSwgX19zY2FsZSkgXAoreyBcCisJLnNhbXBsZSA9IChfX3NhbXBsZSks IFwKKwkubmFtZSA9IChfX25hbWUpLCBcCisJLnN1ZmZpeCA9ICJzY2FsZSIsIFwKKwkudmFsdWUg PSAoX19zY2FsZSksIFwKIH0KIAogc3RhdGljIHN0cnVjdCBpOTE1X2V4dF9hdHRyaWJ1dGUgKgpA QCAtODIzLDYgKzg0OSw5IEBAIGFkZF9wbXVfYXR0cihzdHJ1Y3QgcGVyZl9wbXVfZXZlbnRzX2F0 dHIgKmF0dHIsIGNvbnN0IGNoYXIgKm5hbWUsCiAJcmV0dXJuICsrYXR0cjsKIH0KIAorLyogTm8g YnJhY2tldHMgb3IgcXVvdGVzIGJlbG93IHBsZWFzZS4gKi8KKyNkZWZpbmUgSTkxNV9TQU1QTEVf UVVFVUVEX1NDQUxFIDAuMDAxCisKIHN0YXRpYyBzdHJ1Y3QgYXR0cmlidXRlICoqCiBjcmVhdGVf ZXZlbnRfYXR0cmlidXRlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsKQEAgLTgz OSwxMCArODY4LDE0IEBAIGNyZWF0ZV9ldmVudF9hdHRyaWJ1dGVzKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICppOTE1KQogCXN0YXRpYyBjb25zdCBzdHJ1Y3QgewogCQllbnVtIGRybV9pOTE1X3Bt dV9lbmdpbmVfc2FtcGxlIHNhbXBsZTsKIAkJY2hhciAqbmFtZTsKKwkJY2hhciAqc3VmZml4Owor CQljaGFyICp2YWx1ZTsKIAl9IGVuZ2luZV9ldmVudHNbXSA9IHsKIAkJX19lbmdpbmVfZXZlbnQo STkxNV9TQU1QTEVfQlVTWSwgImJ1c3kiKSwKIAkJX19lbmdpbmVfZXZlbnQoSTkxNV9TQU1QTEVf U0VNQSwgInNlbWEiKSwKIAkJX19lbmdpbmVfZXZlbnQoSTkxNV9TQU1QTEVfV0FJVCwgIndhaXQi KSwKKwkJX19lbmdpbmVfZXZlbnRfc2NhbGUoSTkxNV9TQU1QTEVfUVVFVUVELCAicXVldWVkIiwK KwkJCQkgICAgIF9fc3RyaW5naWZ5KEk5MTVfU0FNUExFX1FVRVVFRF9TQ0FMRSkpLAogCX07CiAJ dW5zaWduZWQgaW50IGNvdW50ID0gMDsKIAlzdHJ1Y3QgcGVyZl9wbXVfZXZlbnRzX2F0dHIgKnBt dV9hdHRyID0gTlVMTCwgKnBtdV9pdGVyOwpAQCAtODUyLDYgKzg4NSw5IEBAIGNyZWF0ZV9ldmVu dF9hdHRyaWJ1dGVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQogCWVudW0gaW50ZWxf ZW5naW5lX2lkIGlkOwogCXVuc2lnbmVkIGludCBpOwogCisJQlVJTERfQlVHX09OKEk5MTVfU0FN UExFX1FVRVVFRF9ESVZJU09SICE9CisJCSAgICAgKDEgLyBJOTE1X1NBTVBMRV9RVUVVRURfU0NB TEUpKTsKKwogCS8qIENvdW50IGhvdyBtYW55IGNvdW50ZXJzIHdlIHdpbGwgYmUgZXhwb3Npbmcu ICovCiAJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZXZlbnRzKTsgaSsrKSB7CiAJCWlmICgh Y29uZmlnX3N0YXR1cyhpOTE1LCBldmVudHNbaV0uY29uZmlnKSkKQEAgLTkyOSwxMyArOTY1LDE1 IEBAIGNyZWF0ZV9ldmVudF9hdHRyaWJ1dGVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 KQogCQkJCQkJCQllbmdpbmUtPmluc3RhbmNlLAogCQkJCQkJCQllbmdpbmVfZXZlbnRzW2ldLnNh bXBsZSkpOwogCi0JCQlzdHIgPSBrYXNwcmludGYoR0ZQX0tFUk5FTCwgIiVzLSVzLnVuaXQiLAot CQkJCQllbmdpbmUtPm5hbWUsIGVuZ2luZV9ldmVudHNbaV0ubmFtZSk7CisJCQlzdHIgPSBrYXNw cmludGYoR0ZQX0tFUk5FTCwgIiVzLSVzLiVzIiwKKwkJCQkJZW5naW5lLT5uYW1lLCBlbmdpbmVf ZXZlbnRzW2ldLm5hbWUsCisJCQkJCWVuZ2luZV9ldmVudHNbaV0uc3VmZml4KTsKIAkJCWlmICgh c3RyKQogCQkJCWdvdG8gZXJyOwogCiAJCQkqYXR0cl9pdGVyKysgPSAmcG11X2l0ZXItPmF0dHIu YXR0cjsKLQkJCXBtdV9pdGVyID0gYWRkX3BtdV9hdHRyKHBtdV9pdGVyLCBzdHIsICJucyIpOwor CQkJcG11X2l0ZXIgPSBhZGRfcG11X2F0dHIocG11X2l0ZXIsIHN0ciwKKwkJCQkJCWVuZ2luZV9l dmVudHNbaV0udmFsdWUpOwogCQl9CiAJfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmgKaW5kZXggZWViN2YzNjYyMTk1Li45MDJiNjNlZWFmNTAgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTQyMCw3ICs0MjAsNyBAQCBzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzIHsKIAkJICoKIAkJICogT3VyIGludGVybmFsIHRpbWVyIHN0b3JlcyB0aGUg Y3VycmVudCBjb3VudGVycyBpbiB0aGlzIGZpZWxkLgogCQkgKi8KLSNkZWZpbmUgSTkxNV9FTkdJ TkVfU0FNUExFX01BWCAoSTkxNV9TQU1QTEVfU0VNQSArIDEpCisjZGVmaW5lIEk5MTVfRU5HSU5F X1NBTVBMRV9NQVggKEk5MTVfU0FNUExFX1FVRVVFRCArIDEpCiAJCXN0cnVjdCBpOTE1X3BtdV9z YW1wbGUgc2FtcGxlW0k5MTVfRU5HSU5FX1NBTVBMRV9NQVhdOwogCX0gcG11OwogCmRpZmYgLS1n aXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVf ZHJtLmgKaW5kZXggN2Y1NjM0Y2U4ZTg4Li5kMDFhMjYxNjBhODkgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAorKysgYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgK QEAgLTExMCw5ICsxMTAsMTMgQEAgZW51bSBkcm1faTkxNV9nZW1fZW5naW5lX2NsYXNzIHsKIGVu dW0gZHJtX2k5MTVfcG11X2VuZ2luZV9zYW1wbGUgewogCUk5MTVfU0FNUExFX0JVU1kgPSAwLAog CUk5MTVfU0FNUExFX1dBSVQgPSAxLAotCUk5MTVfU0FNUExFX1NFTUEgPSAyCisJSTkxNV9TQU1Q TEVfU0VNQSA9IDIsCisJSTkxNV9TQU1QTEVfUVVFVUVEID0gMwogfTsKIAorIC8qIERpdmlkZSBj b3VudGVyIHZhbHVlIGJ5IGRpdmlzb3IgdG8gZ2V0IHRoZSByZWFsIHZhbHVlLiAqLworI2RlZmlu ZSBJOTE1X1NBTVBMRV9RVUVVRURfRElWSVNPUiAoMTAwMCkKKwogI2RlZmluZSBJOTE1X1BNVV9T QU1QTEVfQklUUyAoNCkKICNkZWZpbmUgSTkxNV9QTVVfU0FNUExFX01BU0sgKDB4ZikKICNkZWZp bmUgSTkxNV9QTVVfU0FNUExFX0lOU1RBTkNFX0JJVFMgKDgpCkBAIC0xMzMsNiArMTM3LDkgQEAg ZW51bSBkcm1faTkxNV9wbXVfZW5naW5lX3NhbXBsZSB7CiAjZGVmaW5lIEk5MTVfUE1VX0VOR0lO RV9TRU1BKGNsYXNzLCBpbnN0YW5jZSkgXAogCV9fSTkxNV9QTVVfRU5HSU5FKGNsYXNzLCBpbnN0 YW5jZSwgSTkxNV9TQU1QTEVfU0VNQSkKIAorI2RlZmluZSBJOTE1X1BNVV9FTkdJTkVfUVVFVUVE KGNsYXNzLCBpbnN0YW5jZSkgXAorCV9fSTkxNV9QTVVfRU5HSU5FKGNsYXNzLCBpbnN0YW5jZSwg STkxNV9TQU1QTEVfUVVFVUVEKQorCiAjZGVmaW5lIF9fSTkxNV9QTVVfT1RIRVIoeCkgKF9fSTkx NV9QTVVfRU5HSU5FKDB4ZmYsIDB4ZmYsIDB4ZikgKyAxICsgKHgpKQogCiAjZGVmaW5lIEk5MTVf UE1VX0FDVFVBTF9GUkVRVUVOQ1kJX19JOTE1X1BNVV9PVEhFUigwKQotLSAKMi4xNy4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK