From mboxrd@z Thu Jan 1 00:00:00 1970 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 4CBBA6E1C0 for ; Tue, 17 Apr 2018 12:28:14 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id q13so31575361wre.3 for ; Tue, 17 Apr 2018 05:28:14 -0700 (PDT) From: Tvrtko Ursulin Date: Tue, 17 Apr 2018 13:27:34 +0100 Message-Id: <20180417122736.11603-6-tvrtko.ursulin@linux.intel.com> In-Reply-To: <20180417122736.11603-1-tvrtko.ursulin@linux.intel.com> References: <20180417122736.11603-1-tvrtko.ursulin@linux.intel.com> Subject: [igt-dev] [RFC 5/7] drm/i915: Expose per-engine client busyness List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkV4cG9zZSBw ZXItY2xpZW50IGFuZCBwZXItZW5naW5lIGJ1c3luZXNzIHVuZGVyIHRoZSBwcmV2aW91c2x5IGFk ZGVkIHN5c2ZzCmNsaWVudCByb290LgoKVGhlIG5ldyBmaWxlcyBhcmUgb25lIHBlci1lbmdpbmUg aW5zdGFuY2UgYW5kIGxvY2F0ZWQgdW5kZXIgdGhlICdidXN5JwpkaXJlY3RvcnkuCgpFYWNoIGNv bnRhaW5zIGEgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIG5hbm8tc2Vjb25kIHJlc29sdXRpb24g dGltZXMgZWFjaApjbGllbnQncyBqb2JzIHdlcmUgZXhlY3V0aW5nIG9uIHRoZSBHUFUuCgokIGNh dCAvc3lzL2NsYXNzL2RybS9jYXJkMC9jbGllbnRzLzUvYnVzeS9yY3MwCjMyNTE2NjAyCgpUaGlz IGRhdGEgY2FuIHNlcnZlIGFzIGFuIGludGVyZmFjZSB0byBpbXBsZW1lbnQgYSB0b3AgbGlrZSB1 dGlsaXR5IGZvcgpHUFUgam9icy4gRm9yIGluc3RhbmNlIEkgaGF2ZSBwcm90b3R5cGVkIGEgdG9v bCBpbiBJR1Qgd2hpY2ggcHJvZHVjZXMKcGVyaW9kaWMgb3V0cHV0IGxpa2U6CgpuZXZlcmJhbGxb ICA2MDExXTogIHJjczA6ICA0MS4wMSUgIGJjczA6ICAgMC4wMCUgIHZjczA6ICAgMC4wMCUgIHZl Y3MwOiAgIDAuMDAlCiAgICAgWG9yZ1sgIDU2NjRdOiAgcmNzMDogIDMxLjE2JSAgYmNzMDogICAw LjAwJSAgdmNzMDogICAwLjAwJSAgdmVjczA6ICAgMC4wMCUKICAgIHhmd200WyAgNTcyN106ICBy Y3MwOiAgIDAuMDAlICBiY3MwOiAgIDAuMDAlICB2Y3MwOiAgIDAuMDAlICB2ZWNzMDogICAwLjAw JQoKVGhpcyB0b29scyBjYW4gYWxzbyBiZSBleHRlbmRlZCB0byB1c2UgdGhlIGk5MTUgUE1VIGFu ZCBzaG93IG92ZXJhbGwgZW5naW5lCmJ1c3luZXNzLCBhbmQgZW5naW5lIGxvYWRzIHVzaW5nIHRo ZSBxdWV1ZSBkZXB0aCBtZXRyaWMuCgp2MjogVXNlIGludGVsX2NvbnRleHRfZW5naW5lX2dldF9i dXN5X3RpbWUuCnYzOiBOZXcgZGlyZWN0b3J5IHN0cnVjdHVyZS4KClNpZ25lZC1vZmYtYnk6IFR2 cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaCB8ICA4ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgfCA4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogMiBm aWxlcyBjaGFuZ2VkLCA4NiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCmluZGV4IDQ1NmRjNDk1ZTAxNy4uZjgzYjhkY2FjMTZiIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKQEAgLTMxNyw2ICszMTcsMTIgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZh dGU7CiBzdHJ1Y3QgaTkxNV9tbV9zdHJ1Y3Q7CiBzdHJ1Y3QgaTkxNV9tbXVfb2JqZWN0OwogCitz dHJ1Y3QgaTkxNV9lbmdpbmVfYnVzeV9hdHRyaWJ1dGUgeworCXN0cnVjdCBkZXZpY2VfYXR0cmli dXRlIGF0dHI7CisJc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2OworCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKK307CisKIHN0cnVjdCBkcm1faTkxNV9maWxl X3ByaXZhdGUgewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsKIAlzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGU7CkBAIC0zNTUsMTAgKzM2MSwxMiBAQCBzdHJ1Y3QgZHJtX2k5MTVfZmls ZV9wcml2YXRlIHsKIAkJY2hhciAqbmFtZTsKIAogCQlzdHJ1Y3Qga29iamVjdCAqcm9vdDsKKyAJ CXN0cnVjdCBrb2JqZWN0ICpidXN5X3Jvb3Q7CiAKIAkJc3RydWN0IHsKIAkJCXN0cnVjdCBkZXZp Y2VfYXR0cmlidXRlIHBpZDsKIAkJCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIG5hbWU7CisJCQlz dHJ1Y3QgaTkxNV9lbmdpbmVfYnVzeV9hdHRyaWJ1dGUgYnVzeVtJOTE1X05VTV9FTkdJTkVTXTsK IAkJfSBhdHRyOwogCX0gY2xpZW50OwogfTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDRj MjA1NDVlMzUzOS4uNmE1NTBmYjExMGZiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTU3 MjgsNiArNTcyOCwzOCBAQCBzaG93X2NsaWVudF9waWQoc3RydWN0IGRldmljZSAqa2Rldiwgc3Ry dWN0IGRldmljZV9hdHRyaWJ1dGUgKmF0dHIsIGNoYXIgKmJ1ZikKIAlyZXR1cm4gc25wcmludGYo YnVmLCBQQUdFX1NJWkUsICIldSIsIGZpbGVfcHJpdi0+Y2xpZW50LnBpZCk7CiB9CiAKK3N0cnVj dCBidXN5X2N0eCB7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCXU2NCB0b3Rh bDsKK307CisKK3N0YXRpYyBpbnQgYnVzeV9hZGQoaW50IF9pZCwgdm9pZCAqcCwgdm9pZCAqZGF0 YSkKK3sKKwlzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4ID0gcDsKKwlzdHJ1Y3QgYnVzeV9j dHggKmJjID0gZGF0YTsKKworCWJjLT50b3RhbCArPQorCQlrdGltZV90b19ucyhpbnRlbF9jb250 ZXh0X2VuZ2luZV9nZXRfYnVzeV90aW1lKGN0eCwKKwkJCQkJCQkgICAgICAgYmMtPmVuZ2luZSkp OworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBzc2l6ZV90CitzaG93X2NsaWVudF9idXN5KHN0 cnVjdCBkZXZpY2UgKmtkZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyLCBjaGFyICpi dWYpCit7CisJc3RydWN0IGk5MTVfZW5naW5lX2J1c3lfYXR0cmlidXRlICppOTE1X2F0dHIgPQor CQljb250YWluZXJfb2YoYXR0ciwgdHlwZW9mKCppOTE1X2F0dHIpLCBhdHRyKTsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYgPSBpOTE1X2F0dHItPmZpbGVfcHJpdjsK KwlzdHJ1Y3QgYnVzeV9jdHggYmMgPSB7IC5lbmdpbmUgPSBpOTE1X2F0dHItPmVuZ2luZSB9Owor CisJcmN1X3JlYWRfbG9jaygpOworCWlkcl9mb3JfZWFjaCgmZmlsZV9wcml2LT5jb250ZXh0X2lk ciwgYnVzeV9hZGQsICZiYyk7CisJcmN1X3JlYWRfdW5sb2NrKCk7CisKKwlyZXR1cm4gc25wcmlu dGYoYnVmLCBQQUdFX1NJWkUsICIlbGx1XG4iLCBiYy50b3RhbCk7Cit9CisKIGludAogaTkxNV9n ZW1fYWRkX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAkJc3RydWN0IGRy bV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2LApAQCAtNTczNSw4ICs1NzY3LDEwIEBAIGk5 MTVfZ2VtX2FkZF9jbGllbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCXVuc2ln bmVkIGludCBzZXJpYWwpCiB7CiAJaW50IHJldCA9IC1FTk9NRU07CisJc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqZW5naW5lOwogCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyOwotCWNoYXIg aWRbMzJdOworCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkLCBpZDI7CisJY2hhciBpZHN0clszMl07 CiAKIAlpZiAoIWk5MTUtPmNsaWVudHMucm9vdCkKIAkJZ290byBlcnJfbmFtZTsKQEAgLTU3NDUs OCArNTc3OSw4IEBAIGk5MTVfZ2VtX2FkZF9jbGllbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg Kmk5MTUsCiAJaWYgKCFmaWxlX3ByaXYtPmNsaWVudC5uYW1lKQogCQlnb3RvIGVycl9uYW1lOwog Ci0Jc25wcmludGYoaWQsIHNpemVvZihpZCksICIldSIsIHNlcmlhbCk7Ci0JZmlsZV9wcml2LT5j bGllbnQucm9vdCA9IGtvYmplY3RfY3JlYXRlX2FuZF9hZGQoaWQsCisJc25wcmludGYoaWRzdHIs IHNpemVvZihpZHN0ciksICIldSIsIHNlcmlhbCk7CisJZmlsZV9wcml2LT5jbGllbnQucm9vdCA9 IGtvYmplY3RfY3JlYXRlX2FuZF9hZGQoaWRzdHIsCiAJCQkJCQkJaTkxNS0+Y2xpZW50cy5yb290 KTsKIAlpZiAoIWZpbGVfcHJpdi0+Y2xpZW50LnJvb3QpCiAJCWdvdG8gZXJyX2NsaWVudDsKQEAg LTU3NzEsMTAgKzU4MDUsNDEgQEAgaTkxNV9nZW1fYWRkX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqaTkxNSwKIAlpZiAocmV0KQogCQlnb3RvIGVycl9hdHRyX3BpZDsKIAorCWZpbGVf cHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCA9CisJCQlrb2JqZWN0X2NyZWF0ZV9hbmRfYWRkKCJidXN5 IiwgZmlsZV9wcml2LT5jbGllbnQucm9vdCk7CisJaWYgKCFmaWxlX3ByaXYtPmNsaWVudC5idXN5 X3Jvb3QpCisJCWdvdG8gZXJyX2J1c3lfcm9vdDsKKworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUs IGk5MTUsIGlkKSB7CisJCWZpbGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpZF0uZmlsZV9wcml2 ID0gZmlsZV9wcml2OworCQlmaWxlX3ByaXYtPmNsaWVudC5hdHRyLmJ1c3lbaWRdLmVuZ2luZSA9 IGVuZ2luZTsKKwkJYXR0ciA9ICZmaWxlX3ByaXYtPmNsaWVudC5hdHRyLmJ1c3lbaWRdLmF0dHI7 CisJCWF0dHItPmF0dHIubmFtZSA9IGVuZ2luZS0+bmFtZTsKKwkJYXR0ci0+YXR0ci5tb2RlID0g MDQ0NDsKKwkJYXR0ci0+c2hvdyA9IHNob3dfY2xpZW50X2J1c3k7CisKKwkJcmV0ID0gc3lzZnNf Y3JlYXRlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9yb290LAorCQkJCSAgICAgICAgKHN0 cnVjdCBhdHRyaWJ1dGUgKilhdHRyKTsKKwkJaWYgKHJldCkKKwkJCWdvdG8gZXJyX2F0dHJfYnVz eTsKKwl9CisKIAlmaWxlX3ByaXYtPmNsaWVudC5waWQgPSBwaWRfbnIoZ2V0X3Rhc2tfcGlkKHRh c2ssIFBJRFRZUEVfUElEKSk7CiAKIAlyZXR1cm4gMDsKIAorZXJyX2F0dHJfYnVzeToKKwlmb3Jf ZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZDIpIHsKKwkJaWYgKGlkMiA9PSBpZCkKKwkJCWJy ZWFrOworCisJCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCwK KwkJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtp ZDJdKTsKKwl9CisJa29iamVjdF9wdXQoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9yb290KTsKK2Vy cl9idXN5X3Jvb3Q6CisJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnQucm9vdCwK KwkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2LT5jbGllbnQuYXR0ci5waWQpOwog ZXJyX2F0dHJfcGlkOgogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50LnJvb3Qs CiAJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0dHIubmFtZSk7 CkBAIC01Nzg4LDEwICs1ODUzLDIwIEBAIGk5MTVfZ2VtX2FkZF9jbGllbnQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTUsCiAKIHZvaWQgaTkxNV9nZW1fcmVtb3ZlX2NsaWVudChzdHJ1Y3Qg ZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYpCiB7CisJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lOworCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOworCisJZm9yX2VhY2hfZW5n aW5lKGVuZ2luZSwgZmlsZV9wcml2LT5kZXZfcHJpdiwgaWQpCisJCXN5c2ZzX3JlbW92ZV9maWxl KGZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCwKKwkJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICop JmZpbGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpZF0pOworCisJa29iamVjdF9wdXQoZmlsZV9w cml2LT5jbGllbnQuYnVzeV9yb290KTsKKwogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+ Y2xpZW50LnJvb3QsCiAJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50 LmF0dHIucGlkKTsKIAlzeXNmc19yZW1vdmVfZmlsZShmaWxlX3ByaXYtPmNsaWVudC5yb290LAog CQkJICAoc3RydWN0IGF0dHJpYnV0ZSAqKSZmaWxlX3ByaXYtPmNsaWVudC5hdHRyLm5hbWUpOwor CiAJa29iamVjdF9wdXQoZmlsZV9wcml2LT5jbGllbnQucm9vdCk7CiAJa2ZyZWUoZmlsZV9wcml2 LT5jbGllbnQubmFtZSk7CiB9Ci0tIAoyLjE0LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaWd0LWRldgo=