From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH] drm/i915: Block enabling FBC until flips have been completed Date: Thu, 12 Apr 2018 18:07:18 +0200 Message-ID: <20180412160718.4618-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 265666E165 for ; Thu, 12 Apr 2018 16:07:22 +0000 (UTC) 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 VGhlcmUgaXMgYSBzbWFsbCByYWNlIHdpbmRvdyBpbiB3aGljaCBGQkMgY2FuIGJlIGVuYWJsZWQg YWZ0ZXIKcHJlX3BsYW5lX3VwZGF0ZSBpcyBjYWxsZWQsIGJ1dCBiZWZvcmUgdGhlIHBhZ2UgZmxp cCBoYXMgYmVlbgpxdWV1ZWQgb3IgY29tcGxldGVkLgoKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBM YW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KQnVnemlsbGE6IGh0 dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzE2NwotLS0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZmJjLmMgfCAzNSArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQog MiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAyNCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaAppbmRleCBhMGI4ZGIzZGIxNDEuLjJlMmYyNGMyZGI5ZSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCkBAIC00OTIsNiArNDkyLDcgQEAgc3RydWN0IGludGVsX2ZiYyB7 CiAKIAlib29sIGVuYWJsZWQ7CiAJYm9vbCBhY3RpdmU7CisJYm9vbCBmbGlwX3BlbmRpbmc7CiAK IAlib29sIHVuZGVycnVuX2RldGVjdGVkOwogCXN0cnVjdCB3b3JrX3N0cnVjdCB1bmRlcnJ1bl93 b3JrOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYwppbmRleCBiNDMxYjY3MzNjYzEuLjQ3NzBkZDdk YWQ1YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJjLmMKQEAgLTkyNCwxMyArOTI0LDYgQEAgc3Rh dGljIHZvaWQgaW50ZWxfZmJjX2dldF9yZWdfcGFyYW1zKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRj LAogCQkJCQkJMzIgKiBmYmMtPnRocmVzaG9sZCkgKiA4OwogfQogCi1zdGF0aWMgYm9vbCBpbnRl bF9mYmNfcmVnX3BhcmFtc19lcXVhbChzdHJ1Y3QgaW50ZWxfZmJjX3JlZ19wYXJhbXMgKnBhcmFt czEsCi0JCQkJICAgICAgIHN0cnVjdCBpbnRlbF9mYmNfcmVnX3BhcmFtcyAqcGFyYW1zMikKLXsK LQkvKiBXZSBjYW4gdXNlIHRoaXMgc2luY2UgaW50ZWxfZmJjX2dldF9yZWdfcGFyYW1zKCkgZG9l cyBhIG1lbXNldC4gKi8KLQlyZXR1cm4gbWVtY21wKHBhcmFtczEsIHBhcmFtczIsIHNpemVvZigq cGFyYW1zMSkpID09IDA7Ci19Ci0KIHZvaWQgaW50ZWxfZmJjX3ByZV91cGRhdGUoc3RydWN0IGlu dGVsX2NydGMgKmNydGMsCiAJCQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl LAogCQkJICBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlKQpAQCAtOTUyLDYg Kzk0NSw3IEBAIHZvaWQgaW50ZWxfZmJjX3ByZV91cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNy dGMsCiAJaWYgKCFmYmMtPmVuYWJsZWQgfHwgZmJjLT5jcnRjICE9IGNydGMpCiAJCWdvdG8gdW5s b2NrOwogCisJZmJjLT5mbGlwX3BlbmRpbmcgPSB0cnVlOwogCWludGVsX2ZiY191cGRhdGVfc3Rh dGVfY2FjaGUoY3J0YywgY3J0Y19zdGF0ZSwgcGxhbmVfc3RhdGUpOwogCiBkZWFjdGl2YXRlOgpA QCAtOTg4LDEzICs5ODIsMTUgQEAgc3RhdGljIHZvaWQgX19pbnRlbF9mYmNfcG9zdF91cGRhdGUo c3RydWN0IGludGVsX2NydGMgKmNydGMpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7CiAJc3RydWN0IGludGVsX2ZiYyAqZmJj ID0gJmRldl9wcml2LT5mYmM7Ci0Jc3RydWN0IGludGVsX2ZiY19yZWdfcGFyYW1zIG9sZF9wYXJh bXM7CiAKIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJmZiYy0+bG9jaykpOwogCiAJaWYgKCFm YmMtPmVuYWJsZWQgfHwgZmJjLT5jcnRjICE9IGNydGMpCiAJCXJldHVybjsKIAorCWZiYy0+Zmxp cF9wZW5kaW5nID0gZmFsc2U7CisJV0FSTl9PTihmYmMtPmFjdGl2ZSk7CisKIAlpZiAoIWk5MTVf bW9kcGFyYW1zLmVuYWJsZV9mYmMpIHsKIAkJaW50ZWxfZmJjX2RlYWN0aXZhdGUoZGV2X3ByaXYs ICJkaXNhYmxlZCBhdCBydW50aW1lIHBlciBtb2R1bGUgcGFyYW0iKTsKIAkJX19pbnRlbF9mYmNf ZGlzYWJsZShkZXZfcHJpdik7CkBAIC0xMDAyLDI1ICs5OTgsMTYgQEAgc3RhdGljIHZvaWQgX19p bnRlbF9mYmNfcG9zdF91cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCiAJCXJldHVybjsK IAl9CiAKLQlpZiAoIWludGVsX2ZiY19jYW5fYWN0aXZhdGUoY3J0YykpIHsKLQkJV0FSTl9PTihm YmMtPmFjdGl2ZSk7CisJaWYgKCFpbnRlbF9mYmNfY2FuX2FjdGl2YXRlKGNydGMpKQogCQlyZXR1 cm47Ci0JfQogCi0Jb2xkX3BhcmFtcyA9IGZiYy0+cGFyYW1zOwogCWludGVsX2ZiY19nZXRfcmVn X3BhcmFtcyhjcnRjLCAmZmJjLT5wYXJhbXMpOwogCi0JLyogSWYgdGhlIHNjYW5vdXQgaGFzIG5v dCBjaGFuZ2VkLCBkb24ndCBtb2RpZnkgdGhlIEZCQyBzZXR0aW5ncy4KLQkgKiBOb3RlIHRoYXQg d2UgbWFrZSB0aGUgZnVuZGFtZW50YWwgYXNzdW1wdGlvbiB0aGF0IHRoZSBmYi0+b2JqCi0JICog Y2Fubm90IGJlIHVucGlubmVkIChhbmQgaGF2ZSBpdHMgR1RUIG9mZnNldCBhbmQgZmVuY2UgcmV2 b2tlZCkKLQkgKiB3aXRob3V0IGZpcnN0IGJlaW5nIGRlY291cGxlZCBmcm9tIHRoZSBzY2Fub3V0 IGFuZCBGQkMgZGlzYWJsZWQuCi0JICovCi0JaWYgKGZiYy0+YWN0aXZlICYmCi0JICAgIGludGVs X2ZiY19yZWdfcGFyYW1zX2VxdWFsKCZvbGRfcGFyYW1zLCAmZmJjLT5wYXJhbXMpKQotCQlyZXR1 cm47Ci0KLQlpbnRlbF9mYmNfZGVhY3RpdmF0ZShkZXZfcHJpdiwgIkZCQyBlbmFibGVkIChhY3Rp dmUgb3Igc2NoZWR1bGVkKSIpOwotCWludGVsX2ZiY19zY2hlZHVsZV9hY3RpdmF0aW9uKGNydGMp OworCWlmICghZmJjLT5idXN5X2JpdHMpIHsKKwkJaW50ZWxfZmJjX2RlYWN0aXZhdGUoZGV2X3By aXYsICJGQkMgZW5hYmxlZCAoYWN0aXZlIG9yIHNjaGVkdWxlZCkiKTsKKwkJaW50ZWxfZmJjX3Nj aGVkdWxlX2FjdGl2YXRpb24oY3J0Yyk7CisJfSBlbHNlCisJCWludGVsX2ZiY19kZWFjdGl2YXRl KGRldl9wcml2LCAiZnJvbnRidWZmZXIgd3JpdGUiKTsKIH0KIAogdm9pZCBpbnRlbF9mYmNfcG9z dF91cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCkBAIC0xMDg1LDcgKzEwNzIsNyBAQCB2 b2lkIGludGVsX2ZiY19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJ ICAgIChmcm9udGJ1ZmZlcl9iaXRzICYgaW50ZWxfZmJjX2dldF9mcm9udGJ1ZmZlcl9iaXQoZmJj KSkpIHsKIAkJaWYgKGZiYy0+YWN0aXZlKQogCQkJaW50ZWxfZmJjX3JlY29tcHJlc3MoZGV2X3By aXYpOwotCQllbHNlCisJCWVsc2UgaWYgKCFmYmMtPmZsaXBfcGVuZGluZykKIAkJCV9faW50ZWxf ZmJjX3Bvc3RfdXBkYXRlKGZiYy0+Y3J0Yyk7CiAJfQogCi0tIAoyLjE2LjMKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=