From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH 38/44] drm/i915: Split idling from forcing context switch Date: Thu, 16 Jun 2016 11:51:03 +0300 Message-ID: <87mvmlwm88.fsf@intel.com> References: <1465993109-19523-1-git-send-email-chris@chris-wilson.co.uk> <1465993109-19523-39-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 5F3C26E254 for ; Thu, 16 Jun 2016 08:51:12 +0000 (UTC) In-Reply-To: <1465993109-19523-39-git-send-email-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: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gV2Ugb25s eSBuZWVkIHRvIGZvcmNlIGEgc3dpdGNoIHRvIHRoZSBrZXJuZWwgY29udGV4dCBwbGFjZWhvbGRl ciBkdXJpbmcKPiBldmljdGlvbi4gQWxsIG90aGVyIHVzZXMgb2YgaTkxNV9ncHVfaWRsZSgpIGp1 c3Qgd2FudCB0byB3YWl0IHVudGlsCj4gZXhpc3Rpbmcgd29yayBvbiB0aGUgR1BVIGlzIGlkbGUu IFJlbmFtZSBpOTE1X2dwdV9pZGxlKCkgdG8KPiBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKCkgdG8g YXZvaWQgYW55IGltcGxpY2F0aW9ucyBhYm91dCAicGFya2luZyIgdGhlCj4gY29udGV4dCBmaXJz dC4KPgo+IHYyOiBUd2VhayBhbiBlcnJvciBtZXNzYWdlIGlmIHRoZSB3YWl0IGZhaWxzIGZvciB0 aGUgaWxrIHZ0ZCB3L2EKPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hy aXMtd2lsc29uLmNvLnVrPgo+IENjOiBKb29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBs aW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdm cy5jICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAg ICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgICB8 IDIwICsrKy0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXZpY3Qu YyAgICB8IDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jICAgICAgfCAgNCArLS0KPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYyB8ICAyICstCj4gIDYgZmlsZXMgY2hhbmdlZCwgNTYg aW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rl YnVnZnMuYwo+IGluZGV4IDdjZjliMTY3NjM3Ni4uY2RmNzYwNTQ3ZTYyIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBAQCAtNDk0Niw3ICs0OTQ2LDcgQEAgaTkxNV9kcm9w X2NhY2hlc19zZXQodm9pZCAqZGF0YSwgdTY0IHZhbCkKPiAgCQlyZXR1cm4gcmV0Owo+ICAKPiAg CWlmICh2YWwgJiBEUk9QX0FDVElWRSkgewo+IC0JCXJldCA9IGk5MTVfZ3B1X2lkbGUoZGV2KTsK PiArCQlyZXQgPSBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKGRldl9wcml2KTsKPiAgCQlpZiAocmV0 KQo+ICAJCQlnb3RvIHVubG9jazsKPiAgCX0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRl eCA2ZTI3ZjZiNmYwNWYuLjNjZjZiMTE3YjA0YSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAo+IEBAIC0zMzA4LDcgKzMzMDgsNyBAQCBpbnQgaTkxNV9nZW1faW5pdF9lbmdpbmVzKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpOwo+ICBpbnQgX19tdXN0X2NoZWNrIGk5MTVfZ2VtX2luaXRfaHco c3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIHZvaWQgaTkxNV9nZW1faW5pdF9zd2l6emxpbmco c3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIHZvaWQgaTkxNV9nZW1fY2xlYW51cF9lbmdpbmVz KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+IC1pbnQgX19tdXN0X2NoZWNrIGk5MTVfZ3B1X2lk bGUoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gK2ludCBfX211c3RfY2hlY2sgaTkxNV9nZW1f d2FpdF9mb3JfaWRsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ICBpbnQg X19tdXN0X2NoZWNrIGk5MTVfZ2VtX3N1c3BlbmQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4g IHZvaWQgX19pOTE1X2FkZF9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVx LAo+ICAJCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0Y2hfb2JqLAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYwo+IGluZGV4IDI5MzUzYjUzMmIxYy4uZjYyODg2NzBmZjIyIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gQEAgLTM2NjIsMjkgKzM2NjIsMTcgQEAgaW50IF9faTkx NV92bWFfdW5iaW5kX25vX3dhaXQoc3RydWN0IGk5MTVfdm1hICp2bWEpCj4gIAlyZXR1cm4gX19p OTE1X3ZtYV91bmJpbmQodm1hLCBmYWxzZSk7Cj4gIH0KPiAgCj4gLWludCBpOTE1X2dwdV9pZGxl KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gK2ludCBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+IC0Jc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAgCXN0cnVjdCBpbnRlbF9l bmdpbmVfY3MgKmVuZ2luZTsKPiAgCWludCByZXQ7Cj4gIAo+ICsJbG9ja2RlcF9hc3NlcnRfaGVs ZCgmZGV2X3ByaXYtPmRldi0+c3RydWN0X211dGV4KTsKPiArCj4gIAlmb3JfZWFjaF9lbmdpbmUo ZW5naW5lLCBkZXZfcHJpdikgewo+ICAJCWlmIChlbmdpbmUtPmxhc3RfY29udGV4dCA9PSBOVUxM KQo+ICAJCQljb250aW51ZTsKPiAgCj4gLQkJaWYgKCFpOTE1LmVuYWJsZV9leGVjbGlzdHMpIHsK PiAtCQkJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXE7Cj4gLQo+IC0JCQlyZXEgPSBp OTE1X2dlbV9yZXF1ZXN0X2FsbG9jKGVuZ2luZSwgTlVMTCk7Cj4gLQkJCWlmIChJU19FUlIocmVx KSkKPiAtCQkJCXJldHVybiBQVFJfRVJSKHJlcSk7Cj4gLQo+IC0JCQlyZXQgPSBpOTE1X3N3aXRj aF9jb250ZXh0KHJlcSk7Cj4gLQkJCWk5MTVfYWRkX3JlcXVlc3Rfbm9fZmx1c2gocmVxKTsKPiAt CQkJaWYgKHJldCkKPiAtCQkJCXJldHVybiByZXQ7Cj4gLQkJfQo+IC0KPiAgCQlyZXQgPSBpbnRl bF9lbmdpbmVfaWRsZShlbmdpbmUpOwo+ICAJCWlmIChyZXQpCj4gIAkJCXJldHVybiByZXQ7Cj4g QEAgLTQ5NTQsNyArNDk0Miw3IEBAIGk5MTVfZ2VtX3N1c3BlbmQoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKPiAgCWludCByZXQgPSAwOwo+ICAKPiAgCW11dGV4X2xvY2soJmRldi0+c3RydWN0X211 dGV4KTsKPiAtCXJldCA9IGk5MTVfZ3B1X2lkbGUoZGV2KTsKPiArCXJldCA9IGk5MTVfZ2VtX3dh aXRfZm9yX2lkbGUoZGV2X3ByaXYpOwo+ICAJaWYgKHJldCkKPiAgCQlnb3RvIGVycjsKPiAgCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jCj4gaW5kZXggYjE0NGMzZjVjNjUwLi41 NzQxYjU4ZDE4NmMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZXZpY3QuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMKPiBA QCAtMzMsNiArMzMsMzcgQEAKPiAgI2luY2x1ZGUgImludGVsX2Rydi5oIgo+ICAjaW5jbHVkZSAi aTkxNV90cmFjZS5oIgo+ICAKPiArc3RhdGljIGludCBzd2l0Y2hfdG9fcGlubmVkX2NvbnRleHQo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICt7Cgpzd2l0Y2hfdG9fa2VybmVs X2NvbnRleHQgd291bGQgYmUgbW9yZSBhY2N1cmF0ZSBvZiB3aGF0IHRoaXMgZnVuY3Rpb24KYWN0 dWFsbHkgZG9lcy4gQnV0IEkgdGFrZSBpdCB0aGF0IGZyb20gZXZpY3Rpb24gcG9pbnQgb2Ygdmll dywKaXQgb25seSBtYXR0ZXJzIHRoYXQgd2UgcGFyayBpbnRvIHNvbWV0aGluZyB0aGF0IGlzIHBp bm5lZCBhbmQgc3RheSBzby4KClJldmlld2VkLWJ5OiBNaWthIEt1b3BwYWxhIDxtaWthLmt1b3Bw YWxhQGludGVsLmNvbT4KCj4gKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7Cj4gKwo+ ICsJaWYgKGk5MTUuZW5hYmxlX2V4ZWNsaXN0cykKPiArCQlyZXR1cm4gMDsKPiArCj4gKwlmb3Jf ZWFjaF9lbmdpbmUoZW5naW5lLCBkZXZfcHJpdikgewo+ICsJCXN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCAqcmVxOwo+ICsJCWludCByZXQ7Cj4gKwo+ICsJCWlmIChlbmdpbmUtPmxhc3RfY29u dGV4dCA9PSBOVUxMKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJaWYgKGVuZ2luZS0+bGFzdF9j b250ZXh0ID09IGRldl9wcml2LT5rZXJuZWxfY29udGV4dCkKPiArCQkJY29udGludWU7Cj4gKwo+ ICsJCXJlcSA9IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2MoZW5naW5lLCBkZXZfcHJpdi0+a2VybmVs X2NvbnRleHQpOwo+ICsJCWlmIChJU19FUlIocmVxKSkKPiArCQkJcmV0dXJuIFBUUl9FUlIocmVx KTsKPiArCj4gKwkJcmV0ID0gaTkxNV9zd2l0Y2hfY29udGV4dChyZXEpOwo+ICsJCWk5MTVfYWRk X3JlcXVlc3Rfbm9fZmx1c2gocmVxKTsKPiArCQlpZiAocmV0KQo+ICsJCQlyZXR1cm4gcmV0Owo+ ICsJfQo+ICsKPiArCXJldHVybiAwOwo+ICt9Cj4gKwo+ICsKPiAgc3RhdGljIGJvb2wKPiAgbWFy a19mcmVlKHN0cnVjdCBpOTE1X3ZtYSAqdm1hLCBzdHJ1Y3QgbGlzdF9oZWFkICp1bndpbmQpCj4g IHsKPiBAQCAtMTUwLDExICsxODEsMTcgQEAgbm9uZToKPiAgCj4gIAkvKiBPbmx5IGlkbGUgdGhl IEdQVSBhbmQgcmVwZWF0IHRoZSBzZWFyY2ggb25jZSAqLwo+ICAJaWYgKHBhc3MrKyA9PSAwKSB7 Cj4gLQkJcmV0ID0gaTkxNV9ncHVfaWRsZShkZXYpOwo+ICsJCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiArCj4gKwkJcmV0ID0gc3dpdGNoX3RvX3Bp bm5lZF9jb250ZXh0KGRldl9wcml2KTsKPiAgCQlpZiAocmV0KQo+ICAJCQlyZXR1cm4gcmV0Owo+ ICAKPiAtCQlpOTE1X2dlbV9yZXRpcmVfcmVxdWVzdHModG9faTkxNShkZXYpKTsKPiArCQlyZXQg PSBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKGRldl9wcml2KTsKPiArCQlpZiAocmV0KQo+ICsJCQly ZXR1cm4gcmV0Owo+ICsKPiArCQlpOTE1X2dlbV9yZXRpcmVfcmVxdWVzdHMoZGV2X3ByaXYpOwo+ ICAJCWdvdG8gc2VhcmNoX2FnYWluOwo+ICAJfQo+ICAKPiBAQCAtMjYxLDExICsyOTgsMTcgQEAg aW50IGk5MTVfZ2VtX2V2aWN0X3ZtKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLCBib29s IGRvX2lkbGUpCj4gIAl0cmFjZV9pOTE1X2dlbV9ldmljdF92bSh2bSk7Cj4gIAo+ICAJaWYgKGRv X2lkbGUpIHsKPiAtCQlyZXQgPSBpOTE1X2dwdV9pZGxlKHZtLT5kZXYpOwo+ICsJCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUodm0tPmRldik7Cj4gKwo+ICsJCXJl dCA9IHN3aXRjaF90b19waW5uZWRfY29udGV4dChkZXZfcHJpdik7Cj4gKwkJaWYgKHJldCkKPiAr CQkJcmV0dXJuIHJldDsKPiArCj4gKwkJcmV0ID0gaTkxNV9nZW1fd2FpdF9mb3JfaWRsZShkZXZf cHJpdik7Cj4gIAkJaWYgKHJldCkKPiAgCQkJcmV0dXJuIHJldDsKPiAgCj4gLQkJaTkxNV9nZW1f cmV0aXJlX3JlcXVlc3RzKHRvX2k5MTUodm0tPmRldikpOwo+ICsJCWk5MTVfZ2VtX3JldGlyZV9y ZXF1ZXN0cyhkZXZfcHJpdik7Cj4gIAo+ICAJCVdBUk5fT04oIWxpc3RfZW1wdHkoJnZtLT5hY3Rp dmVfbGlzdCkpOwo+ICAJfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCj4gaW5kZXgg N2ExMzlhNmQ0NDg3Li4xNjI2YTI1OThjY2MgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuYwo+IEBAIC0yMjYxLDggKzIyNjEsOCBAQCBzdGF0aWMgYm9vbCBkb19pZGxpbmcoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAKPiAgCWlmICh1bmxpa2VseShnZ3R0 LT5kb19pZGxlX21hcHMpKSB7Cj4gIAkJZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUgPSBmYWxz ZTsKPiAtCQlpZiAoaTkxNV9ncHVfaWRsZShkZXZfcHJpdi0+ZGV2KSkgewo+IC0JCQlEUk1fRVJS T1IoIkNvdWxkbid0IGlkbGUgR1BVXG4iKTsKPiArCQlpZiAoaTkxNV9nZW1fd2FpdF9mb3JfaWRs ZShkZXZfcHJpdikpIHsKPiArCQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gd2FpdCBmb3IgaWRsZTsg VlQnZCBtYXkgaGFuZy5cbiIpOwo+ICAJCQkvKiBXYWl0IGEgYml0LCBpbiBob3BlcyBpdCBhdm9p ZHMgdGhlIGhhbmcgKi8KPiAgCQkJdWRlbGF5KDEwKTsKPiAgCQl9Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9zaHJpbmtlci5jCj4gaW5kZXggNTM4YzMwNDk5ODQ4Li44ODZhODc5NzU2 NmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMKPiBAQCAt NDA4LDcgKzQwOCw3IEBAIGk5MTVfZ2VtX3Nocmlua2VyX3ZtYXAoc3RydWN0IG5vdGlmaWVyX2Js b2NrICpuYiwgdW5zaWduZWQgbG9uZyBldmVudCwgdm9pZCAqcHRyCj4gIAkJcmV0dXJuIE5PVElG WV9ET05FOwo+ICAKPiAgCS8qIEZvcmNlIGV2ZXJ5dGhpbmcgb250byB0aGUgaW5hY3RpdmUgbGlz dHMgKi8KPiAtCXJldCA9IGk5MTVfZ3B1X2lkbGUoZGV2X3ByaXYtPmRldik7Cj4gKwlyZXQgPSBp OTE1X2dlbV93YWl0X2Zvcl9pZGxlKGRldl9wcml2KTsKPiAgCWlmIChyZXQpCj4gIAkJZ290byBv dXQ7Cj4gIAo+IC0tIAo+IDIuOC4xCj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QKPiBJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==