From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 4/6] drm/i915/pmu: Add queued counter Date: Mon, 22 Jan 2018 18:43:56 +0000 Message-ID: <20180122184358.29660-5-tvrtko.ursulin@linux.intel.com> References: <20180122184358.29660-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-x243.google.com (mail-wr0-x243.google.com [IPv6:2a00:1450:400c:c0c::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id A93686E2A1 for ; Mon, 22 Jan 2018 18:44:12 +0000 (UTC) Received: by mail-wr0-x243.google.com with SMTP id d9so9794884wre.3 for ; Mon, 22 Jan 2018 10:44:12 -0800 (PST) In-Reply-To: <20180122184358.29660-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 bnQuIChDaHJpcyBXaWxzb24pCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtv LnVyc3VsaW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmMg ICAgICAgICB8IDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIHwgIDIgKy0KIGluY2x1ZGUvdWFwaS9kcm0v aTkxNV9kcm0uaCAgICAgICAgICAgICB8ICA5ICsrKysrKystCiAzIGZpbGVzIGNoYW5nZWQsIDQ1 IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9wbXUuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmMKaW5k ZXggY2JmY2E0YTI1NWFiLi44ZWVmZGYwOWEzMGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcG11LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wbXUuYwpA QCAtMzYsNyArMzYsOCBAQAogI2RlZmluZSBFTkdJTkVfU0FNUExFX01BU0sgXAogCShCSVQoSTkx NV9TQU1QTEVfQlVTWSkgfCBcCiAJIEJJVChJOTE1X1NBTVBMRV9XQUlUKSB8IFwKLQkgQklUKEk5 MTVfU0FNUExFX1NFTUEpKQorCSBCSVQoSTkxNV9TQU1QTEVfU0VNQSkgfCBcCisJIEJJVChJOTE1 X1NBTVBMRV9RVUVVRUQpKQogCiAjZGVmaW5lIEVOR0lORV9TQU1QTEVfQklUUyAoMSA8PCBJOTE1 X1BNVV9TQU1QTEVfQklUUykKIApAQCAtMjIwLDYgKzIyMSwxMSBAQCBzdGF0aWMgdm9pZCBlbmdp bmVzX3NhbXBsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAkJdXBkYXRl X3NhbXBsZSgmZW5naW5lLT5wbXUuc2FtcGxlW0k5MTVfU0FNUExFX1NFTUFdLAogCQkJICAgICAg UEVSSU9ELCAhISh2YWwgJiBSSU5HX1dBSVRfU0VNQVBIT1JFKSk7CisKKwkJaWYgKGVuZ2luZS0+ cG11LmVuYWJsZSAmIEJJVChJOTE1X1NBTVBMRV9RVUVVRUQpKQorCQkJdXBkYXRlX3NhbXBsZSgm ZW5naW5lLT5wbXUuc2FtcGxlW0k5MTVfU0FNUExFX1FVRVVFRF0sCisJCQkJICAgICAgSTkxNV9T QU1QTEVfUVVFVUVEX0RJVklTT1IsCisJCQkJICAgICAgYXRvbWljX3JlYWQoJmVuZ2luZS0+cmVx dWVzdF9zdGF0cy5xdWV1ZWQpKTsKIAl9CiAKIAlpZiAoZncpCkBAIC0yOTcsNiArMzAzLDcgQEAg ZW5naW5lX2V2ZW50X3N0YXR1cyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAJc3dp dGNoIChzYW1wbGUpIHsKIAljYXNlIEk5MTVfU0FNUExFX0JVU1k6CiAJY2FzZSBJOTE1X1NBTVBM RV9XQUlUOgorCWNhc2UgSTkxNV9TQU1QTEVfUVVFVUVEOgogCQlicmVhazsKIAljYXNlIEk5MTVf U0FNUExFX1NFTUE6CiAJCWlmIChJTlRFTF9HRU4oZW5naW5lLT5pOTE1KSA8IDYpCkBAIC00MDcs NiArNDE0LDkgQEAgc3RhdGljIHU2NCBfX2k5MTVfcG11X2V2ZW50X3JlYWQoc3RydWN0IHBlcmZf ZXZlbnQgKmV2ZW50KQogCQl9IGVsc2UgewogCQkJdmFsID0gZW5naW5lLT5wbXUuc2FtcGxlW3Nh bXBsZV0uY3VyOwogCQl9CisKKwkJaWYgKHNhbXBsZSA9PSBJOTE1X1NBTVBMRV9RVUVVRUQpCisJ CQl2YWwgPSBkaXZfdTY0KHZhbCwgRlJFUVVFTkNZKTsKIAl9IGVsc2UgewogCQlzd2l0Y2ggKGV2 ZW50LT5hdHRyLmNvbmZpZykgewogCQljYXNlIEk5MTVfUE1VX0FDVFVBTF9GUkVRVUVOQ1k6CkBA IC03MTksNiArNzI5LDE2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYXR0cmlidXRlX2dyb3VwICpp OTE1X3BtdV9hdHRyX2dyb3Vwc1tdID0gewogeyBcCiAJLnNhbXBsZSA9IChfX3NhbXBsZSksIFwK IAkubmFtZSA9IChfX25hbWUpLCBcCisJLnN1ZmZpeCA9ICJ1bml0IiwgXAorCS52YWx1ZSA9ICJu cyIsIFwKK30KKworI2RlZmluZSBfX2VuZ2luZV9ldmVudF9zY2FsZShfX3NhbXBsZSwgX19uYW1l LCBfX3NjYWxlKSBcCit7IFwKKwkuc2FtcGxlID0gKF9fc2FtcGxlKSwgXAorCS5uYW1lID0gKF9f bmFtZSksIFwKKwkuc3VmZml4ID0gInNjYWxlIiwgXAorCS52YWx1ZSA9IChfX3NjYWxlKSwgXAog fQogCiBzdGF0aWMgc3RydWN0IGk5MTVfZXh0X2F0dHJpYnV0ZSAqCkBAIC03NDYsNiArNzY2LDkg QEAgYWRkX3BtdV9hdHRyKHN0cnVjdCBwZXJmX3BtdV9ldmVudHNfYXR0ciAqYXR0ciwgY29uc3Qg Y2hhciAqbmFtZSwKIAlyZXR1cm4gKythdHRyOwogfQogCisvKiBObyBicmFja2V0cyBvciBxdW90 ZXMgYmVsb3cgcGxlYXNlLiAqLworI2RlZmluZSBJOTE1X1NBTVBMRV9RVUVVRURfU0NBTEUgMC4w MQorCiBzdGF0aWMgc3RydWN0IGF0dHJpYnV0ZSAqKgogY3JlYXRlX2V2ZW50X2F0dHJpYnV0ZXMo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiB7CkBAIC03NjIsMTAgKzc4NSwxNCBAQCBj cmVhdGVfZXZlbnRfYXR0cmlidXRlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAlz dGF0aWMgY29uc3Qgc3RydWN0IHsKIAkJZW51bSBkcm1faTkxNV9wbXVfZW5naW5lX3NhbXBsZSBz YW1wbGU7CiAJCWNoYXIgKm5hbWU7CisJCWNoYXIgKnN1ZmZpeDsKKwkJY2hhciAqdmFsdWU7CiAJ fSBlbmdpbmVfZXZlbnRzW10gPSB7CiAJCV9fZW5naW5lX2V2ZW50KEk5MTVfU0FNUExFX0JVU1ks ICJidXN5IiksCiAJCV9fZW5naW5lX2V2ZW50KEk5MTVfU0FNUExFX1NFTUEsICJzZW1hIiksCiAJ CV9fZW5naW5lX2V2ZW50KEk5MTVfU0FNUExFX1dBSVQsICJ3YWl0IiksCisJCV9fZW5naW5lX2V2 ZW50X3NjYWxlKEk5MTVfU0FNUExFX1FVRVVFRCwgInF1ZXVlZCIsCisJCQkJICAgICBfX3N0cmlu Z2lmeShJOTE1X1NBTVBMRV9RVUVVRURfU0NBTEUpKSwKIAl9OwogCXVuc2lnbmVkIGludCBjb3Vu dCA9IDA7CiAJc3RydWN0IHBlcmZfcG11X2V2ZW50c19hdHRyICpwbXVfYXR0ciA9IE5VTEwsICpw bXVfaXRlcjsKQEAgLTc3NSw2ICs4MDIsOSBAQCBjcmVhdGVfZXZlbnRfYXR0cmlidXRlcyhzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAllbnVtIGludGVsX2VuZ2luZV9pZCBpZDsKIAl1 bnNpZ25lZCBpbnQgaTsKIAorCUJVSUxEX0JVR19PTihJOTE1X1NBTVBMRV9RVUVVRURfRElWSVNP UiAhPQorCQkgICAgICgxIC8gSTkxNV9TQU1QTEVfUVVFVUVEX1NDQUxFKSk7CisKIAkvKiBDb3Vu dCBob3cgbWFueSBjb3VudGVycyB3ZSB3aWxsIGJlIGV4cG9zaW5nLiAqLwogCWZvciAoaSA9IDA7 IGkgPCBBUlJBWV9TSVpFKGV2ZW50cyk7IGkrKykgewogCQlpZiAoIWNvbmZpZ19zdGF0dXMoaTkx NSwgZXZlbnRzW2ldLmNvbmZpZykpCkBAIC04NTIsMTMgKzg4MiwxNSBAQCBjcmVhdGVfZXZlbnRf YXR0cmlidXRlcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAkJCQkJCQkJZW5naW5l LT5pbnN0YW5jZSwKIAkJCQkJCQkJZW5naW5lX2V2ZW50c1tpXS5zYW1wbGUpKTsKIAotCQkJc3Ry ID0ga2FzcHJpbnRmKEdGUF9LRVJORUwsICIlcy0lcy51bml0IiwKLQkJCQkJZW5naW5lLT5uYW1l LCBlbmdpbmVfZXZlbnRzW2ldLm5hbWUpOworCQkJc3RyID0ga2FzcHJpbnRmKEdGUF9LRVJORUws ICIlcy0lcy4lcyIsCisJCQkJCWVuZ2luZS0+bmFtZSwgZW5naW5lX2V2ZW50c1tpXS5uYW1lLAor CQkJCQllbmdpbmVfZXZlbnRzW2ldLnN1ZmZpeCk7CiAJCQlpZiAoIXN0cikKIAkJCQlnb3RvIGVy cjsKIAogCQkJKmF0dHJfaXRlcisrID0gJnBtdV9pdGVyLT5hdHRyLmF0dHI7Ci0JCQlwbXVfaXRl ciA9IGFkZF9wbXVfYXR0cihwbXVfaXRlciwgc3RyLCAibnMiKTsKKwkJCXBtdV9pdGVyID0gYWRk X3BtdV9hdHRyKHBtdV9pdGVyLCBzdHIsCisJCQkJCQllbmdpbmVfZXZlbnRzW2ldLnZhbHVlKTsK IAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IDQ1 MTk3ODhjYzVhMS4uNTgwZjA3YjJhNWRkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmlu Z2J1ZmZlci5oCkBAIC0zODEsNyArMzgxLDcgQEAgc3RydWN0IGludGVsX2VuZ2luZV9jcyB7CiAJ CSAqCiAJCSAqIE91ciBpbnRlcm5hbCB0aW1lciBzdG9yZXMgdGhlIGN1cnJlbnQgY291bnRlcnMg aW4gdGhpcyBmaWVsZC4KIAkJICovCi0jZGVmaW5lIEk5MTVfRU5HSU5FX1NBTVBMRV9NQVggKEk5 MTVfU0FNUExFX1NFTUEgKyAxKQorI2RlZmluZSBJOTE1X0VOR0lORV9TQU1QTEVfTUFYIChJOTE1 X1NBTVBMRV9RVUVVRUQgKyAxKQogCQlzdHJ1Y3QgaTkxNV9wbXVfc2FtcGxlIHNhbXBsZVtJOTE1 X0VOR0lORV9TQU1QTEVfTUFYXTsKIAkJLyoqCiAJCSAqIEBidXN5X3N0YXRzOiBIYXMgZW5hYmxl bWVudCBvZiBlbmdpbmUgc3RhdHMgdHJhY2tpbmcgYmVlbgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91 YXBpL2RybS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCmluZGV4IDUz NmVlNGZlYmQ3NC4uOTY4YmRjMzI2OWNiIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0xMTAsOSArMTEw LDEzIEBAIGVudW0gZHJtX2k5MTVfZ2VtX2VuZ2luZV9jbGFzcyB7CiBlbnVtIGRybV9pOTE1X3Bt dV9lbmdpbmVfc2FtcGxlIHsKIAlJOTE1X1NBTVBMRV9CVVNZID0gMCwKIAlJOTE1X1NBTVBMRV9X QUlUID0gMSwKLQlJOTE1X1NBTVBMRV9TRU1BID0gMgorCUk5MTVfU0FNUExFX1NFTUEgPSAyLAor CUk5MTVfU0FNUExFX1FVRVVFRCA9IDMKIH07CiAKKyAvKiBEaXZpZGUgY291bnRlciB2YWx1ZSBi eSBkaXZpc29yIHRvIGdldCB0aGUgcmVhbCB2YWx1ZS4gKi8KKyNkZWZpbmUgSTkxNV9TQU1QTEVf UVVFVUVEX0RJVklTT1IgKDEwMCkKKwogI2RlZmluZSBJOTE1X1BNVV9TQU1QTEVfQklUUyAoNCkK ICNkZWZpbmUgSTkxNV9QTVVfU0FNUExFX01BU0sgKDB4ZikKICNkZWZpbmUgSTkxNV9QTVVfU0FN UExFX0lOU1RBTkNFX0JJVFMgKDgpCkBAIC0xMzMsNiArMTM3LDkgQEAgZW51bSBkcm1faTkxNV9w bXVfZW5naW5lX3NhbXBsZSB7CiAjZGVmaW5lIEk5MTVfUE1VX0VOR0lORV9TRU1BKGNsYXNzLCBp bnN0YW5jZSkgXAogCV9fSTkxNV9QTVVfRU5HSU5FKGNsYXNzLCBpbnN0YW5jZSwgSTkxNV9TQU1Q TEVfU0VNQSkKIAorI2RlZmluZSBJOTE1X1BNVV9FTkdJTkVfUVVFVUVEKGNsYXNzLCBpbnN0YW5j ZSkgXAorCV9fSTkxNV9QTVVfRU5HSU5FKGNsYXNzLCBpbnN0YW5jZSwgSTkxNV9TQU1QTEVfUVVF VUVEKQorCiAjZGVmaW5lIF9fSTkxNV9QTVVfT1RIRVIoeCkgKF9fSTkxNV9QTVVfRU5HSU5FKDB4 ZmYsIDB4ZmYsIDB4ZikgKyAxICsgKHgpKQogCiAjZGVmaW5lIEk5MTVfUE1VX0FDVFVBTF9GUkVR VUVOQ1kJX19JOTE1X1BNVV9PVEhFUigwKQotLSAKMi4xNC4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK