From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 13/14] drm/i915: Export engine busy stats in debugfs Date: Tue, 18 Jul 2017 15:36:17 +0100 Message-ID: <20170718143618.12254-14-tvrtko.ursulin@linux.intel.com> References: <20170718143618.12254-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 DD4896E366 for ; Tue, 18 Jul 2017 14:36:47 +0000 (UTC) Received: by mail-wr0-x243.google.com with SMTP id w4so5329581wrb.1 for ; Tue, 18 Jul 2017 07:36:47 -0700 (PDT) In-Reply-To: <20170718143618.12254-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 Cc: Ben Widawsky List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkV4cG9ydCB0 aGUgc3RhdHMgYWRkZWQgaW4gdGhlIHByZXZpb3VzIHBhdGNoIGluIGRlYnVnZnMuCgpOdW1iZXIg b2YgYWN0aXZlIGNsaWVudHMgcmVhZGluZyB0aGlzIGRhdGEgaXMgdHJhY2tlZCBhbmQgdGhlCnN0 YXRpYyBrZXkgaXMgb25seSBlbmFibGVkIHdoaWxzdCB0aGVyZSBhcmUgc29tZS4KClVzZXJzcGFj ZSBpcyBpbnRlbmRlZCB0byBrZWVwIHRoZSBmaWxlIGRlc2NyaXB0b3Igb3Blbiwgc2Vla2luZwp0 byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBmaWxlIHBlcmlvZGljYWxseSwgYW5kIHJlLXJlYWRpbmcg dGhlCnN0YXRzLgoKVGhpcyBpcyBiZWNhdXNlIHRoZSB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9u IGlzIGNvc3RseSBvbiBldmVyeQpmaXJzdCBvcGVuL2xhc3QgY2xvc2UgdHJhbnNpdGlvbiwgYW5k IGFsc28sIGJlY2F1c2UgdGhlIHN0YXRzCmV4cG9ydGVkIG1vc3RseSBtYWtlIHNlbnNlIHdoZW4g dGhleSBhcmUgY29uc2lkZXJlZCByZWxhdGl2ZSB0bwp0aGUgcHJldmlvdXMgc2FtcGxlLgoKRmls ZSBsaXN0cyBuYW5vc2Vjb25kcyBlYWNoIGVuZ2luZSB3YXMgYWN0aXZlIHNpbmNlIHRoZSB0cmFj a2luZwpoYXMgc3RhcnRlZC4KCnYyOiBSZWJhc2UuCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJz dWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZGVidWdmcy5jIHwgODkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogMSBmaWxlIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZGVidWdmcy5jCmluZGV4IDJlZjc1YzFhNjExOS4uNWE0MjVjYzIyNWRmIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtNDg0OCw2ICs0ODQ4LDg5IEBAIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGk5MTVfaHBkX3N0b3JtX2N0bF9mb3BzID0gewogCS53cml0 ZSA9IGk5MTVfaHBkX3N0b3JtX2N0bF93cml0ZQogfTsKIAorc3RydWN0IGk5MTVfZW5naW5lX3N0 YXRzX2J1ZiB7CisJdW5zaWduZWQgaW50IGxlbjsKKwlzaXplX3QgYXZhaWxhYmxlOworCWNoYXIg YnVmWzBdOworfTsKKworc3RhdGljIGludCBpOTE1X2VuZ2luZV9zdGF0c19vcGVuKHN0cnVjdCBp bm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxlICpmaWxlKQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1ID0gZmlsZS0+Zl9pbm9kZS0+aV9wcml2YXRlOworCWNvbnN0IHVuc2lnbmVkIGlu dCBlbmdpbmVfbmFtZV9sZW4gPQorCQlzaXplb2YoKChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICop MCktPm5hbWUpOworCXN0cnVjdCBpOTE1X2VuZ2luZV9zdGF0c19idWYgKmJ1ZjsKKwljb25zdCB1 bnNpZ25lZCBpbnQgYnVmX3NpemUgPQorCQkoZW5naW5lX25hbWVfbGVuICsgMiArIDE5ICsgMSkg KiBJOTE1X05VTV9FTkdJTkVTICsgMSArCisJCXNpemVvZigqYnVmKTsKKwlpbnQgcmV0OworCisJ YnVmID0ga3phbGxvYyhidWZfc2l6ZSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFidWYpCisJCXJldHVy biAtRU5PTUVNOworCisJcmV0ID0gaW50ZWxfZW5hYmxlX2VuZ2luZV9zdGF0cyhpOTE1KTsKKwlp ZiAocmV0KSB7CisJCWtmcmVlKGJ1Zik7CisJCXJldHVybiByZXQ7CisJfQorCisJYnVmLT5sZW4g PSBidWZfc2l6ZTsKKwlmaWxlLT5wcml2YXRlX2RhdGEgPSBidWY7CisKKwlyZXR1cm4gMDsKK30K Kworc3RhdGljIGludCBpOTE1X2VuZ2luZV9zdGF0c19yZWxlYXNlKHN0cnVjdCBpbm9kZSAqaW5v ZGUsIHN0cnVjdCBmaWxlICpmaWxlKQoreworCWludGVsX2Rpc2FibGVfZW5naW5lX3N0YXRzKCk7 CisJa2ZyZWUoZmlsZS0+cHJpdmF0ZV9kYXRhKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMg c3NpemVfdCBpOTE1X2VuZ2luZV9zdGF0c19yZWFkKHN0cnVjdCBmaWxlICpmaWxlLCBjaGFyIF9f dXNlciAqdWJ1ZiwKKwkJCQkgICAgICBzaXplX3QgY291bnQsIGxvZmZfdCAqcG9zKQoreworCXN0 cnVjdCBpOTE1X2VuZ2luZV9zdGF0c19idWYgKmJ1ZiA9CisJCShzdHJ1Y3QgaTkxNV9lbmdpbmVf c3RhdHNfYnVmICopZmlsZS0+cHJpdmF0ZV9kYXRhOworCisJaWYgKCpwb3MgPT0gMCkgeworCQlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBmaWxlLT5mX2lub2RlLT5pX3ByaXZh dGU7CisJCWNoYXIgKnB0ciA9ICZidWYtPmJ1ZlswXTsKKwkJaW50IGxlZnQgPSBidWYtPmxlbjsK KwkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCQllbnVtIGludGVsX2VuZ2luZV9p ZCBpZDsKKworCQlidWYtPmF2YWlsYWJsZSA9IDA7CisKKwkJZm9yX2VhY2hfZW5naW5lKGVuZ2lu ZSwgZGV2X3ByaXYsIGlkKSB7CisJCQl1NjQgdG90YWwgPSBpbnRlbF9lbmdpbmVfZ2V0X2N1cnJl bnRfYnVzeV9ucyhlbmdpbmUpOworCQkJaW50IGxlbjsKKworCQkJbGVuID0gc25wcmludGYocHRy LCBsZWZ0LCAiJXM6ICVsbHVcbiIsCisJCQkJICAgICAgIGVuZ2luZS0+bmFtZSwgdG90YWwpOwor CQkJYnVmLT5hdmFpbGFibGUgKz0gbGVuOworCQkJbGVmdCAtPSBsZW47CisJCQlwdHIgKz0gbGVu OworCisJCQlpZiAobGVuID09IDApCisJCQkJcmV0dXJuIC1FRkJJRzsKKwkJfQorCX0KKworCXJl dHVybiBzaW1wbGVfcmVhZF9mcm9tX2J1ZmZlcih1YnVmLCBjb3VudCwgcG9zLCAmYnVmLT5idWZb MF0sCisJCQkJICAgICAgIGJ1Zi0+YXZhaWxhYmxlKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVj dCBmaWxlX29wZXJhdGlvbnMgaTkxNV9lbmdpbmVfc3RhdHNfZm9wcyA9IHsKKwkub3duZXIgPSBU SElTX01PRFVMRSwKKwkub3BlbiA9IGk5MTVfZW5naW5lX3N0YXRzX29wZW4sCisJLnJlbGVhc2Ug PSBpOTE1X2VuZ2luZV9zdGF0c19yZWxlYXNlLAorCS5yZWFkID0gaTkxNV9lbmdpbmVfc3RhdHNf cmVhZCwKKwkubGxzZWVrID0gZGVmYXVsdF9sbHNlZWssCit9OworCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRybV9pbmZvX2xpc3QgaTkxNV9kZWJ1Z2ZzX2xpc3RbXSA9IHsKIAl7Imk5MTVfY2FwYWJp bGl0aWVzIiwgaTkxNV9jYXBhYmlsaXRpZXMsIDB9LAogCXsiaTkxNV9nZW1fb2JqZWN0cyIsIGk5 MTVfZ2VtX29iamVjdF9pbmZvLCAwfSwKQEAgLTQ5MzgsNiArNTAyMSwxMiBAQCBpbnQgaTkxNV9k ZWJ1Z2ZzX3JlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlzdHJ1 Y3QgZGVudHJ5ICplbnQ7CiAJaW50IHJldCwgaTsKIAorCWVudCA9IGRlYnVnZnNfY3JlYXRlX2Zp bGUoImk5MTVfZW5naW5lX3N0YXRzIiwgU19JUlVHTywKKwkJCQkgIG1pbm9yLT5kZWJ1Z2ZzX3Jv b3QsIHRvX2k5MTUobWlub3ItPmRldiksCisJCQkJICAmaTkxNV9lbmdpbmVfc3RhdHNfZm9wcyk7 CisJaWYgKCFlbnQpCisJCXJldHVybiAtRU5PTUVNOworCiAJZW50ID0gZGVidWdmc19jcmVhdGVf ZmlsZSgiaTkxNV9mb3JjZXdha2VfdXNlciIsIFNfSVJVU1IsCiAJCQkJICBtaW5vci0+ZGVidWdm c19yb290LCB0b19pOTE1KG1pbm9yLT5kZXYpLAogCQkJCSAgJmk5MTVfZm9yY2V3YWtlX2ZvcHMp OwotLSAKMi45LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=