From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 4/5] drm/i915: Expose per-engine client busyness Date: Wed, 14 Feb 2018 18:50:34 +0000 Message-ID: <20180214185035.8010-5-tvrtko.ursulin@linux.intel.com> References: <20180214185035.8010-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-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id A7B796E206 for ; Wed, 14 Feb 2018 18:50:50 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id j199so12469167wmj.2 for ; Wed, 14 Feb 2018 10:50:50 -0800 (PST) In-Reply-To: <20180214185035.8010-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkV4cG9zZSBw ZXItY2xpZW50IGFuZCBwZXItZW5naW5lIGJ1c3luZXNzIHVuZGVyIHRoZSBwcmV2aW91c2x5IGFk ZGVkIHN5c2ZzCmNsaWVudCByb290LgoKVGhlIG5ldyBmaWxlcyBhcmUgb25lIHBlci1lbmdpbmUg aW5zdGFuY2UgYW5kIGxvY2F0ZWQgdW5kZXIgdGhlICdidXN5JwpkaXJlY3RvcnkuCgpFYWNoIGNv bnRhaW5zIGEgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nIG5hbm8tc2Vjb25kIHJlc29sdXRpb24g dGltZXMgZWFjaApjbGllbnQncyBqb2JzIHdlcmUgZXhlY3V0aW5nIG9uIHRoZSBHUFUuCgokIGNh dCAvc3lzL2NsYXNzL2RybS9jYXJkMC9jbGllbnRzLzUvYnVzeS9yY3MwCjMyNTE2NjAyCgpUaGlz IGRhdGEgY2FuIHNlcnZlIGFzIGFuIGludGVyZmFjZSB0byBpbXBsZW1lbnQgYSB0b3AgbGlrZSB1 dGlsaXR5IGZvcgpHUFUgam9icy4gRm9yIGluc3RhbmNlIEkgaGF2ZSBwcm90b3R5cGVkIGEgdG9v bCBpbiBJR1Qgd2hpY2ggcHJvZHVjZXMKcGVyaW9kaWMgb3V0cHV0IGxpa2U6CgpuZXZlcmJhbGxb ICA2MDExXTogIHJjczA6ICA0MS4wMSUgIGJjczA6ICAgMC4wMCUgIHZjczA6ICAgMC4wMCUgIHZl Y3MwOiAgIDAuMDAlCiAgICAgWG9yZ1sgIDU2NjRdOiAgcmNzMDogIDMxLjE2JSAgYmNzMDogICAw LjAwJSAgdmNzMDogICAwLjAwJSAgdmVjczA6ICAgMC4wMCUKICAgIHhmd200WyAgNTcyN106ICBy Y3MwOiAgIDAuMDAlICBiY3MwOiAgIDAuMDAlICB2Y3MwOiAgIDAuMDAlICB2ZWNzMDogICAwLjAw JQoKVGhpcyB0b29scyBjYW4gYWxzbyBiZSBleHRlbmRlZCB0byB1c2UgdGhlIGk5MTUgUE1VIGFu ZCBzaG93IG92ZXJhbGwgZW5naW5lCmJ1c3luZXNzLCBhbmQgZW5naW5lIGxvYWRzIHVzaW5nIHRo ZSBxdWV1ZSBkZXB0aCBtZXRyaWMuCgp2MjogVXNlIGludGVsX2NvbnRleHRfZW5naW5lX2dldF9i dXN5X3RpbWUuCnYzOiBOZXcgZGlyZWN0b3J5IHN0cnVjdHVyZS4KClNpZ25lZC1vZmYtYnk6IFR2 cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaCB8ICA4ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgfCA4NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogMiBm aWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCmluZGV4IDM3MmQxM2NiMjQ3Mi4uZDZiMjg4M2I0MmZlIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKQEAgLTMxNSw2ICszMTUsMTIgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZh dGU7CiBzdHJ1Y3QgaTkxNV9tbV9zdHJ1Y3Q7CiBzdHJ1Y3QgaTkxNV9tbXVfb2JqZWN0OwogCitz dHJ1Y3QgaTkxNV9lbmdpbmVfYnVzeV9hdHRyaWJ1dGUgeworCXN0cnVjdCBkZXZpY2VfYXR0cmli dXRlIGF0dHI7CisJc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2OworCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKK307CisKIHN0cnVjdCBkcm1faTkxNV9maWxl X3ByaXZhdGUgewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsKIAlzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGU7CkBAIC0zNTAsMTAgKzM1NiwxMiBAQCBzdHJ1Y3QgZHJtX2k5MTVfZmls ZV9wcml2YXRlIHsKIAl1bnNpZ25lZCBpbnQgY2xpZW50X3BpZDsKIAljaGFyICpjbGllbnRfbmFt ZTsKIAlzdHJ1Y3Qga29iamVjdCAqY2xpZW50X3Jvb3Q7CisJc3RydWN0IGtvYmplY3QgKmJ1c3lf cm9vdDsKIAogCXN0cnVjdCB7CiAJCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIHBpZDsKIAkJc3Ry dWN0IGRldmljZV9hdHRyaWJ1dGUgbmFtZTsKKwkJc3RydWN0IGk5MTVfZW5naW5lX2J1c3lfYXR0 cmlidXRlIGJ1c3lbSTkxNV9OVU1fRU5HSU5FU107CiAJfSBhdHRyOwogfTsKIApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtLmMKaW5kZXggNDZhYzdiM2NhMzQ4Li4wMTI5OGQ5MjQ1MjQgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYwpAQCAtNTYzMSw2ICs1NjMxLDQ1IEBAIHNob3dfY2xpZW50X3BpZChzdHJ1 Y3QgZGV2aWNlICprZGV2LCBzdHJ1Y3QgZGV2aWNlX2F0dHJpYnV0ZSAqYXR0ciwgY2hhciAqYnVm KQogCXJldHVybiBzbnByaW50ZihidWYsIFBBR0VfU0laRSwgIiV1IiwgZmlsZV9wcml2LT5jbGll bnRfcGlkKTsKIH0KIAorc3RydWN0IGJ1c3lfY3R4IHsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmU7CisJdTY0IHRvdGFsOworfTsKKworc3RhdGljIGludCBidXN5X2FkZChpbnQgX2lk LCB2b2lkICpwLCB2b2lkICpkYXRhKQoreworCXN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgg PSBwOworCXN0cnVjdCBidXN5X2N0eCAqYmMgPSBkYXRhOworCisJYmMtPnRvdGFsICs9CisJCWt0 aW1lX3RvX25zKGludGVsX2NvbnRleHRfZW5naW5lX2dldF9idXN5X3RpbWUoY3R4LAorCQkJCQkJ CSAgICAgICBiYy0+ZW5naW5lKSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHNzaXplX3QK K3Nob3dfY2xpZW50X2J1c3koc3RydWN0IGRldmljZSAqa2Rldiwgc3RydWN0IGRldmljZV9hdHRy aWJ1dGUgKmF0dHIsIGNoYXIgKmJ1ZikKK3sKKwlzdHJ1Y3QgaTkxNV9lbmdpbmVfYnVzeV9hdHRy aWJ1dGUgKmk5MTVfYXR0ciA9CisJCWNvbnRhaW5lcl9vZihhdHRyLCB0eXBlb2YoKmk5MTVfYXR0 ciksIGF0dHIpOworCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiA9IGk5 MTVfYXR0ci0+ZmlsZV9wcml2OworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9IGk5 MTVfYXR0ci0+ZW5naW5lOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gZW5naW5l LT5pOTE1OworCXN0cnVjdCBidXN5X2N0eCBiYyA9IHsgLmVuZ2luZSA9IGVuZ2luZSB9OworCWlu dCByZXQ7CisKKwlyZXQgPSBpOTE1X211dGV4X2xvY2tfaW50ZXJydXB0aWJsZSgmaTkxNS0+ZHJt KTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJaWRyX2Zvcl9lYWNoKCZmaWxlX3ByaXYt PmNvbnRleHRfaWRyLCBidXN5X2FkZCwgJmJjKTsKKworCW11dGV4X3VubG9jaygmaTkxNS0+ZHJt LnN0cnVjdF9tdXRleCk7CisKKwlyZXR1cm4gc25wcmludGYoYnVmLCBQQUdFX1NJWkUsICIlbGx1 XG4iLCBiYy50b3RhbCk7Cit9CisKIGludAogaTkxNV9nZW1fYWRkX2NsaWVudChzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAkJc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmls ZV9wcml2LApAQCAtNTYzOCwxNSArNTY3NywxNyBAQCBpOTE1X2dlbV9hZGRfY2xpZW50KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCQl1bnNpZ25lZCBpbnQgc2VyaWFsKQogewogCWlu dCByZXQgPSAtRU5PTUVNOworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKIAlzdHJ1 Y3QgZGV2aWNlX2F0dHJpYnV0ZSAqYXR0cjsKLQljaGFyIGlkWzMyXTsKKwllbnVtIGludGVsX2Vu Z2luZV9pZCBpZCwgaWQyOworCWNoYXIgaWRzdHJbMzJdOwogCiAJZmlsZV9wcml2LT5jbGllbnRf bmFtZSA9IGtzdHJkdXAodGFzay0+Y29tbSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFmaWxlX3ByaXYt PmNsaWVudF9uYW1lKQogCQlnb3RvIGVycl9uYW1lOwogCi0Jc25wcmludGYoaWQsIHNpemVvZihp ZCksICIldSIsIHNlcmlhbCk7Ci0JZmlsZV9wcml2LT5jbGllbnRfcm9vdCA9IGtvYmplY3RfY3Jl YXRlX2FuZF9hZGQoaWQsCisJc25wcmludGYoaWRzdHIsIHNpemVvZihpZHN0ciksICIldSIsIHNl cmlhbCk7CisJZmlsZV9wcml2LT5jbGllbnRfcm9vdCA9IGtvYmplY3RfY3JlYXRlX2FuZF9hZGQo aWRzdHIsCiAJCQkJCQkJaTkxNS0+Y2xpZW50c19yb290KTsKIAlpZiAoIWZpbGVfcHJpdi0+Y2xp ZW50X3Jvb3QpCiAJCWdvdG8gZXJyX2NsaWVudDsKQEAgLTU2NzEsMTAgKzU3MTIsNDEgQEAgaTkx NV9nZW1fYWRkX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlpZiAocmV0 KQogCQlnb3RvIGVycl9hdHRyX3BpZDsKIAorCWZpbGVfcHJpdi0+YnVzeV9yb290ID0ga29iamVj dF9jcmVhdGVfYW5kX2FkZCgiYnVzeSIsCisJCQkJCQkgICAgICBmaWxlX3ByaXYtPmNsaWVudF9y b290KTsKKwlpZiAoIWZpbGVfcHJpdi0+YnVzeV9yb290KQorCQlnb3RvIGVycl9idXN5X3Jvb3Q7 CisKKwlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZCkgeworCQlmaWxlX3ByaXYtPmF0 dHIuYnVzeVtpZF0uZmlsZV9wcml2ID0gZmlsZV9wcml2OworCQlmaWxlX3ByaXYtPmF0dHIuYnVz eVtpZF0uZW5naW5lID0gZW5naW5lOworCQlhdHRyID0gJmZpbGVfcHJpdi0+YXR0ci5idXN5W2lk XS5hdHRyOworCQlhdHRyLT5hdHRyLm5hbWUgPSBlbmdpbmUtPm5hbWU7CisJCWF0dHItPmF0dHIu bW9kZSA9IDA0NDQ7CisJCWF0dHItPnNob3cgPSBzaG93X2NsaWVudF9idXN5OworCisJCXJldCA9 IHN5c2ZzX2NyZWF0ZV9maWxlKGZpbGVfcHJpdi0+YnVzeV9yb290LAorCQkJCSAgICAgICAgKHN0 cnVjdCBhdHRyaWJ1dGUgKilhdHRyKTsKKwkJaWYgKHJldCkKKwkJCWdvdG8gZXJyX2F0dHJfYnVz eTsKKwl9CisKIAlmaWxlX3ByaXYtPmNsaWVudF9waWQgPSBwaWRfbnIoZ2V0X3Rhc2tfcGlkKHRh c2ssIFBJRFRZUEVfUElEKSk7CiAKIAlyZXR1cm4gMDsKIAorZXJyX2F0dHJfYnVzeToKKwlmb3Jf ZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZDIpIHsKKwkJaWYgKGlkMiA9PSBpZCkKKwkJCWJy ZWFrOworCisJCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+YnVzeV9yb290LAorCQkJCSAg KHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2LT5hdHRyLmJ1c3lbaWQyXSk7CisJfQorCWtv YmplY3RfcHV0KGZpbGVfcHJpdi0+YnVzeV9yb290KTsKK2Vycl9idXN5X3Jvb3Q6CisJc3lzZnNf cmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnRfcm9vdCwKKwkJCSAgKHN0cnVjdCBhdHRyaWJ1 dGUgKikmZmlsZV9wcml2LT5hdHRyLnBpZCk7CiBlcnJfYXR0cl9waWQ6CiAJc3lzZnNfcmVtb3Zl X2ZpbGUoZmlsZV9wcml2LT5jbGllbnRfcm9vdCwKIAkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikm ZmlsZV9wcml2LT5hdHRyLm5hbWUpOwpAQCAtNTY4OCw2ICs1NzYwLDE0IEBAIGk5MTVfZ2VtX2Fk ZF9jbGllbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAKIHZvaWQgaTkxNV9nZW1f cmVtb3ZlX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYpCiB7 CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCWVudW0gaW50ZWxfZW5naW5lX2lk IGlkOworCisJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZmlsZV9wcml2LT5kZXZfcHJpdiwgaWQp IHsKKwkJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5idXN5X3Jvb3QsCisJCQkJICAoc3Ry dWN0IGF0dHJpYnV0ZSAqKSZmaWxlX3ByaXYtPmF0dHIuYnVzeVtpZF0pOworCX0KKwlrb2JqZWN0 X3B1dChmaWxlX3ByaXYtPmJ1c3lfcm9vdCk7CiAJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2 LT5jbGllbnRfcm9vdCwKIAkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2LT5hdHRy LnBpZCk7CiAJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnRfcm9vdCwKLS0gCjIu MTQuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==