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 6E3E06E135 for ; Tue, 17 Apr 2018 12:28:10 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id d19so35012347wre.1 for ; Tue, 17 Apr 2018 05:28:10 -0700 (PDT) From: Tvrtko Ursulin Date: Tue, 17 Apr 2018 13:27:30 +0100 Message-Id: <20180417122736.11603-2-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] [PATCH 1/7] drm/i915: Use seqlock in engine stats 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: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGNhbiBj b252ZXJ0IGVuZ2luZSBzdGF0cyBmcm9tIGEgc3BpbmxvY2sgdG8gc2VxbG9jayB0byBlbnN1cmUg aW50ZXJydXB0CnByb2Nlc3NpbmcgaXMgbmV2ZXIgZXZlbiBhIHRpbnkgYml0IGRlbGF5ZWQgYnkg cGFyYWxsZWwgcmVhZGVycy4KClRoZXJlIGlzIGEgc21pZGdlbiBiaXQgbW9yZSBjb3N0IG9uIHRo ZSB3cml0ZSBsb2NrIHNpZGUsIGFuZCBhbiBleHRyZW1lbHkKdW5saWtlbHkgY2hhbmNlIHRoYXQg cmVhZGVycyB3aWxsIGhhdmUgdG8gcmV0cnkgYSBmZXcgdGltZXMgaW4gZmFjZSBvZgpoZWF2eSBp bnRlcnJ1cHQgbG9hZC5CYnV0IGl0IHNob3VsZCBiZSBleHRyZW1lbHkgdW5saWtlbHkgZ2l2ZW4g aG93CmxpZ2h0d2VpZ2h0IHJlYWQgc2lkZSBzZWN0aW9uIGlzIGNvbXBhcmVkIHRvIHRoZSBpbnRl cnJ1cHQgcHJvY2Vzc2luZyBzaWRlLAphbmQgYWxzbyBjb21wYXJlZCB0byB0aGUgcmVzdCBvZiB0 aGUgY29kZSBwYXRocyB3aGljaCBjYW4gbGVhZCBpbnRvIGl0LgoKU2lnbmVkLW9mZi1ieTogVHZy dGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KU3VnZ2VzdGVkLWJ5OiBDaHJp cyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IENocmlzIFdpbHNvbiA8Y2hy aXNAY2hyaXMtd2lsc29uLmNvLnVrPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Vu Z2luZV9jcy5jICB8IDE5ICsrKysrKysrKystLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuaCB8IDExICsrKysrKy0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE2 IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZW5naW5lX2NzLmMKaW5kZXggZTQ5OTJjMmUyM2E0Li5kZTYxZDNkMTY1M2QgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCkBAIC0zMDYsNyArMzA2LDcgQEAgaW50ZWxfZW5n aW5lX3NldHVwKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkvKiBOb3RoaW5n IHRvIGRvIGhlcmUsIGV4ZWN1dGUgaW4gb3JkZXIgb2YgZGVwZW5kZW5jaWVzICovCiAJZW5naW5l LT5zY2hlZHVsZSA9IE5VTEw7CiAKLQlzcGluX2xvY2tfaW5pdCgmZW5naW5lLT5zdGF0cy5sb2Nr KTsKKwlzZXFsb2NrX2luaXQoJmVuZ2luZS0+c3RhdHMubG9jayk7CiAKIAlBVE9NSUNfSU5JVF9O T1RJRklFUl9IRUFEKCZlbmdpbmUtPmNvbnRleHRfc3RhdHVzX25vdGlmaWVyKTsKIApAQCAtMjA2 NSw3ICsyMDY1LDcgQEAgaW50IGludGVsX2VuYWJsZV9lbmdpbmVfc3RhdHMoc3RydWN0IGludGVs X2VuZ2luZV9jcyAqZW5naW5lKQogCQlyZXR1cm4gLUVOT0RFVjsKIAogCXRhc2tsZXRfZGlzYWJs ZSgmZXhlY2xpc3RzLT50YXNrbGV0KTsKLQlzcGluX2xvY2tfaXJxc2F2ZSgmZW5naW5lLT5zdGF0 cy5sb2NrLCBmbGFncyk7CisJd3JpdGVfc2VxbG9ja19pcnFzYXZlKCZlbmdpbmUtPnN0YXRzLmxv Y2ssIGZsYWdzKTsKIAogCWlmICh1bmxpa2VseShlbmdpbmUtPnN0YXRzLmVuYWJsZWQgPT0gfjAp KSB7CiAJCWVyciA9IC1FQlVTWTsKQEAgLTIwODksNyArMjA4OSw3IEBAIGludCBpbnRlbF9lbmFi bGVfZW5naW5lX3N0YXRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAl9CiAKIHVu bG9jazoKLQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdz KTsKKwl3cml0ZV9zZXF1bmxvY2tfaXJxcmVzdG9yZSgmZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFn cyk7CiAJdGFza2xldF9lbmFibGUoJmV4ZWNsaXN0cy0+dGFza2xldCk7CiAKIAlyZXR1cm4gZXJy OwpAQCAtMjExOCwxMiArMjExOCwxMyBAQCBzdGF0aWMga3RpbWVfdCBfX2ludGVsX2VuZ2luZV9n ZXRfYnVzeV90aW1lKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKICAqLwoga3RpbWVf dCBpbnRlbF9lbmdpbmVfZ2V0X2J1c3lfdGltZShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdp bmUpCiB7CisJdW5zaWduZWQgaW50IHNlcTsKIAlrdGltZV90IHRvdGFsOwotCXVuc2lnbmVkIGxv bmcgZmxhZ3M7CiAKLQlzcGluX2xvY2tfaXJxc2F2ZSgmZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFn cyk7Ci0JdG90YWwgPSBfX2ludGVsX2VuZ2luZV9nZXRfYnVzeV90aW1lKGVuZ2luZSk7Ci0Jc3Bp bl91bmxvY2tfaXJxcmVzdG9yZSgmZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFncyk7CisJZG8gewor CQlzZXEgPSByZWFkX3NlcWJlZ2luKCZlbmdpbmUtPnN0YXRzLmxvY2spOworCQl0b3RhbCA9IF9f aW50ZWxfZW5naW5lX2dldF9idXN5X3RpbWUoZW5naW5lKTsKKwl9IHdoaWxlIChyZWFkX3NlcXJl dHJ5KCZlbmdpbmUtPnN0YXRzLmxvY2ssIHNlcSkpOwogCiAJcmV0dXJuIHRvdGFsOwogfQpAQCAt MjE0MSwxMyArMjE0MiwxMyBAQCB2b2lkIGludGVsX2Rpc2FibGVfZW5naW5lX3N0YXRzKHN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAlpZiAoIWludGVsX2VuZ2luZV9zdXBwb3J0c19z dGF0cyhlbmdpbmUpKQogCQlyZXR1cm47CiAKLQlzcGluX2xvY2tfaXJxc2F2ZSgmZW5naW5lLT5z dGF0cy5sb2NrLCBmbGFncyk7CisJd3JpdGVfc2VxbG9ja19pcnFzYXZlKCZlbmdpbmUtPnN0YXRz LmxvY2ssIGZsYWdzKTsKIAlXQVJOX09OX09OQ0UoZW5naW5lLT5zdGF0cy5lbmFibGVkID09IDAp OwogCWlmICgtLWVuZ2luZS0+c3RhdHMuZW5hYmxlZCA9PSAwKSB7CiAJCWVuZ2luZS0+c3RhdHMu dG90YWwgPSBfX2ludGVsX2VuZ2luZV9nZXRfYnVzeV90aW1lKGVuZ2luZSk7CiAJCWVuZ2luZS0+ c3RhdHMuYWN0aXZlID0gMDsKIAl9Ci0Jc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmZW5naW5lLT5z dGF0cy5sb2NrLCBmbGFncyk7CisJd3JpdGVfc2VxdW5sb2NrX2lycXJlc3RvcmUoJmVuZ2luZS0+ c3RhdHMubG9jaywgZmxhZ3MpOwogfQogCiAjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0k5MTVf U0VMRlRFU1QpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5kZXggZDUw YjMxZWI0M2E1Li5mMjRlYTk4MjYwMzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmgKQEAgLTMsNiArMyw3IEBACiAjZGVmaW5lIF9JTlRFTF9SSU5HQlVGRkVSX0hfCiAK ICNpbmNsdWRlIDxsaW51eC9oYXNodGFibGUuaD4KKyNpbmNsdWRlIDxsaW51eC9zZXFsb2NrLmg+ CiAKICNpbmNsdWRlICJpOTE1X2dlbV9iYXRjaF9wb29sLmgiCiAjaW5jbHVkZSAiaTkxNV9nZW1f dGltZWxpbmUuaCIKQEAgLTYxMCw3ICs2MTEsNyBAQCBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzIHsK IAkJLyoqCiAJCSAqIEBsb2NrOiBMb2NrIHByb3RlY3RpbmcgdGhlIGJlbG93IGZpZWxkcy4KIAkJ ICovCi0JCXNwaW5sb2NrX3QgbG9jazsKKwkJc2VxbG9ja190IGxvY2s7CiAJCS8qKgogCQkgKiBA ZW5hYmxlZDogUmVmZXJlbmNlIGNvdW50IGluZGljYXRpbmcgbnVtYmVyIG9mIGxpc3RlbmVycy4K IAkJICovCkBAIC0xMDgyLDcgKzEwODMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfZW5n aW5lX2NvbnRleHRfaW4oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCWlmIChSRUFE X09OQ0UoZW5naW5lLT5zdGF0cy5lbmFibGVkKSA9PSAwKQogCQlyZXR1cm47CiAKLQlzcGluX2xv Y2tfaXJxc2F2ZSgmZW5naW5lLT5zdGF0cy5sb2NrLCBmbGFncyk7CisJd3JpdGVfc2VxbG9ja19p cnFzYXZlKCZlbmdpbmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKIAogCWlmIChlbmdpbmUtPnN0YXRz LmVuYWJsZWQgPiAwKSB7CiAJCWlmIChlbmdpbmUtPnN0YXRzLmFjdGl2ZSsrID09IDApCkBAIC0x MDkwLDcgKzEwOTEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfZW5naW5lX2NvbnRleHRf aW4oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCQlHRU1fQlVHX09OKGVuZ2luZS0+ c3RhdHMuYWN0aXZlID09IDApOwogCX0KIAotCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmVuZ2lu ZS0+c3RhdHMubG9jaywgZmxhZ3MpOworCXdyaXRlX3NlcXVubG9ja19pcnFyZXN0b3JlKCZlbmdp bmUtPnN0YXRzLmxvY2ssIGZsYWdzKTsKIH0KIAogc3RhdGljIGlubGluZSB2b2lkIGludGVsX2Vu Z2luZV9jb250ZXh0X291dChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCkBAIC0xMTAw LDcgKzExMDEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfZW5naW5lX2NvbnRleHRfb3V0 KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAlpZiAoUkVBRF9PTkNFKGVuZ2luZS0+ c3RhdHMuZW5hYmxlZCkgPT0gMCkKIAkJcmV0dXJuOwogCi0Jc3Bpbl9sb2NrX2lycXNhdmUoJmVu Z2luZS0+c3RhdHMubG9jaywgZmxhZ3MpOworCXdyaXRlX3NlcWxvY2tfaXJxc2F2ZSgmZW5naW5l LT5zdGF0cy5sb2NrLCBmbGFncyk7CiAKIAlpZiAoZW5naW5lLT5zdGF0cy5lbmFibGVkID4gMCkg ewogCQlrdGltZV90IGxhc3Q7CkBAIC0xMTI3LDcgKzExMjgsNyBAQCBzdGF0aWMgaW5saW5lIHZv aWQgaW50ZWxfZW5naW5lX2NvbnRleHRfb3V0KHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2lu ZSkKIAkJfQogCX0KIAotCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmVuZ2luZS0+c3RhdHMubG9j aywgZmxhZ3MpOworCXdyaXRlX3NlcXVubG9ja19pcnFyZXN0b3JlKCZlbmdpbmUtPnN0YXRzLmxv Y2ssIGZsYWdzKTsKIH0KIAogaW50IGludGVsX2VuYWJsZV9lbmdpbmVfc3RhdHMoc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lKTsKLS0gCjIuMTQuMQoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pZ3QtZGV2Cg==