From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH] drm/i915/pmu: Do not assume fixed hrtimer period Date: Mon, 4 Jun 2018 13:52:39 +0100 Message-ID: <20180604125239.5856-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 01CA26EAF5 for ; Mon, 4 Jun 2018 12:52:45 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id j15-v6so14696421wme.0 for ; Mon, 04 Jun 2018 05:52:45 -0700 (PDT) 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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkFzIENocmlz IGhhcyBkaXNjb3ZlcmVkIG9uIGhpcyBJdnlicmlkZ2UsIGFuZCBsYXRlciBhdXRvbWF0ZWQgdGVz dCBydW5zCmhhdmUgY29uZmlybWVkLCBvbiBtb3N0IG9mIG91ciBwbGF0Zm9ybXMgaHJ0aW1lciBm YWNlZCB3aXRoIGhlYXZ5IEdQVSBsb2FkCmNhIG9jY2FzaW9uYWxseSBiZWNvbWUgc3VmZmljaWVu dGx5IGltcHJlY2lzZSB0byBhZmZlY3QgUE1VIHNhbXBsaW5nCmNhbGN1bGF0aW9ucy4KClRoaXMg bWVhbnMgd2UgY2Fubm90IGFzc3VtZSBzYW1wbGluZyBmcmVxdWVuY3kgaXMgd2hhdCB3ZSBhc2tl ZCBmb3IsIGJ1dAp3ZSBuZWVkIHRvIG1lYXN1cmUgdGhlIGludGVydmFsIG91cnNlbHZlcy4KClRo aXMgcGF0Y2ggaXMgc2ltaWxhciB0byBDaHJpcycgb3JpZ2luYWwgcHJvcG9zYWwgZm9yIHBlci1l bmdpbmUgY291bnRlcnMsCmJ1dCBpbnN0ZWFkIG9mIGludHJvZHVjaW5nIGEgbmV3IHNldCB0byB3 b3JrIGFyb3VuZCB0aGUgcHJvYmxlbSB3aXRoCmZyZXF1ZW5jeSBzYW1wbGluZywgaXQgc3dhcHMg YXJvdW5kIHRoZSB3YXkgaW50ZXJuYWwgZnJlcXVlbmN5IGFjY291bnRpbmcKaXMgZG9uZS4gSW5z dGVhZCBvZiBhY2N1bXVsYXRpbmcgY3VycmVudCBmcmVxdWVuY3kgYW5kIGRpdmlkaW5nIGJ5CnNh bXBsaW5nIGZyZXF1ZW5jeSBvbiByZWFkb3V0LCBpdCBhY2N1bXVsYXRlcyBmcmVxdWVuY3kgc2Nh bGVkIGJ5IGVhY2gKcGVyaW9kLgoKVGVzdGNhc2U6IGlndC9wZXJmX3BtdS8qYnVzeSogIyBzbmIs IGl2YiwgaHN3ClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBp bnRlbC5jb20+ClN1Z2dlc3RlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24u Y28udWs+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jIHwgNjEgKysrKysrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5oIHwgIDggKysrKysK IDIgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wbXUuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcG11LmMKaW5kZXggZGM4Nzc5N2RiNTAwLi5mZjNlM2Y4NjU1NjcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9wbXUuYwpAQCAtMTI3LDYgKzEyNyw3IEBAIHN0YXRpYyB2b2lkIF9faTkx NV9wbXVfbWF5YmVfc3RhcnRfdGltZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiB7 CiAJaWYgKCFpOTE1LT5wbXUudGltZXJfZW5hYmxlZCAmJiBwbXVfbmVlZHNfdGltZXIoaTkxNSwg dHJ1ZSkpIHsKIAkJaTkxNS0+cG11LnRpbWVyX2VuYWJsZWQgPSB0cnVlOworCQlpOTE1LT5wbXUu dGltZXJfbGFzdCA9IGt0aW1lX2dldCgpOwogCQlocnRpbWVyX3N0YXJ0X3JhbmdlX25zKCZpOTE1 LT5wbXUudGltZXIsCiAJCQkJICAgICAgIG5zX3RvX2t0aW1lKFBFUklPRCksIDAsCiAJCQkJICAg ICAgIEhSVElNRVJfTU9ERV9SRUxfUElOTkVEKTsKQEAgLTE1NSwxMiArMTU2LDEzIEBAIHN0YXRp YyBib29sIGdyYWJfZm9yY2V3YWtlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LCBib29s IGZ3KQogfQogCiBzdGF0aWMgdm9pZAotdXBkYXRlX3NhbXBsZShzdHJ1Y3QgaTkxNV9wbXVfc2Ft cGxlICpzYW1wbGUsIHUzMiB1bml0LCB1MzIgdmFsKQorYWRkX3NhbXBsZShzdHJ1Y3QgaTkxNV9w bXVfc2FtcGxlICpzYW1wbGUsIHUzMiB2YWwpCiB7Ci0Jc2FtcGxlLT5jdXIgKz0gbXVsX3UzMl91 MzIodmFsLCB1bml0KTsKKwlzYW1wbGUtPmN1ciArPSB2YWw7CiB9CiAKLXN0YXRpYyB2b2lkIGVu Z2luZXNfc2FtcGxlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKK3N0YXRpYyB2 b2lkCitlbmdpbmVzX3NhbXBsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHVu c2lnbmVkIGludCBwZXJpb2RfbnMpCiB7CiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5l OwogCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOwpAQCAtMTgyLDggKzE4NCw5IEBAIHN0YXRpYyB2 b2lkIGVuZ2luZXNfc2FtcGxlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAog CQl2YWwgPSAhaTkxNV9zZXFub19wYXNzZWQoY3VycmVudF9zZXFubywgbGFzdF9zZXFubyk7CiAK LQkJdXBkYXRlX3NhbXBsZSgmZW5naW5lLT5wbXUuc2FtcGxlW0k5MTVfU0FNUExFX0JVU1ldLAot CQkJICAgICAgUEVSSU9ELCB2YWwpOworCQlpZiAodmFsKQorCQkJYWRkX3NhbXBsZSgmZW5naW5l LT5wbXUuc2FtcGxlW0k5MTVfU0FNUExFX0JVU1ldLAorCQkJCSAgIHBlcmlvZF9ucyk7CiAKIAkJ aWYgKHZhbCAmJiAoZW5naW5lLT5wbXUuZW5hYmxlICYKIAkJICAgIChCSVQoSTkxNV9TQU1QTEVf V0FJVCkgfCBCSVQoSTkxNV9TQU1QTEVfU0VNQSkpKSkgewpAQCAtMTk0LDExICsxOTcsMTMgQEAg c3RhdGljIHZvaWQgZW5naW5lc19zYW1wbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQogCQkJdmFsID0gMDsKIAkJfQogCi0JCXVwZGF0ZV9zYW1wbGUoJmVuZ2luZS0+cG11LnNh bXBsZVtJOTE1X1NBTVBMRV9XQUlUXSwKLQkJCSAgICAgIFBFUklPRCwgISEodmFsICYgUklOR19X QUlUKSk7CisJCWlmICh2YWwgJiBSSU5HX1dBSVQpCisJCQlhZGRfc2FtcGxlKCZlbmdpbmUtPnBt dS5zYW1wbGVbSTkxNV9TQU1QTEVfV0FJVF0sCisJCQkJICAgcGVyaW9kX25zKTsKIAotCQl1cGRh dGVfc2FtcGxlKCZlbmdpbmUtPnBtdS5zYW1wbGVbSTkxNV9TQU1QTEVfU0VNQV0sCi0JCQkgICAg ICBQRVJJT0QsICEhKHZhbCAmIFJJTkdfV0FJVF9TRU1BUEhPUkUpKTsKKwkJaWYgKHZhbCAmIFJJ TkdfV0FJVF9TRU1BUEhPUkUpCisJCQlhZGRfc2FtcGxlKCZlbmdpbmUtPnBtdS5zYW1wbGVbSTkx NV9TQU1QTEVfU0VNQV0sCisJCQkJICAgcGVyaW9kX25zKTsKIAl9CiAKIAlpZiAoZncpCkBAIC0y MDcsNyArMjEyLDE0IEBAIHN0YXRpYyB2b2lkIGVuZ2luZXNfc2FtcGxlKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdikKIAlpbnRlbF9ydW50aW1lX3BtX3B1dChkZXZfcHJpdik7CiB9 CiAKLXN0YXRpYyB2b2lkIGZyZXF1ZW5jeV9zYW1wbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQorc3RhdGljIHZvaWQKK2FkZF9zYW1wbGVfbXVsdChzdHJ1Y3QgaTkxNV9wbXVf c2FtcGxlICpzYW1wbGUsIHUzMiB2YWwsIHUzMiBtdWwpCit7CisJc2FtcGxlLT5jdXIgKz0gbXVs X3UzMl91MzIodmFsLCBtdWwpOworfQorCitzdGF0aWMgdm9pZAorZnJlcXVlbmN5X3NhbXBsZShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHVuc2lnbmVkIGludCBwZXJpb2RfbnMp CiB7CiAJaWYgKGRldl9wcml2LT5wbXUuZW5hYmxlICYKIAkgICAgY29uZmlnX2VuYWJsZWRfbWFz ayhJOTE1X1BNVV9BQ1RVQUxfRlJFUVVFTkNZKSkgewpAQCAtMjIxLDE1ICsyMzMsMTcgQEAgc3Rh dGljIHZvaWQgZnJlcXVlbmN5X3NhbXBsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiAJCQlpbnRlbF9ydW50aW1lX3BtX3B1dChkZXZfcHJpdik7CiAJCX0KIAotCQl1cGRhdGVf c2FtcGxlKCZkZXZfcHJpdi0+cG11LnNhbXBsZVtfX0k5MTVfU0FNUExFX0ZSRVFfQUNUXSwKLQkJ CSAgICAgIDEsIGludGVsX2dwdV9mcmVxKGRldl9wcml2LCB2YWwpKTsKKwkJYWRkX3NhbXBsZV9t dWx0KCZkZXZfcHJpdi0+cG11LnNhbXBsZVtfX0k5MTVfU0FNUExFX0ZSRVFfQUNUXSwKKwkJCSAg ICAgICAgaW50ZWxfZ3B1X2ZyZXEoZGV2X3ByaXYsIHZhbCksCisJCQkJcGVyaW9kX25zIC8gMTAw MCk7CiAJfQogCiAJaWYgKGRldl9wcml2LT5wbXUuZW5hYmxlICYKIAkgICAgY29uZmlnX2VuYWJs ZWRfbWFzayhJOTE1X1BNVV9SRVFVRVNURURfRlJFUVVFTkNZKSkgewotCQl1cGRhdGVfc2FtcGxl KCZkZXZfcHJpdi0+cG11LnNhbXBsZVtfX0k5MTVfU0FNUExFX0ZSRVFfUkVRXSwgMSwKLQkJCSAg ICAgIGludGVsX2dwdV9mcmVxKGRldl9wcml2LAotCQkJCQkgICAgIGRldl9wcml2LT5ndF9wbS5y cHMuY3VyX2ZyZXEpKTsKKwkJYWRkX3NhbXBsZV9tdWx0KCZkZXZfcHJpdi0+cG11LnNhbXBsZVtf X0k5MTVfU0FNUExFX0ZSRVFfUkVRXSwKKwkJCQlpbnRlbF9ncHVfZnJlcShkZXZfcHJpdiwKKwkJ CQkJICAgICAgIGRldl9wcml2LT5ndF9wbS5ycHMuY3VyX2ZyZXEpLAorCQkJCXBlcmlvZF9ucyAv IDEwMDApOwogCX0KIH0KIApAQCAtMjM3LDE0ICsyNTEsMjEgQEAgc3RhdGljIGVudW0gaHJ0aW1l cl9yZXN0YXJ0IGk5MTVfc2FtcGxlKHN0cnVjdCBocnRpbWVyICpocnRpbWVyKQogewogCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0KIAkJY29udGFpbmVyX29mKGhydGltZXIsIHN0cnVj dCBkcm1faTkxNV9wcml2YXRlLCBwbXUudGltZXIpOworCXVuc2lnbmVkIGludCBwZXJpb2RfbnM7 CisJa3RpbWVfdCBub3c7CiAKIAlpZiAoIVJFQURfT05DRShpOTE1LT5wbXUudGltZXJfZW5hYmxl ZCkpCiAJCXJldHVybiBIUlRJTUVSX05PUkVTVEFSVDsKIAotCWVuZ2luZXNfc2FtcGxlKGk5MTUp OwotCWZyZXF1ZW5jeV9zYW1wbGUoaTkxNSk7CisJbm93ID0ga3RpbWVfZ2V0KCk7CisJcGVyaW9k X25zID0ga3RpbWVfdG9fbnMoa3RpbWVfc3ViKG5vdywgaTkxNS0+cG11LnRpbWVyX2xhc3QpKTsK KwlpOTE1LT5wbXUudGltZXJfbGFzdCA9IG5vdzsKKworCWVuZ2luZXNfc2FtcGxlKGk5MTUsIHBl cmlvZF9ucyk7CisJZnJlcXVlbmN5X3NhbXBsZShpOTE1LCBwZXJpb2RfbnMpOworCisJaHJ0aW1l cl9mb3J3YXJkKGhydGltZXIsIG5vdywgbnNfdG9fa3RpbWUoUEVSSU9EKSk7CiAKLQlocnRpbWVy X2ZvcndhcmRfbm93KGhydGltZXIsIG5zX3RvX2t0aW1lKFBFUklPRCkpOwogCXJldHVybiBIUlRJ TUVSX1JFU1RBUlQ7CiB9CiAKQEAgLTUxOSwxMiArNTQwLDEyIEBAIHN0YXRpYyB1NjQgX19pOTE1 X3BtdV9ldmVudF9yZWFkKHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKIAkJY2FzZSBJOTE1X1BN VV9BQ1RVQUxfRlJFUVVFTkNZOgogCQkJdmFsID0KIAkJCSAgIGRpdl91NjQoaTkxNS0+cG11LnNh bXBsZVtfX0k5MTVfU0FNUExFX0ZSRVFfQUNUXS5jdXIsCi0JCQkJICAgRlJFUVVFTkNZKTsKKwkJ CQkgICAxMDAwMDAwIC8qIHRvIE1IeiAqLyk7CiAJCQlicmVhazsKIAkJY2FzZSBJOTE1X1BNVV9S RVFVRVNURURfRlJFUVVFTkNZOgogCQkJdmFsID0KIAkJCSAgIGRpdl91NjQoaTkxNS0+cG11LnNh bXBsZVtfX0k5MTVfU0FNUExFX0ZSRVFfUkVRXS5jdXIsCi0JCQkJICAgRlJFUVVFTkNZKTsKKwkJ CQkgICAxMDAwMDAwIC8qIHRvIE1IeiAqLyk7CiAJCQlicmVhazsKIAkJY2FzZSBJOTE1X1BNVV9J TlRFUlJVUFRTOgogCQkJdmFsID0gY291bnRfaW50ZXJydXB0cyhpOTE1KTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3BtdS5oCmluZGV4IDJiYTczNTI5OWY3Yy4uN2YxNjRjYTNkYjEyIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcG11LmgKQEAgLTY1LDYgKzY1LDE0IEBAIHN0cnVjdCBpOTE1X3BtdSB7CiAJICogZXZl bnQgdHlwZXMuCiAJICovCiAJdTY0IGVuYWJsZTsKKworCS8qKgorCSAqIEB0aW1lcl9sYXN0Ogor CSAqCisJICogVGltZXN0bWFwIG9mIHRoZSBwcmV2aW91cyB0aW1lciBpbnZvY2F0aW9uLgorCSAq LworCWt0aW1lX3QgdGltZXJfbGFzdDsKKwogCS8qKgogCSAqIEBlbmFibGVfY291bnQ6IFJlZmVy ZW5jZSBjb3VudHMgZm9yIHRoZSBlbmFibGVkIGV2ZW50cy4KIAkgKgotLSAKMi4xNy4wCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK