From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 23/71] drm/i915: Use a preemption timeout to enforce interactivity Date: Thu, 3 May 2018 07:37:09 +0100 Message-ID: <20180503063757.22238-23-chris@chris-wilson.co.uk> References: <20180503063757.22238-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4904A6E6A5 for ; Thu, 3 May 2018 06:38:57 +0000 (UTC) In-Reply-To: <20180503063757.22238-1-chris@chris-wilson.co.uk> 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 VXNlIGEgbGliZXJhbCB0aW1lb3V0IG9mIDIwbXMgdG8gZW5zdXJlIHRoYXQgdGhlIHJlbmRlcmlu ZyBmb3IgYW4KaW50ZXJhY3RpdmUgcGFnZWZsaXAgaXMgc3RhcnRlZCBpbiBhIHRpbWVseSBmYXNo aW9uLCBhbmQgdGhhdAp1c2VyIGludGVyYWN0aW9uIGlzIG5vdCBibG9ja2VkIGJ5IEdQVSwgb3Ig Q1BVLCBob2dzLiBUaGlzIGlzIGF0IHRoZSBjb3N0Cm9mIHJlc2V0dGluZyB3aG9ldmVyIHdhcyBi bG9ja2luZyB0aGUgcHJlZW1wdGlvbiwgbGlrZWx5IGxlYWRpbmcgdG8gdGhhdApjb250ZXh0L3By b2Nlc3MgYmVpbmcgYmFubmVkIGZyb20gc3VibWl0dGluZyBmdXR1cmUgcmVxdWVzdHMuCgpTaWdu ZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAgNCArKystCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jICAgICAgfCAxOSArKysrKysrKysrKy0tLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAxNyArKysrKysrKysrKysrKysrLQog MyBmaWxlcyBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAppbmRleCA5MzQxYjcyNTExM2IuLjFmZWQxYTkwYjI1ZSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zMTY3LDggKzMxNjcsMTAgQEAgaW50IGk5MTVfZ2VtX29i amVjdF93YWl0KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkgc3RydWN0IGlu dGVsX3Jwc19jbGllbnQgKnJwcyk7CiBpbnQgaTkxNV9nZW1fb2JqZWN0X3dhaXRfcHJpb3JpdHko c3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAkJCQkgIHVuc2lnbmVkIGludCBmbGFn cywKLQkJCQkgIGNvbnN0IHN0cnVjdCBpOTE1X3NjaGVkX2F0dHIgKmF0dHIpOworCQkJCSAgY29u c3Qgc3RydWN0IGk5MTVfc2NoZWRfYXR0ciAqYXR0ciwKKwkJCQkgIHVuc2lnbmVkIGludCB0aW1l b3V0KTsKICNkZWZpbmUgSTkxNV9QUklPUklUWV9ESVNQTEFZIEk5MTVfUFJJT1JJVFlfTUFYCisj ZGVmaW5lIEk5MTVfUFJFRU1QVElPTl9USU1FT1VUX0RJU1BMQVkgKDEwMCAqIDEwMDAgKiAxMDAw KSAvKiAxMDAgbXMgLyAxMEh6ICovCiAKIGludCBfX211c3RfY2hlY2sKIGk5MTVfZ2VtX29iamVj dF9zZXRfdG9fd2NfZG9tYWluKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIGJvb2wg d3JpdGUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggNDk4NmM0ZjFlY2Y5Li4zNDRlM2Q5 OGFjZDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtNTY3LDcgKzU2Nyw4IEBAIGk5MTVf Z2VtX29iamVjdF93YWl0X3Jlc2VydmF0aW9uKHN0cnVjdCByZXNlcnZhdGlvbl9vYmplY3QgKnJl c3YsCiB9CiAKIHN0YXRpYyB2b2lkIF9fZmVuY2Vfc2V0X3ByaW9yaXR5KHN0cnVjdCBkbWFfZmVu Y2UgKmZlbmNlLAotCQkJCSBjb25zdCBzdHJ1Y3QgaTkxNV9zY2hlZF9hdHRyICphdHRyKQorCQkJ CSBjb25zdCBzdHJ1Y3QgaTkxNV9zY2hlZF9hdHRyICphdHRyLAorCQkJCSB1bnNpZ25lZCBpbnQg dGltZW91dCkKIHsKIAlzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpycTsKIAlzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICplbmdpbmU7CkBAIC01ODAsMTIgKzU4MSwxMyBAQCBzdGF0aWMgdm9pZCBfX2ZlbmNl X3NldF9wcmlvcml0eShzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZSwKIAogCWxvY2FsX2JoX2Rpc2Fi bGUoKTsgLyogUkNVIHNlcmlhbGlzYXRpb24gZm9yIHNldC13ZWRnZWQgcHJvdGVjdGlvbiAqLwog CWlmIChlbmdpbmUtPnNjaGVkdWxlKQotCQllbmdpbmUtPnNjaGVkdWxlKHJxLCBhdHRyLCAwKTsK KwkJZW5naW5lLT5zY2hlZHVsZShycSwgYXR0ciwgdGltZW91dCk7CiAJbG9jYWxfYmhfZW5hYmxl KCk7IC8qIGtpY2sgdGhlIHRhc2tsZXRzIGlmIHF1ZXVlcyB3ZXJlIHJlcHJpb3JpdGlzZWQgKi8K IH0KIAogc3RhdGljIHZvaWQgZmVuY2Vfc2V0X3ByaW9yaXR5KHN0cnVjdCBkbWFfZmVuY2UgKmZl bmNlLAotCQkJICAgICAgIGNvbnN0IHN0cnVjdCBpOTE1X3NjaGVkX2F0dHIgKmF0dHIpCisJCQkg ICAgICAgY29uc3Qgc3RydWN0IGk5MTVfc2NoZWRfYXR0ciAqYXR0ciwKKwkJCSAgICAgICB1bnNp Z25lZCBpbnQgdGltZW91dCkKIHsKIAkvKiBSZWN1cnNlIG9uY2UgaW50byBhIGZlbmNlLWFycmF5 ICovCiAJaWYgKGRtYV9mZW5jZV9pc19hcnJheShmZW5jZSkpIHsKQEAgLTU5MywxNiArNTk1LDE3 IEBAIHN0YXRpYyB2b2lkIGZlbmNlX3NldF9wcmlvcml0eShzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5j ZSwKIAkJaW50IGk7CiAKIAkJZm9yIChpID0gMDsgaSA8IGFycmF5LT5udW1fZmVuY2VzOyBpKysp Ci0JCQlfX2ZlbmNlX3NldF9wcmlvcml0eShhcnJheS0+ZmVuY2VzW2ldLCBhdHRyKTsKKwkJCV9f ZmVuY2Vfc2V0X3ByaW9yaXR5KGFycmF5LT5mZW5jZXNbaV0sIGF0dHIsIHRpbWVvdXQpOwogCX0g ZWxzZSB7Ci0JCV9fZmVuY2Vfc2V0X3ByaW9yaXR5KGZlbmNlLCBhdHRyKTsKKwkJX19mZW5jZV9z ZXRfcHJpb3JpdHkoZmVuY2UsIGF0dHIsIHRpbWVvdXQpOwogCX0KIH0KIAogaW50CiBpOTE1X2dl bV9vYmplY3Rfd2FpdF9wcmlvcml0eShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAog CQkJICAgICAgdW5zaWduZWQgaW50IGZsYWdzLAotCQkJICAgICAgY29uc3Qgc3RydWN0IGk5MTVf c2NoZWRfYXR0ciAqYXR0cikKKwkJCSAgICAgIGNvbnN0IHN0cnVjdCBpOTE1X3NjaGVkX2F0dHIg KmF0dHIsCisJCQkgICAgICB1bnNpZ25lZCBpbnQgdGltZW91dCkKIHsKIAlzdHJ1Y3QgZG1hX2Zl bmNlICpleGNsOwogCkBAIC02MTcsNyArNjIwLDcgQEAgaTkxNV9nZW1fb2JqZWN0X3dhaXRfcHJp b3JpdHkoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAkJCXJldHVybiByZXQ7CiAK IAkJZm9yIChpID0gMDsgaSA8IGNvdW50OyBpKyspIHsKLQkJCWZlbmNlX3NldF9wcmlvcml0eShz aGFyZWRbaV0sIGF0dHIpOworCQkJZmVuY2Vfc2V0X3ByaW9yaXR5KHNoYXJlZFtpXSwgYXR0ciwg dGltZW91dCk7CiAJCQlkbWFfZmVuY2VfcHV0KHNoYXJlZFtpXSk7CiAJCX0KIApAQCAtNjI3LDcg KzYzMCw3IEBAIGk5MTVfZ2VtX29iamVjdF93YWl0X3ByaW9yaXR5KHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmosCiAJfQogCiAJaWYgKGV4Y2wpIHsKLQkJZmVuY2Vfc2V0X3ByaW9yaXR5 KGV4Y2wsIGF0dHIpOworCQlmZW5jZV9zZXRfcHJpb3JpdHkoZXhjbCwgYXR0ciwgdGltZW91dCk7 CiAJCWRtYV9mZW5jZV9wdXQoZXhjbCk7CiAJfQogCXJldHVybiAwOwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCmluZGV4IDEwODczNThmNjM2NC4uZDIzMGJlNGJkNTg3IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xMjc5Nyw3ICsxMjc5Nyw4IEBAIHN0YXRp YyB2b2lkIGZiX29ial9idW1wX3JlbmRlcl9wcmlvcml0eShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqb2JqKQogCQkucHJpb3JpdHkgPSBJOTE1X1BSSU9SSVRZX0RJU1BMQVksCiAJfTsKIAot CWk5MTVfZ2VtX29iamVjdF93YWl0X3ByaW9yaXR5KG9iaiwgMCwgJmF0dHIpOworCWk5MTVfZ2Vt X29iamVjdF93YWl0X3ByaW9yaXR5KG9iaiwgMCwKKwkJCQkgICAgICAmYXR0ciwgSTkxNV9QUkVF TVBUSU9OX1RJTUVPVVRfRElTUExBWSk7CiB9CiAKIC8qKgpAQCAtMTI4NzYsNiArMTI4NzcsMjAg QEAgaW50ZWxfcHJlcGFyZV9wbGFuZV9mYihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAogCXJl dCA9IGludGVsX3BsYW5lX3Bpbl9mYih0b19pbnRlbF9wbGFuZV9zdGF0ZShuZXdfc3RhdGUpKTsK IAorCS8qCisJICogUmVzY2hlZHVsZSBvdXIgZGVwZW5kZW5jaWVzLCBhbmQgZW5zdXJlIHdlIHJ1 biB3aXRoaW4gYSB0aW1lb3V0LgorCSAqCisJICogTm90ZSB0aGF0IGlmIHRoZSB0aW1lb3V0IGlz IGV4Y2VlZGVkLCB0aGVuIHdob2V2ZXIgd2FzIHJ1bm5pbmcgdGhhdAorCSAqIHByZXZlbnRlZCB1 cyBmcm9tIGFjcXVpcmluZyB0aGUgR1BVIGlzIGRlY2xhcmVkIHJvZ3VlIGFuZCByZXNldC4gQW4K KwkgKiB1bnJlc3BvbnNpdmUgcHJvY2VzcyB3aWxsIHRoZW4gYmUgYmFubmVkIGluIG9yZGVyIHRv IHByZXNlcnZlCisJICogaW50ZXJhY3Rpdml0eS4gU2luY2UgdGhpcyBjYW4gYmUgc2VlbiBhcyBh IGJpdCBoZWF2eS1oYW5kZWQsIHdlCisJICogc2VsZWN0IGEgdGltZW91dCBmb3Igd2hlbiB0aGUg ZHJvcHBlZCBmcmFtZXMgc3RhcnQgdG8gYmVjb21lIGEKKwkgKiBub3RpY2VhYmxlIG51aXNhbmNl IGZvciB0aGUgdXNlciAoMTAwIG1zLCBpLmUuIHByZWVtcHRpb24gd2FzCisJICogYmxvY2tlZCBm b3IgbW9yZSB0aGFuIGEgZmV3IGZyYW1lcykuIE5vdGUsIHRoaXMgaXMgb25seSBhIHRpbWVvdXQK KwkgKiBmb3IgYSBkZWxheSBpbiBwcmVlbXB0aW5nIHRoZSBjdXJyZW50IHJlcXVlc3QgaW4gb3Jk ZXIgdG8gcnVuIG91cgorCSAqIGRlcGVuZGVuY3kgY2hhaW4sIG91ciBkZXBlbmRlbmN5IGNoYWlu IG1heSBpdHNlbGYgdGFrZSBhIGxvbmcgdGltZQorCSAqIHRvIHJ1biB0byBjb21wbGV0aW9uIGJl Zm9yZSB3ZSBjYW4gcHJlc2VudCB0aGUgZnJhbWVidWZmZXIuCisJICovCiAJZmJfb2JqX2J1bXBf cmVuZGVyX3ByaW9yaXR5KG9iaik7CiAKIAltdXRleF91bmxvY2soJmRldl9wcml2LT5kcm0uc3Ry dWN0X211dGV4KTsKLS0gCjIuMTcuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==