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: Fri, 25 Oct 2019 15:21:30 +0100 Message-ID: <20191025142131.17378-5-tvrtko.ursulin@linux.intel.com> References: <20191025142131.17378-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 mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 60BE46EA50 for ; Fri, 25 Oct 2019 14:21:39 +0000 (UTC) In-Reply-To: <20191025142131.17378-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 aW5zdGFuY2UgYW5kIGxvY2F0ZWQgdW5kZXIgdGhlICdidXN5JwpkaXJlY3RvcnkuIEVhY2ggY29u dGFpbnMgYSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcgbmFuby1zZWNvbmQgcmVzb2x1dGlvbgp0 aW1lcyBlYWNoIGNsaWVudCdzIGpvYnMgd2VyZSBleGVjdXRpbmcgb24gdGhlIEdQVS4KClRoaXMg ZW5hYmxlcyB1c2Vyc3BhY2UgdG8gY3JlYXRlIGEgdG9wLWxpa2UgdG9vbCBmb3IgR1BVIHV0aWxp emF0aW9uOgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KaW50ZWwtZ3B1LXRvcCAtICA5MzUvIDkzNSBNSHo7 ICAgIDAlIFJDNjsgMTQuNzMgV2F0dHM7ICAgICAxMDk3IGlycXMvcwoKICAgICAgSU1DIHJlYWRz OiAgICAgMTQwMSBNaUIvcwogICAgIElNQyB3cml0ZXM6ICAgICAgICA0IE1pQi9zCgogICAgICAg ICAgRU5HSU5FICAgICAgQlVTWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1JX1NF TUEgTUlfV0FJVAogICAgIFJlbmRlci8zRC8wICAgNjMuNzMlIHzilojilojilojilojilojiloji lojilojilojilojilojilojilojilojilojilojilojilojiloggICAgICAgICAgIHwgICAgICAz JSAgICAgIDAlCiAgICAgICBCbGl0dGVyLzAgICAgOS41MyUgfOKWiOKWiOKWiiAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAgICA2JSAgICAgIDAlCiAgICAgICAgIFZpZGVvLzAgICAzOS4z MiUgfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiiAgICAgICAgICAgICAgICAg IHwgICAgIDE2JSAgICAgIDAlCiAgICAgICAgIFZpZGVvLzEgICAxNS42MiUgfOKWiOKWiOKWiOKW iOKWiyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgMCUgICAgICAwJQogIFZpZGVvRW5o YW5jZS8wICAgIDAuMDAlIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgMCUg ICAgICAwJQoKICBQSUQgICAgICAgICAgICBOQU1FICAgICBSQ1MgICAgICAgICAgQkNTICAgICAg ICAgIFZDUyAgICAgICAgIFZFQ1MKIDQwODQgICAgICAgIGdlbV93c2ltIHzilojilojilojiloji lojilowgICAgIHx84paIICAgICAgICAgIHx8ICAgICAgICAgICB8fCAgICAgICAgICAgfAogNDA4 NiAgICAgICAgZ2VtX3dzaW0gfOKWiOKWjCAgICAgICAgIHx8ICAgICAgICAgICB8fOKWiOKWiOKW iCAgICAgICAgfHwgICAgICAgICAgIHwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCnYyOiBVc2UgaW50ZWxf Y29udGV4dF9lbmdpbmVfZ2V0X2J1c3lfdGltZS4KdjM6IE5ldyBkaXJlY3Rvcnkgc3RydWN0dXJl Lgp2NDogUmViYXNlLgp2NTogc3lzZnNfYXR0cl9pbml0Lgp2NjogU21hbGwgdGlkeSBpbiBpOTE1 X2dlbV9hZGRfY2xpZW50Lgp2NzogUmViYXNlIHRvIGJlIGVuZ2luZSBjbGFzcyBiYXNlZC4KClNp Z25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCB8ICAgOCArKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMgfCAxMDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr LS0KIDIgZmlsZXMgY2hhbmdlZCwgMTA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYjhmN2IwNjM3MjI0Li40NWYwZTI0NTUzMjIgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTg2LDYgKzE4NiwxMiBAQCBzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZTsKIHN0cnVjdCBpOTE1X21tX3N0cnVjdDsKIHN0cnVjdCBpOTE1X21tdV9vYmpl Y3Q7CiAKK3N0cnVjdCBpOTE1X2VuZ2luZV9idXN5X2F0dHJpYnV0ZSB7CisJc3RydWN0IGRldmlj ZV9hdHRyaWJ1dGUgYXR0cjsKKwlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3By aXY7CisJdW5zaWduZWQgaW50IGVuZ2luZV9jbGFzczsKK307CisKIHN0cnVjdCBkcm1faTkxNV9m aWxlX3ByaXZhdGUgewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsKIApAQCAt MjMwLDEwICsyMzYsMTIgQEAgc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSB7CiAJCWNoYXIg Km5hbWU7CiAKIAkJc3RydWN0IGtvYmplY3QgKnJvb3Q7CisJCXN0cnVjdCBrb2JqZWN0ICpidXN5 X3Jvb3Q7CiAKIAkJc3RydWN0IHsKIAkJCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIHBpZDsKIAkJ CXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIG5hbWU7CisJCQlzdHJ1Y3QgaTkxNV9lbmdpbmVfYnVz eV9hdHRyaWJ1dGUgYnVzeVtNQVhfRU5HSU5FX0NMQVNTXTsKIAkJfSBhdHRyOwogCX0gY2xpZW50 OwogfTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDU0YTAwYzk1NDA2Ni4uYjNkMjFiNmI1 NzBjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTE1MTIsMTUgKzE1MTIsNjcgQEAgc2hv d19jbGllbnRfcGlkKHN0cnVjdCBkZXZpY2UgKmtkZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRl ICphdHRyLCBjaGFyICpidWYpCiAJcmV0dXJuIHNucHJpbnRmKGJ1ZiwgUEFHRV9TSVpFLCAiJXUi LCBmaWxlX3ByaXYtPmNsaWVudC5waWQpOwogfQogCitzdHJ1Y3QgYnVzeV9jdHggeworCXVuc2ln bmVkIGludCBlbmdpbmVfY2xhc3M7CisJdTY0IHRvdGFsOworfTsKKworc3RhdGljIGludCBidXN5 X2FkZChpbnQgaWQsIHZvaWQgKnAsIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGJ1c3lfY3R4ICpi YyA9IGRhdGE7CisJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCA9IHA7CisJdW5zaWduZWQg aW50IGVuZ2luZV9jbGFzcyA9IGJjLT5lbmdpbmVfY2xhc3M7CisJc3RydWN0IGk5MTVfZ2VtX2Vu Z2luZXNfaXRlciBpdDsKKwlzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2U7CisJdWludDY0X3QgdG90 YWwgPSBiYy0+dG90YWw7CisKKwlmb3JfZWFjaF9nZW1fZW5naW5lKGNlLCBpOTE1X2dlbV9jb250 ZXh0X2xvY2tfZW5naW5lcyhjdHgpLCBpdCkgeworCQlpZiAoY2UtPmVuZ2luZS0+dWFiaV9jbGFz cyA9PSBlbmdpbmVfY2xhc3MpCisJCQl0b3RhbCArPSBrdGltZV90b19ucyhpbnRlbF9jb250ZXh0 X2dldF9idXN5X3RpbWUoY2UpKTsKKwl9CisJaTkxNV9nZW1fY29udGV4dF91bmxvY2tfZW5naW5l cyhjdHgpOworCisJYmMtPnRvdGFsID0gdG90YWw7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGlj IHNzaXplX3QKK3Nob3dfY2xpZW50X2J1c3koc3RydWN0IGRldmljZSAqa2Rldiwgc3RydWN0IGRl dmljZV9hdHRyaWJ1dGUgKmF0dHIsIGNoYXIgKmJ1ZikKK3sKKwlzdHJ1Y3QgaTkxNV9lbmdpbmVf YnVzeV9hdHRyaWJ1dGUgKmk5MTVfYXR0ciA9CisJCWNvbnRhaW5lcl9vZihhdHRyLCB0eXBlb2Yo Kmk5MTVfYXR0ciksIGF0dHIpOworCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVf cHJpdiA9IGk5MTVfYXR0ci0+ZmlsZV9wcml2OworCXN0cnVjdCBidXN5X2N0eCBiYyA9IHsgLmVu Z2luZV9jbGFzcyA9IGk5MTVfYXR0ci0+ZW5naW5lX2NsYXNzIH07CisJaW50IHJldDsKKworCXJl dCA9IG11dGV4X2xvY2tfaW50ZXJydXB0aWJsZSgmZmlsZV9wcml2LT5jb250ZXh0X2lkcl9sb2Nr KTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJaWRyX2Zvcl9lYWNoKCZmaWxlX3ByaXYt PmNvbnRleHRfaWRyLCBidXN5X2FkZCwgJmJjKTsKKworCW11dGV4X3VubG9jaygmZmlsZV9wcml2 LT5jb250ZXh0X2lkcl9sb2NrKTsKKworCXJldHVybiBzbnByaW50ZihidWYsIFBBR0VfU0laRSwg IiVsbHVcbiIsIGJjLnRvdGFsKTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKnVhYmlfY2xhc3Nf bmFtZXNbXSA9IHsKKwlbSTkxNV9FTkdJTkVfQ0xBU1NfUkVOREVSXSA9ICIwIiwKKwlbSTkxNV9F TkdJTkVfQ0xBU1NfQ09QWV0gPSAiMSIsCisJW0k5MTVfRU5HSU5FX0NMQVNTX1ZJREVPXSA9ICIy IiwKKwlbSTkxNV9FTkdJTkVfQ0xBU1NfVklERU9fRU5IQU5DRV0gPSAiMyIsCit9OworCiBpbnQK IGk5MTVfZ2VtX2FkZF9jbGllbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCXN0 cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiwKIAkJc3RydWN0IHRhc2tfc3Ry dWN0ICp0YXNrLAogCQl1bnNpZ25lZCBpbnQgc2VyaWFsKQogewotCWludCByZXQgPSAtRU5PTUVN OworCWludCBpLCByZXQgPSAtRU5PTUVNOwogCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRy OwotCWNoYXIgaWRbMzJdOworCWNoYXIgaWRzdHJbMzJdOwogCiAJaWYgKCFpOTE1LT5jbGllbnRz LnJvb3QpCiAJCXJldHVybiAwOyAvKiBpbnRlbF9mYmRldl9pbml0IHJlZ2lzdGVycyBhIGNsaWVu dCBiZWZvcmUgc3lzZnMgKi8KQEAgLTE1MjksOCArMTU4MSw4IEBAIGk5MTVfZ2VtX2FkZF9jbGll bnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJaWYgKCFmaWxlX3ByaXYtPmNsaWVu dC5uYW1lKQogCQlnb3RvIGVycl9uYW1lOwogCi0Jc25wcmludGYoaWQsIHNpemVvZihpZCksICIl dSIsIHNlcmlhbCk7Ci0JZmlsZV9wcml2LT5jbGllbnQucm9vdCA9IGtvYmplY3RfY3JlYXRlX2Fu ZF9hZGQoaWQsCisJc25wcmludGYoaWRzdHIsIHNpemVvZihpZHN0ciksICIldSIsIHNlcmlhbCk7 CisJZmlsZV9wcml2LT5jbGllbnQucm9vdCA9IGtvYmplY3RfY3JlYXRlX2FuZF9hZGQoaWRzdHIs CiAJCQkJCQkJaTkxNS0+Y2xpZW50cy5yb290KTsKIAlpZiAoIWZpbGVfcHJpdi0+Y2xpZW50LnJv b3QpCiAJCWdvdG8gZXJyX2NsaWVudDsKQEAgLTE1NTcsMTAgKzE2MDksNDQgQEAgaTkxNV9nZW1f YWRkX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlpZiAocmV0KQogCQln b3RvIGVycl9hdHRyX3BpZDsKIAorCWZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCA9CisJCQlr b2JqZWN0X2NyZWF0ZV9hbmRfYWRkKCJidXN5IiwgZmlsZV9wcml2LT5jbGllbnQucm9vdCk7CisJ aWYgKCFmaWxlX3ByaXYtPmNsaWVudC5idXN5X3Jvb3QpCisJCWdvdG8gZXJyX2J1c3lfcm9vdDsK KworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHVhYmlfY2xhc3NfbmFtZXMpOyBpKyspIHsK KwkJc3RydWN0IGk5MTVfZW5naW5lX2J1c3lfYXR0cmlidXRlICppOTE1X2F0dHIgPQorCQkJJmZp bGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpXTsKKworCQlpOTE1X2F0dHItPmZpbGVfcHJpdiA9 IGZpbGVfcHJpdjsKKwkJaTkxNV9hdHRyLT5lbmdpbmVfY2xhc3MgPSBpOworCisJCWF0dHIgPSAm aTkxNV9hdHRyLT5hdHRyOworCisJCXN5c2ZzX2F0dHJfaW5pdCgmYXR0ci0+YXR0cik7CisKKwkJ YXR0ci0+YXR0ci5uYW1lID0gdWFiaV9jbGFzc19uYW1lc1tpXTsKKwkJYXR0ci0+YXR0ci5tb2Rl ID0gMDQ0NDsKKwkJYXR0ci0+c2hvdyA9IHNob3dfY2xpZW50X2J1c3k7CisKKwkJcmV0ID0gc3lz ZnNfY3JlYXRlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9yb290LAorCQkJCSAgICAgICAg KHN0cnVjdCBhdHRyaWJ1dGUgKilhdHRyKTsKKwkJaWYgKHJldCkKKwkJCWdvdG8gZXJyX2F0dHJf YnVzeTsKKwl9CisKIAlmaWxlX3ByaXYtPmNsaWVudC5waWQgPSBwaWRfbnIoZ2V0X3Rhc2tfcGlk KHRhc2ssIFBJRFRZUEVfUElEKSk7CiAKIAlyZXR1cm4gMDsKIAorZXJyX2F0dHJfYnVzeToKKwlm b3IgKC0taTsgaSA+PSAwOyBpLS0pCisJCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xp ZW50LmJ1c3lfcm9vdCwKKwkJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xp ZW50LmF0dHIuYnVzeVtpXSk7CisJa29iamVjdF9wdXQoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9y b290KTsKK2Vycl9idXN5X3Jvb3Q6CisJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5jbGll bnQucm9vdCwKKwkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2LT5jbGllbnQuYXR0 ci5waWQpOwogZXJyX2F0dHJfcGlkOgogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xp ZW50LnJvb3QsCiAJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0 dHIubmFtZSk7CkBAIC0xNTc0LDkgKzE2NjAsMTcgQEAgaTkxNV9nZW1fYWRkX2NsaWVudChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAogdm9pZCBpOTE1X2dlbV9yZW1vdmVfY2xpZW50 KHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdikKIHsKKwl1bnNpZ25lZCBp bnQgaTsKKwogCWlmICghZmlsZV9wcml2LT5jbGllbnQubmFtZSkKIAkJcmV0dXJuOyAvKiBpbnRl bF9mYmRldl9pbml0IHJlZ2lzdGVycyBhIGNsaWVudCBiZWZvcmUgc3lzZnMgKi8KIAorCWZvciAo aSA9IDA7IGkgPCBBUlJBWV9TSVpFKHVhYmlfY2xhc3NfbmFtZXMpOyBpKyspCisJCXN5c2ZzX3Jl bW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCwKKwkJCQkgIChzdHJ1Y3QgYXR0 cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpXSk7CisKKwlrb2JqZWN0X3B1 dChmaWxlX3ByaXYtPmNsaWVudC5idXN5X3Jvb3QpOworCiAJc3lzZnNfcmVtb3ZlX2ZpbGUoZmls ZV9wcml2LT5jbGllbnQucm9vdCwKIAkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2 LT5jbGllbnQuYXR0ci5waWQpOwogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50 LnJvb3QsCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, HK_RANDOM_FROM,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0EA53CA9EA0 for ; Fri, 25 Oct 2019 14:21:41 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E094520684 for ; Fri, 25 Oct 2019 14:21:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E094520684 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4FA9B6EA55; Fri, 25 Oct 2019 14:21:40 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 60BE46EA50 for ; Fri, 25 Oct 2019 14:21:39 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Oct 2019 07:21:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,228,1569308400"; d="scan'208";a="202618192" Received: from mdlugoke-mobl1.ger.corp.intel.com (HELO localhost.localdomain) ([10.251.81.75]) by orsmga006.jf.intel.com with ESMTP; 25 Oct 2019 07:21:38 -0700 From: Tvrtko Ursulin To: Intel-gfx@lists.freedesktop.org Date: Fri, 25 Oct 2019 15:21:30 +0100 Message-Id: <20191025142131.17378-5-tvrtko.ursulin@linux.intel.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191025142131.17378-1-tvrtko.ursulin@linux.intel.com> References: <20191025142131.17378-1-tvrtko.ursulin@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [RFC 4/5] drm/i915: Expose per-engine client busyness X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191025142130.9XryPyAfqRfDK_98vQ8ohMwtlbgmhx_8zhNak640RN8@z> RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkV4cG9zZSBw ZXItY2xpZW50IGFuZCBwZXItZW5naW5lIGJ1c3luZXNzIHVuZGVyIHRoZSBwcmV2aW91c2x5IGFk ZGVkIHN5c2ZzCmNsaWVudCByb290LgoKVGhlIG5ldyBmaWxlcyBhcmUgb25lIHBlci1lbmdpbmUg aW5zdGFuY2UgYW5kIGxvY2F0ZWQgdW5kZXIgdGhlICdidXN5JwpkaXJlY3RvcnkuIEVhY2ggY29u dGFpbnMgYSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcgbmFuby1zZWNvbmQgcmVzb2x1dGlvbgp0 aW1lcyBlYWNoIGNsaWVudCdzIGpvYnMgd2VyZSBleGVjdXRpbmcgb24gdGhlIEdQVS4KClRoaXMg ZW5hYmxlcyB1c2Vyc3BhY2UgdG8gY3JlYXRlIGEgdG9wLWxpa2UgdG9vbCBmb3IgR1BVIHV0aWxp emF0aW9uOgoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KaW50ZWwtZ3B1LXRvcCAtICA5MzUvIDkzNSBNSHo7 ICAgIDAlIFJDNjsgMTQuNzMgV2F0dHM7ICAgICAxMDk3IGlycXMvcwoKICAgICAgSU1DIHJlYWRz OiAgICAgMTQwMSBNaUIvcwogICAgIElNQyB3cml0ZXM6ICAgICAgICA0IE1pQi9zCgogICAgICAg ICAgRU5HSU5FICAgICAgQlVTWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1JX1NF TUEgTUlfV0FJVAogICAgIFJlbmRlci8zRC8wICAgNjMuNzMlIHzilojilojilojilojilojiloji lojilojilojilojilojilojilojilojilojilojilojilojiloggICAgICAgICAgIHwgICAgICAz JSAgICAgIDAlCiAgICAgICBCbGl0dGVyLzAgICAgOS41MyUgfOKWiOKWiOKWiiAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAgICA2JSAgICAgIDAlCiAgICAgICAgIFZpZGVvLzAgICAzOS4z MiUgfOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiOKWiiAgICAgICAgICAgICAgICAg IHwgICAgIDE2JSAgICAgIDAlCiAgICAgICAgIFZpZGVvLzEgICAxNS42MiUgfOKWiOKWiOKWiOKW iOKWiyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgMCUgICAgICAwJQogIFZpZGVvRW5o YW5jZS8wICAgIDAuMDAlIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgMCUg ICAgICAwJQoKICBQSUQgICAgICAgICAgICBOQU1FICAgICBSQ1MgICAgICAgICAgQkNTICAgICAg ICAgIFZDUyAgICAgICAgIFZFQ1MKIDQwODQgICAgICAgIGdlbV93c2ltIHzilojilojilojiloji lojilowgICAgIHx84paIICAgICAgICAgIHx8ICAgICAgICAgICB8fCAgICAgICAgICAgfAogNDA4 NiAgICAgICAgZ2VtX3dzaW0gfOKWiOKWjCAgICAgICAgIHx8ICAgICAgICAgICB8fOKWiOKWiOKW iCAgICAgICAgfHwgICAgICAgICAgIHwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KCnYyOiBVc2UgaW50ZWxf Y29udGV4dF9lbmdpbmVfZ2V0X2J1c3lfdGltZS4KdjM6IE5ldyBkaXJlY3Rvcnkgc3RydWN0dXJl Lgp2NDogUmViYXNlLgp2NTogc3lzZnNfYXR0cl9pbml0Lgp2NjogU21hbGwgdGlkeSBpbiBpOTE1 X2dlbV9hZGRfY2xpZW50Lgp2NzogUmViYXNlIHRvIGJlIGVuZ2luZSBjbGFzcyBiYXNlZC4KClNp Z25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCB8ICAgOCArKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMgfCAxMDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr LS0KIDIgZmlsZXMgY2hhbmdlZCwgMTA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYjhmN2IwNjM3MjI0Li40NWYwZTI0NTUzMjIgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTg2LDYgKzE4NiwxMiBAQCBzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZTsKIHN0cnVjdCBpOTE1X21tX3N0cnVjdDsKIHN0cnVjdCBpOTE1X21tdV9vYmpl Y3Q7CiAKK3N0cnVjdCBpOTE1X2VuZ2luZV9idXN5X2F0dHJpYnV0ZSB7CisJc3RydWN0IGRldmlj ZV9hdHRyaWJ1dGUgYXR0cjsKKwlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3By aXY7CisJdW5zaWduZWQgaW50IGVuZ2luZV9jbGFzczsKK307CisKIHN0cnVjdCBkcm1faTkxNV9m aWxlX3ByaXZhdGUgewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdjsKIApAQCAt MjMwLDEwICsyMzYsMTIgQEAgc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSB7CiAJCWNoYXIg Km5hbWU7CiAKIAkJc3RydWN0IGtvYmplY3QgKnJvb3Q7CisJCXN0cnVjdCBrb2JqZWN0ICpidXN5 X3Jvb3Q7CiAKIAkJc3RydWN0IHsKIAkJCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIHBpZDsKIAkJ CXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlIG5hbWU7CisJCQlzdHJ1Y3QgaTkxNV9lbmdpbmVfYnVz eV9hdHRyaWJ1dGUgYnVzeVtNQVhfRU5HSU5FX0NMQVNTXTsKIAkJfSBhdHRyOwogCX0gY2xpZW50 OwogfTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDU0YTAwYzk1NDA2Ni4uYjNkMjFiNmI1 NzBjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTE1MTIsMTUgKzE1MTIsNjcgQEAgc2hv d19jbGllbnRfcGlkKHN0cnVjdCBkZXZpY2UgKmtkZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRl ICphdHRyLCBjaGFyICpidWYpCiAJcmV0dXJuIHNucHJpbnRmKGJ1ZiwgUEFHRV9TSVpFLCAiJXUi LCBmaWxlX3ByaXYtPmNsaWVudC5waWQpOwogfQogCitzdHJ1Y3QgYnVzeV9jdHggeworCXVuc2ln bmVkIGludCBlbmdpbmVfY2xhc3M7CisJdTY0IHRvdGFsOworfTsKKworc3RhdGljIGludCBidXN5 X2FkZChpbnQgaWQsIHZvaWQgKnAsIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGJ1c3lfY3R4ICpi YyA9IGRhdGE7CisJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCA9IHA7CisJdW5zaWduZWQg aW50IGVuZ2luZV9jbGFzcyA9IGJjLT5lbmdpbmVfY2xhc3M7CisJc3RydWN0IGk5MTVfZ2VtX2Vu Z2luZXNfaXRlciBpdDsKKwlzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2U7CisJdWludDY0X3QgdG90 YWwgPSBiYy0+dG90YWw7CisKKwlmb3JfZWFjaF9nZW1fZW5naW5lKGNlLCBpOTE1X2dlbV9jb250 ZXh0X2xvY2tfZW5naW5lcyhjdHgpLCBpdCkgeworCQlpZiAoY2UtPmVuZ2luZS0+dWFiaV9jbGFz cyA9PSBlbmdpbmVfY2xhc3MpCisJCQl0b3RhbCArPSBrdGltZV90b19ucyhpbnRlbF9jb250ZXh0 X2dldF9idXN5X3RpbWUoY2UpKTsKKwl9CisJaTkxNV9nZW1fY29udGV4dF91bmxvY2tfZW5naW5l cyhjdHgpOworCisJYmMtPnRvdGFsID0gdG90YWw7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGlj IHNzaXplX3QKK3Nob3dfY2xpZW50X2J1c3koc3RydWN0IGRldmljZSAqa2Rldiwgc3RydWN0IGRl dmljZV9hdHRyaWJ1dGUgKmF0dHIsIGNoYXIgKmJ1ZikKK3sKKwlzdHJ1Y3QgaTkxNV9lbmdpbmVf YnVzeV9hdHRyaWJ1dGUgKmk5MTVfYXR0ciA9CisJCWNvbnRhaW5lcl9vZihhdHRyLCB0eXBlb2Yo Kmk5MTVfYXR0ciksIGF0dHIpOworCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVf cHJpdiA9IGk5MTVfYXR0ci0+ZmlsZV9wcml2OworCXN0cnVjdCBidXN5X2N0eCBiYyA9IHsgLmVu Z2luZV9jbGFzcyA9IGk5MTVfYXR0ci0+ZW5naW5lX2NsYXNzIH07CisJaW50IHJldDsKKworCXJl dCA9IG11dGV4X2xvY2tfaW50ZXJydXB0aWJsZSgmZmlsZV9wcml2LT5jb250ZXh0X2lkcl9sb2Nr KTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJaWRyX2Zvcl9lYWNoKCZmaWxlX3ByaXYt PmNvbnRleHRfaWRyLCBidXN5X2FkZCwgJmJjKTsKKworCW11dGV4X3VubG9jaygmZmlsZV9wcml2 LT5jb250ZXh0X2lkcl9sb2NrKTsKKworCXJldHVybiBzbnByaW50ZihidWYsIFBBR0VfU0laRSwg IiVsbHVcbiIsIGJjLnRvdGFsKTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKnVhYmlfY2xhc3Nf bmFtZXNbXSA9IHsKKwlbSTkxNV9FTkdJTkVfQ0xBU1NfUkVOREVSXSA9ICIwIiwKKwlbSTkxNV9F TkdJTkVfQ0xBU1NfQ09QWV0gPSAiMSIsCisJW0k5MTVfRU5HSU5FX0NMQVNTX1ZJREVPXSA9ICIy IiwKKwlbSTkxNV9FTkdJTkVfQ0xBU1NfVklERU9fRU5IQU5DRV0gPSAiMyIsCit9OworCiBpbnQK IGk5MTVfZ2VtX2FkZF9jbGllbnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJCXN0 cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiwKIAkJc3RydWN0IHRhc2tfc3Ry dWN0ICp0YXNrLAogCQl1bnNpZ25lZCBpbnQgc2VyaWFsKQogewotCWludCByZXQgPSAtRU5PTUVN OworCWludCBpLCByZXQgPSAtRU5PTUVNOwogCXN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRy OwotCWNoYXIgaWRbMzJdOworCWNoYXIgaWRzdHJbMzJdOwogCiAJaWYgKCFpOTE1LT5jbGllbnRz LnJvb3QpCiAJCXJldHVybiAwOyAvKiBpbnRlbF9mYmRldl9pbml0IHJlZ2lzdGVycyBhIGNsaWVu dCBiZWZvcmUgc3lzZnMgKi8KQEAgLTE1MjksOCArMTU4MSw4IEBAIGk5MTVfZ2VtX2FkZF9jbGll bnQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJaWYgKCFmaWxlX3ByaXYtPmNsaWVu dC5uYW1lKQogCQlnb3RvIGVycl9uYW1lOwogCi0Jc25wcmludGYoaWQsIHNpemVvZihpZCksICIl dSIsIHNlcmlhbCk7Ci0JZmlsZV9wcml2LT5jbGllbnQucm9vdCA9IGtvYmplY3RfY3JlYXRlX2Fu ZF9hZGQoaWQsCisJc25wcmludGYoaWRzdHIsIHNpemVvZihpZHN0ciksICIldSIsIHNlcmlhbCk7 CisJZmlsZV9wcml2LT5jbGllbnQucm9vdCA9IGtvYmplY3RfY3JlYXRlX2FuZF9hZGQoaWRzdHIs CiAJCQkJCQkJaTkxNS0+Y2xpZW50cy5yb290KTsKIAlpZiAoIWZpbGVfcHJpdi0+Y2xpZW50LnJv b3QpCiAJCWdvdG8gZXJyX2NsaWVudDsKQEAgLTE1NTcsMTAgKzE2MDksNDQgQEAgaTkxNV9nZW1f YWRkX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlpZiAocmV0KQogCQln b3RvIGVycl9hdHRyX3BpZDsKIAorCWZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCA9CisJCQlr b2JqZWN0X2NyZWF0ZV9hbmRfYWRkKCJidXN5IiwgZmlsZV9wcml2LT5jbGllbnQucm9vdCk7CisJ aWYgKCFmaWxlX3ByaXYtPmNsaWVudC5idXN5X3Jvb3QpCisJCWdvdG8gZXJyX2J1c3lfcm9vdDsK KworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHVhYmlfY2xhc3NfbmFtZXMpOyBpKyspIHsK KwkJc3RydWN0IGk5MTVfZW5naW5lX2J1c3lfYXR0cmlidXRlICppOTE1X2F0dHIgPQorCQkJJmZp bGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpXTsKKworCQlpOTE1X2F0dHItPmZpbGVfcHJpdiA9 IGZpbGVfcHJpdjsKKwkJaTkxNV9hdHRyLT5lbmdpbmVfY2xhc3MgPSBpOworCisJCWF0dHIgPSAm aTkxNV9hdHRyLT5hdHRyOworCisJCXN5c2ZzX2F0dHJfaW5pdCgmYXR0ci0+YXR0cik7CisKKwkJ YXR0ci0+YXR0ci5uYW1lID0gdWFiaV9jbGFzc19uYW1lc1tpXTsKKwkJYXR0ci0+YXR0ci5tb2Rl ID0gMDQ0NDsKKwkJYXR0ci0+c2hvdyA9IHNob3dfY2xpZW50X2J1c3k7CisKKwkJcmV0ID0gc3lz ZnNfY3JlYXRlX2ZpbGUoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9yb290LAorCQkJCSAgICAgICAg KHN0cnVjdCBhdHRyaWJ1dGUgKilhdHRyKTsKKwkJaWYgKHJldCkKKwkJCWdvdG8gZXJyX2F0dHJf YnVzeTsKKwl9CisKIAlmaWxlX3ByaXYtPmNsaWVudC5waWQgPSBwaWRfbnIoZ2V0X3Rhc2tfcGlk KHRhc2ssIFBJRFRZUEVfUElEKSk7CiAKIAlyZXR1cm4gMDsKIAorZXJyX2F0dHJfYnVzeToKKwlm b3IgKC0taTsgaSA+PSAwOyBpLS0pCisJCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xp ZW50LmJ1c3lfcm9vdCwKKwkJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xp ZW50LmF0dHIuYnVzeVtpXSk7CisJa29iamVjdF9wdXQoZmlsZV9wcml2LT5jbGllbnQuYnVzeV9y b290KTsKK2Vycl9idXN5X3Jvb3Q6CisJc3lzZnNfcmVtb3ZlX2ZpbGUoZmlsZV9wcml2LT5jbGll bnQucm9vdCwKKwkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2LT5jbGllbnQuYXR0 ci5waWQpOwogZXJyX2F0dHJfcGlkOgogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xp ZW50LnJvb3QsCiAJCQkgIChzdHJ1Y3QgYXR0cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0 dHIubmFtZSk7CkBAIC0xNTc0LDkgKzE2NjAsMTcgQEAgaTkxNV9nZW1fYWRkX2NsaWVudChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAogdm9pZCBpOTE1X2dlbV9yZW1vdmVfY2xpZW50 KHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdikKIHsKKwl1bnNpZ25lZCBp bnQgaTsKKwogCWlmICghZmlsZV9wcml2LT5jbGllbnQubmFtZSkKIAkJcmV0dXJuOyAvKiBpbnRl bF9mYmRldl9pbml0IHJlZ2lzdGVycyBhIGNsaWVudCBiZWZvcmUgc3lzZnMgKi8KIAorCWZvciAo aSA9IDA7IGkgPCBBUlJBWV9TSVpFKHVhYmlfY2xhc3NfbmFtZXMpOyBpKyspCisJCXN5c2ZzX3Jl bW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50LmJ1c3lfcm9vdCwKKwkJCQkgIChzdHJ1Y3QgYXR0 cmlidXRlICopJmZpbGVfcHJpdi0+Y2xpZW50LmF0dHIuYnVzeVtpXSk7CisKKwlrb2JqZWN0X3B1 dChmaWxlX3ByaXYtPmNsaWVudC5idXN5X3Jvb3QpOworCiAJc3lzZnNfcmVtb3ZlX2ZpbGUoZmls ZV9wcml2LT5jbGllbnQucm9vdCwKIAkJCSAgKHN0cnVjdCBhdHRyaWJ1dGUgKikmZmlsZV9wcml2 LT5jbGllbnQuYXR0ci5waWQpOwogCXN5c2ZzX3JlbW92ZV9maWxlKGZpbGVfcHJpdi0+Y2xpZW50 LnJvb3QsCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeA==