From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2] drm/atomic: Fix bookkeeping with TEST_ONLY, v2. Date: Thu, 27 Aug 2015 14:43:35 +0200 Message-ID: <55DF05F7.1010308@linux.intel.com> References: <55C0A330.6050404@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Stone Cc: Intel Graphics Development , "dri-devel@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T3AgMjctMDgtMTUgb20gMTQ6MTkgc2NocmVlZiBEYW5pZWwgU3RvbmU6Cj4gSGksCj4KPiBPbiA0 IEF1Z3VzdCAyMDE1IGF0IDEyOjM0LCBNYWFydGVuIExhbmtob3JzdAo+IDxtYWFydGVuLmxhbmto b3JzdEBsaW51eC5pbnRlbC5jb20+IHdyb3RlOgo+PiBDb21taXQgZWM5ZjkzMmVkNDE2MjJkMTIw ZGU1MmE1YjUyNWU0ZDc3YjllZjE3ZQo+PiAiZHJtL2F0b21pYzogQ2xlYW51cCBvbiBlcnJvciBw cm9wZXJseSBpbiB0aGUgYXRvbWljIGlvY3RsLiIKPj4gY2xlYW5lZCB1cCBzb21lIGVycm9yIHBh dGhzLCBidXQgZGlkbid0IGZpeCB0aGUgVEVTVF9PTkxZIHBhdGguCj4+IEluIHRoZSBjaGVjayBv bmx5IGNhc2UgcGxhbmUtPmZiIHNob3VsZG4ndCBiZSB1cGRhdGVkLCBhbmQKPj4gdGhlIHZibGFu ayBldmVudHMgc2hvdWxkIGJlIGNsZWFyZWQgYXMgb24gZmFpbHVyZS4KPiBCaWtlc2hlZGRpbmcg YSBiaXQgLi4uCj4KPiBBbiBlYXJseSB0ZXN0IHByZWNsdWRlcyBURVNUX09OTFkgfCBQQUdFX0ZM SVBfRVZFTlQsIHNvIHlvdSBkb24ndCBuZWVkCj4gdG8gbWVudGlvbiB0aGlzIGluIHRoZSBjb21t aXQgbWVzc2FnZTsgaW4gdGhpcyBjYXNlLCB0aGUgbWFpbiBjaGFuZ2UKPiBpcyBhYm91dCBwbGFu ZS0+eyxvbGRffWZiLgpFdmVuIHRlc3Rpbmcgd2l0aCBQQUdFX0ZMSVBfRVZFTlQgd291bGQgYmUg dXNlZnVsIGJlY2F1c2UKZXZlbnQgJiYgIWNydGNfc3RhdGUtPmFjdGl2ZSBzaG91bGQgbm90IGJl IGFsbG93ZWQuIEluIHRoYXQgY2FzZSB0ZXN0CmNvdWxkIHN1Y2NlZWQgYnV0IGNvbW1pdCBjb3Vs ZCBmYWlsLgoKVGhvdWdoIEkgZ3Vlc3MgeW91J3JlIHJpZ2h0IGFuZCBpdCdzIGN1cnJlbnRseSBu b3QgYWxsb3dlZC4KPj4gQEAgLTE1MzIsNyArMTUzMyw3IEBAIHJldHJ5Ogo+PiAgICAgICAgICAg ICAgICAgcmV0ID0gZHJtX2F0b21pY19jaGVja19vbmx5KHN0YXRlKTsKPj4gICAgICAgICAgICAg ICAgIC8qIF9jaGVja19vbmx5KCkgZG9lcyBub3QgZnJlZSBzdGF0ZSwgdW5saWtlIF9jb21taXQo KSAqLwo+PiAgICAgICAgICAgICAgICAgaWYgKCFyZXQpCj4+IC0gICAgICAgICAgICAgICAgICAg ICAgIGRybV9hdG9taWNfc3RhdGVfZnJlZShzdGF0ZSk7Cj4+ICsgICAgICAgICAgICAgICAgICAg ICAgIGdvdG8gZnJlZTsKPj4gICAgICAgICB9IGVsc2UgaWYgKGFyZy0+ZmxhZ3MgJiBEUk1fTU9E RV9BVE9NSUNfTk9OQkxPQ0spIHsKPj4gICAgICAgICAgICAgICAgIHJldCA9IGRybV9hdG9taWNf YXN5bmNfY29tbWl0KHN0YXRlKTsKPj4gICAgICAgICB9IGVsc2Ugewo+PiBAQCAtMTU2Niw2ICsx NTY3LDcgQEAgb3V0Ogo+PiAgICAgICAgIH0KPj4KPj4gICAgICAgICBpZiAocmV0KSB7Cj4+ICtm cmVlOgo+IFRoaXMgaXMgYSBiaXQgbmFzdHkuIENhbiB3ZSBwbGVhc2UgbW92ZSB0aGUgbGFiZWwg YWJvdmUgdGhlCj4gY29uZGl0aW9uYWwgYW5kIGNoYW5nZSB0aGUgY29uZGl0aW9uIHRvIChyZXQg fHwgZmxhZ3MgJiBURVNUX09OTFkpPwo+IERvaW5nIHRoYXQsIHlvdSBjb3VsZCBhbHNvIG1vdmUg dGhlIGxhYmVsIGFib3ZlIHRoZSAocmV0ID09IC1FREVBRExLKQo+IGNoZWNrLCB3aGljaCB3b3Vs ZCBjb3ZlciAtPmF0b21pY19jaGVjayBuZWVkaW5nIHRvIGdyYWIgb3RoZXIgc3RhdGVzCj4gKGds b2JhbCByZXNvdXJjZXM/KSBhbmQgZmFpbGluZy4KSWYgb3VyIGJvb2trZWVwaW5nIGlzIGNvcnJl Y3QgdGhlbiBpdCB3b24ndCBiZSBoYXJtZnVsIHRvIGZpeHVwIG9sZF9mYi4KQ2xlYW5pbmcgdXAg bW9yZSBvbGRfZmIgZm9yIG1vcmUgcGxhbmVzIHRoYW4gaW5pdGlhbGx5IGhhZCBmYiB1cGRhdGVz IGNhbiBhbHdheXMKaGFwcGVuIGFueXdheSwgYmVjYXVzZSBhIG1vZGVzZXQgd2lsbCBhZGQgYWxs IGFmZmVjdGVkIHBsYW5lcy4KCkhvdyBhYm91dCB0aGUgYmVsb3cgcGF0Y2g/IEFwcGx5IHdpdGgg Z2l0IGFtIC0tc2Npc3NvcnMKCi0tLS0tLS0tPjgtLS0tLS0KQ29tbWl0IGVjOWY5MzJlZDQxNjIy ZDEyMGRlNTJhNWI1MjVlNGQ3N2I5ZWYxN2UKImRybS9hdG9taWM6IENsZWFudXAgb24gZXJyb3Ig cHJvcGVybHkgaW4gdGhlIGF0b21pYyBpb2N0bC4iCmNsZWFuZWQgdXAgc29tZSBlcnJvciBwYXRo cywgYnV0IGFsbG93ZWQgLUVERUFETEsgdG8KbGVhayB2YmxhbmsgZXZlbnRzLgoKQWRkaXRpb25h bGx5IGNoZWNrX29ubHkgd2FzIHVwZGF0aW5nIHBsYW5lLT5mYiwgd2hpY2ggc2hvdWxkCm5vdCBi ZSBkb25lIHdoZW4gY2hlY2tpbmcgYSBuZXcgY29uZmlndXJhdGlvbiBvbmx5LgoKU2lnbmVkLW9m Zi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNv bT4KLS0tCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jIGIvZHJpdmVy cy9ncHUvZHJtL2RybV9hdG9taWMuYwppbmRleCBjMjQ0OGY0MjQ4MGYuLjc4ZmZiNDk2NTU0OCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pYy5jCkBAIC0xNTQyLDcgKzE1NDIsOCBAQCByZXRyeToKIAkJCWNvcGll ZF9wcm9wcysrOwogCQl9CiAKLQkJaWYgKG9iai0+dHlwZSA9PSBEUk1fTU9ERV9PQkpFQ1RfUExB TkUgJiYgY291bnRfcHJvcHMpIHsKKwkJaWYgKG9iai0+dHlwZSA9PSBEUk1fTU9ERV9PQkpFQ1Rf UExBTkUgJiYgY291bnRfcHJvcHMgJiYKKwkJICAgICEoYXJnLT5mbGFncyAmIERSTV9NT0RFX0FU T01JQ19URVNUX09OTFkpKSB7CiAJCQlwbGFuZSA9IG9ial90b19wbGFuZShvYmopOwogCQkJcGxh bmVfbWFzayB8PSAoMSA8PCBkcm1fcGxhbmVfaW5kZXgocGxhbmUpKTsKIAkJCXBsYW5lLT5vbGRf ZmIgPSBwbGFuZS0+ZmI7CkBAIC0xNTY0LDEwICsxNTY1LDExIEBAIHJldHJ5OgogCX0KIAogCWlm IChhcmctPmZsYWdzICYgRFJNX01PREVfQVRPTUlDX1RFU1RfT05MWSkgeworCQkvKgorCQkgKiBV bmxpa2UgY29tbWl0LCBjaGVja19vbmx5IGRvZXMgbm90IGNsZWFuIHVwIHN0YXRlLgorCQkgKiBC ZWxvdyB3ZSBjYWxsIGRybV9hdG9taWNfc3RhdGVfZnJlZSBmb3IgaXQuCisJCSAqLwogCQlyZXQg PSBkcm1fYXRvbWljX2NoZWNrX29ubHkoc3RhdGUpOwotCQkvKiBfY2hlY2tfb25seSgpIGRvZXMg bm90IGZyZWUgc3RhdGUsIHVubGlrZSBfY29tbWl0KCkgKi8KLQkJaWYgKCFyZXQpCi0JCQlkcm1f YXRvbWljX3N0YXRlX2ZyZWUoc3RhdGUpOwogCX0gZWxzZSBpZiAoYXJnLT5mbGFncyAmIERSTV9N T0RFX0FUT01JQ19OT05CTE9DSykgewogCQlyZXQgPSBkcm1fYXRvbWljX2FzeW5jX2NvbW1pdChz dGF0ZSk7CiAJfSBlbHNlIHsKQEAgLTE1OTQsMjUgKzE1OTYsMjQgQEAgb3V0OgogCQlwbGFuZS0+ b2xkX2ZiID0gTlVMTDsKIAl9CiAKKwlpZiAocmV0ICYmIGFyZy0+ZmxhZ3MgJiBEUk1fTU9ERV9Q QUdFX0ZMSVBfRVZFTlQpIHsKKwkJZm9yX2VhY2hfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywg Y3J0Y19zdGF0ZSwgaSkgeworCQkJaWYgKCFjcnRjX3N0YXRlLT5ldmVudCkKKwkJCQljb250aW51 ZTsKKworCQkJZGVzdHJveV92YmxhbmtfZXZlbnQoZGV2LCBmaWxlX3ByaXYsCisJCQkJCSAgICAg Y3J0Y19zdGF0ZS0+ZXZlbnQpOworCQl9CisJfQorCiAJaWYgKHJldCA9PSAtRURFQURMSykgewog CQlkcm1fYXRvbWljX3N0YXRlX2NsZWFyKHN0YXRlKTsKIAkJZHJtX21vZGVzZXRfYmFja29mZigm Y3R4KTsKIAkJZ290byByZXRyeTsKIAl9CiAKLQlpZiAocmV0KSB7Ci0JCWlmIChhcmctPmZsYWdz ICYgRFJNX01PREVfUEFHRV9GTElQX0VWRU5UKSB7Ci0JCQlmb3JfZWFjaF9jcnRjX2luX3N0YXRl KHN0YXRlLCBjcnRjLCBjcnRjX3N0YXRlLCBpKSB7Ci0JCQkJaWYgKCFjcnRjX3N0YXRlLT5ldmVu dCkKLQkJCQkJY29udGludWU7Ci0KLQkJCQlkZXN0cm95X3ZibGFua19ldmVudChkZXYsIGZpbGVf cHJpdiwKLQkJCQkJCSAgICAgY3J0Y19zdGF0ZS0+ZXZlbnQpOwotCQkJfQotCQl9Ci0KKwlpZiAo cmV0IHx8IGFyZy0+ZmxhZ3MgJiBEUk1fTU9ERV9BVE9NSUNfVEVTVF9PTkxZKQogCQlkcm1fYXRv bWljX3N0YXRlX2ZyZWUoc3RhdGUpOwotCX0KIAogCWRybV9tb2Rlc2V0X2Ryb3BfbG9ja3MoJmN0 eCk7CiAJZHJtX21vZGVzZXRfYWNxdWlyZV9maW5pKCZjdHgpOwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK