From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH v3 29/33] drm/i915: Split idling from forcing context switch Date: Wed, 08 Jun 2016 12:02:28 +0300 Message-ID: <1465376548.5803.32.camel@linux.intel.com> References: <1464964636-3877-1-git-send-email-chris@chris-wilson.co.uk> <1464964636-3877-30-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 4D0956E42A for ; Wed, 8 Jun 2016 09:02:31 +0000 (UTC) In-Reply-To: <1464964636-3877-30-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 List-Id: intel-gfx@lists.freedesktop.org T24gcGUsIDIwMTYtMDYtMDMgYXQgMTU6MzcgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBX ZSBvbmx5IG5lZWQgdG8gZm9yY2UgYSBzd2l0Y2ggdG8gdGhlIGtlcm5lbCBjb250ZXh0IHBsYWNl aG9sZGVyIGR1cmluZwo+IGV2aWN0aW9uLiBBbGwgb3RoZXIgdXNlcyBvZiBpOTE1X2dwdV9pZGxl KCkganVzdCB3YW50IHRvIHdhaXQgdW50aWwKPiBleGlzdGluZyB3b3JrIG9uIHRoZSBHUFUgaXMg aWRsZS4gUmVuYW1lIGk5MTVfZ3B1X2lkbGUoKSB0bwo+IGk5MTVfZ2VtX3dhaXRfZm9yX2lkbGUo KSB0byBhdm9pZCBhbnkgaW1wbGljYXRpb25zIGFib3V0ICJwYXJraW5nIiB0aGUKPiBjb250ZXh0 IGZpcnN0Lgo+IAo+IHYyOiBUd2VhayBhbiBlcnJvciBtZXNzYWdlIGlmIHRoZSB3YWl0IGZhaWxz IGZvciB0aGUgaWxrIHZ0ZCB3L2EKPiAKPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNo cmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBDYzogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFo dGluZW5AbGludXguaW50ZWwuY29tPgo+IC0tLQo+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kZWJ1Z2ZzLmPCoMKgwqDCoMKgwqB8wqDCoDIgKy0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmjCoMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgMiArLQo+IMKgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW0uY8KgwqDCoMKgwqDCoMKgwqDCoMKgfCAyMCArKystLS0tLS0tLS0t Cj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jwqDCoMKgwqB8IDUxICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuY8KgwqDCoMKgwqDCoHzCoMKgNCArLS0KPiDCoGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMgfMKgwqAyICstCj4gwqA2IGZpbGVzIGNoYW5nZWQsIDU2 IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZGVidWdmcy5jCj4gaW5kZXggODkwZDYyOTdkZDdkLi5hOTU3NDk4MDIxY2UgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+IEBAIC00OTQyLDcgKzQ5NDIsNyBAQCBpOTE1X2Ry b3BfY2FjaGVzX3NldCh2b2lkICpkYXRhLCB1NjQgdmFsKQo+IMKgCQlyZXR1cm4gcmV0Owo+IMKg Cj4gwqAJaWYgKHZhbCAmIERST1BfQUNUSVZFKSB7Cj4gLQkJcmV0ID0gaTkxNV9ncHVfaWRsZShk ZXYpOwo+ICsJCXJldCA9IGk5MTVfZ2VtX3dhaXRfZm9yX2lkbGUoZGV2X3ByaXYpOwo+IMKgCQlp ZiAocmV0KQo+IMKgCQkJZ290byB1bmxvY2s7Cj4gwqAJfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAo+IGluZGV4IGJiMTE0OGI0OTY2Yy4uYmU1MzNkZTczODNiIDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCj4gQEAgLTMyNzgsNyArMzI3OCw3IEBAIGludCBpOTE1X2dlbV9pbml0X2VuZ2lu ZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gwqBpbnQgX19tdXN0X2NoZWNrIGk5MTVfZ2Vt X2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gwqB2b2lkIGk5MTVfZ2VtX2luaXRf c3dpenpsaW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+IMKgdm9pZCBpOTE1X2dlbV9jbGVh bnVwX2VuZ2luZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gLWludCBfX211c3RfY2hlY2sg aTkxNV9ncHVfaWRsZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAraW50IF9fbXVzdF9jaGVj ayBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dik7Cj4gwqBpbnQgX19tdXN0X2NoZWNrIGk5MTVfZ2VtX3N1c3BlbmQoc3RydWN0IGRybV9kZXZp Y2UgKmRldik7Cj4gwqB2b2lkIF9faTkxNV9hZGRfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcSwKPiDCoAkJCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRjaF9v YmosCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gaW5kZXggYjBkZGEwNDMzMzQ3Li5jN2E2N2E3 NDEyY2QgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBAQCAtMzQyMywyOSArMzQyMywx NyBAQCBpbnQgX19pOTE1X3ZtYV91bmJpbmRfbm9fd2FpdChzdHJ1Y3QgaTkxNV92bWEgKnZtYSkK PiDCoAlyZXR1cm4gX19pOTE1X3ZtYV91bmJpbmQodm1hLCBmYWxzZSk7Cj4gwqB9Cj4gwqAKPiAt aW50IGk5MTVfZ3B1X2lkbGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAraW50IGk5MTVfZ2Vt X3dhaXRfZm9yX2lkbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+IMKgewo+ IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsK PiDCoAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7Cj4gwqAJaW50IHJldDsKPiDCoAo+ ICsJbG9ja2RlcF9hc3NlcnRfaGVsZCgmZGV2X3ByaXYtPmRldi0+c3RydWN0X211dGV4KTsKPiAr Cj4gwqAJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZGV2X3ByaXYpIHsKPiDCoAkJaWYgKGVuZ2lu ZS0+bGFzdF9jb250ZXh0ID09IE5VTEwpCj4gwqAJCQljb250aW51ZTsKPiDCoAo+IC0JCWlmICgh aTkxNS5lbmFibGVfZXhlY2xpc3RzKSB7Cj4gLQkJCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxOwo+IC0KPiAtCQkJcmVxID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhlbmdpbmUsIE5V TEwpOwo+IC0JCQlpZiAoSVNfRVJSKHJlcSkpCj4gLQkJCQlyZXR1cm4gUFRSX0VSUihyZXEpOwo+ IC0KPiAtCQkJcmV0ID0gaTkxNV9zd2l0Y2hfY29udGV4dChyZXEpOwo+IC0JCQlpOTE1X2FkZF9y ZXF1ZXN0X25vX2ZsdXNoKHJlcSk7Cj4gLQkJCWlmIChyZXQpCj4gLQkJCQlyZXR1cm4gcmV0Owo+ IC0JCX0KPiAtCj4gwqAJCXJldCA9IGludGVsX2VuZ2luZV9pZGxlKGVuZ2luZSk7Cj4gwqAJCWlm IChyZXQpCj4gwqAJCQlyZXR1cm4gcmV0Owo+IEBAIC00NzA2LDcgKzQ2OTQsNyBAQCBpOTE1X2dl bV9zdXNwZW5kKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gwqAJaW50IHJldCA9IDA7Cj4gwqAK PiDCoAltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gLQlyZXQgPSBpOTE1X2dwdV9p ZGxlKGRldik7Cj4gKwlyZXQgPSBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKGRldl9wcml2KTsKPiDC oAlpZiAocmV0KQo+IMKgCQlnb3RvIGVycjsKPiDCoAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZXZpY3QuYwo+IGluZGV4IGIxNDRjM2Y1YzY1MC4uNTc0MWI1OGQxODZjIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jCj4gQEAgLTMzLDYgKzMzLDM3IEBACj4gwqAj aW5jbHVkZSAiaW50ZWxfZHJ2LmgiCj4gwqAjaW5jbHVkZSAiaTkxNV90cmFjZS5oIgo+IMKgCj4g K3N0YXRpYyBpbnQgc3dpdGNoX3RvX3Bpbm5lZF9jb250ZXh0KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdikKCkkgc3RpbGwgZG8gbm90IGxpa2UgdGhlIG5hbWUgc28gYXQgbGVhc3Qg YWRkIGEgY29tbWVudCB0aGF0IGl0J2xsIHVzZQprZXJuZWwgY29udGV4dCBoZXJlIGF0IHRvcC4K Cj4gK3sKPiArCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKPiArCj4gKwlpZiAoaTkx NS5lbmFibGVfZXhlY2xpc3RzKQo+ICsJCXJldHVybiAwOwo+ICsKPiArCWZvcl9lYWNoX2VuZ2lu ZShlbmdpbmUsIGRldl9wcml2KSB7Cj4gKwkJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXE7Cj4gKwkJaW50IHJldDsKPiArCj4gKwkJaWYgKGVuZ2luZS0+bGFzdF9jb250ZXh0ID09IE5V TEwpCj4gKwkJCWNvbnRpbnVlOwo+ICsKPiArCQlpZiAoZW5naW5lLT5sYXN0X2NvbnRleHQgPT0g ZGV2X3ByaXYtPmtlcm5lbF9jb250ZXh0KQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJcmVxID0g aTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhlbmdpbmUsIGRldl9wcml2LT5rZXJuZWxfY29udGV4dCk7 Cj4gKwkJaWYgKElTX0VSUihyZXEpKQo+ICsJCQlyZXR1cm4gUFRSX0VSUihyZXEpOwo+ICsKPiAr CQlyZXQgPSBpOTE1X3N3aXRjaF9jb250ZXh0KHJlcSk7Cj4gKwkJaTkxNV9hZGRfcmVxdWVzdF9u b19mbHVzaChyZXEpOwo+ICsJCWlmIChyZXQpCj4gKwkJCXJldHVybiByZXQ7Cj4gKwl9Cj4gKwo+ ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4gKwo+IMKgc3RhdGljIGJvb2wKPiDCoG1hcmtfZnJlZShz dHJ1Y3QgaTkxNV92bWEgKnZtYSwgc3RydWN0IGxpc3RfaGVhZCAqdW53aW5kKQo+IMKgewo+IEBA IC0xNTAsMTEgKzE4MSwxNyBAQCBub25lOgo+IMKgCj4gwqAJLyogT25seSBpZGxlIHRoZSBHUFUg YW5kIHJlcGVhdCB0aGUgc2VhcmNoIG9uY2UgKi8KPiDCoAlpZiAocGFzcysrID09IDApIHsKPiAt CQlyZXQgPSBpOTE1X2dwdV9pZGxlKGRldik7Cj4gKwkJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ICsKPiArCQlyZXQgPSBzd2l0Y2hfdG9fcGlubmVk X2NvbnRleHQoZGV2X3ByaXYpOwo+IMKgCQlpZiAocmV0KQo+IMKgCQkJcmV0dXJuIHJldDsKPiDC oAo+IC0JCWk5MTVfZ2VtX3JldGlyZV9yZXF1ZXN0cyh0b19pOTE1KGRldikpOwo+ICsJCXJldCA9 IGk5MTVfZ2VtX3dhaXRfZm9yX2lkbGUoZGV2X3ByaXYpOwo+ICsJCWlmIChyZXQpCj4gKwkJCXJl dHVybiByZXQ7Cj4gKwo+ICsJCWk5MTVfZ2VtX3JldGlyZV9yZXF1ZXN0cyhkZXZfcHJpdik7Cj4g wqAJCWdvdG8gc2VhcmNoX2FnYWluOwo+IMKgCX0KPiDCoAo+IEBAIC0yNjEsMTEgKzI5OCwxNyBA QCBpbnQgaTkxNV9nZW1fZXZpY3Rfdm0oc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sIGJv b2wgZG9faWRsZSkKPiDCoAl0cmFjZV9pOTE1X2dlbV9ldmljdF92bSh2bSk7Cj4gwqAKPiDCoAlp ZiAoZG9faWRsZSkgewo+IC0JCXJldCA9IGk5MTVfZ3B1X2lkbGUodm0tPmRldik7Cj4gKwkJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNSh2bS0+ZGV2KTsKPiArCj4g KwkJcmV0ID0gc3dpdGNoX3RvX3Bpbm5lZF9jb250ZXh0KGRldl9wcml2KTsKPiArCQlpZiAocmV0 KQo+ICsJCQlyZXR1cm4gcmV0Owo+ICsKPiArCQlyZXQgPSBpOTE1X2dlbV93YWl0X2Zvcl9pZGxl KGRldl9wcml2KTsKPiDCoAkJaWYgKHJldCkKPiDCoAkJCXJldHVybiByZXQ7Cj4gwqAKPiAtCQlp OTE1X2dlbV9yZXRpcmVfcmVxdWVzdHModG9faTkxNSh2bS0+ZGV2KSk7Cj4gKwkJaTkxNV9nZW1f cmV0aXJlX3JlcXVlc3RzKGRldl9wcml2KTsKClRoaXMgYW5kIHByZXZpb3VzIGh1bmssIG15IGV5 ZXMgc2VlIGEgbmVlZCBmb3IgYSBuZXcgZnVuY3Rpb24gKHdpdGggYW4KYXBwcm9wcmlhdGUgbmFt ZSwgaG9wZWZ1bGx5KS4KCldpdGggYWJvdmUgYWRkcmVzc2VkLAoKUmV2aWV3ZWQtYnk6IEpvb25h cyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KCj4gwqAKPiDCoAkJ V0FSTl9PTighbGlzdF9lbXB0eSgmdm0tPmFjdGl2ZV9saXN0KSk7Cj4gwqAJfQo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCj4gaW5kZXggNDY2ODQ3NzlkNGQ2Li41ODYwZmI3M2MwZTMg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwo+IEBAIC0yMjYxLDggKzIyNjEs OCBAQCBzdGF0aWMgYm9vbCBkb19pZGxpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQo+IMKgCj4gwqAJaWYgKHVubGlrZWx5KGdndHQtPmRvX2lkbGVfbWFwcykpIHsKPiDCoAkJ ZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUgPSBmYWxzZTsKPiAtCQlpZiAoaTkxNV9ncHVfaWRs ZShkZXZfcHJpdi0+ZGV2KSkgewo+IC0JCQlEUk1fRVJST1IoIkNvdWxkbid0IGlkbGUgR1BVXG4i KTsKPiArCQlpZiAoaTkxNV9nZW1fd2FpdF9mb3JfaWRsZShkZXZfcHJpdikpIHsKPiArCQkJRFJN X0VSUk9SKCJGYWlsZWQgdG8gd2FpdCBmb3IgaWRsZTsgVlQnZCBtYXkgaGFuZy5cbiIpOwo+IMKg CQkJLyogV2FpdCBhIGJpdCwgaW4gaG9wZXMgaXQgYXZvaWRzIHRoZSBoYW5nICovCj4gwqAJCQl1 ZGVsYXkoMTApOwo+IMKgCQl9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3Nocmlua2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtl ci5jCj4gaW5kZXggNTM4YzMwNDk5ODQ4Li44ODZhODc5NzU2NmQgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMKPiBAQCAtNDA4LDcgKzQwOCw3IEBAIGk5MTVf Z2VtX3Nocmlua2VyX3ZtYXAoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwgdW5zaWduZWQgbG9u ZyBldmVudCwgdm9pZCAqcHRyCj4gwqAJCXJldHVybiBOT1RJRllfRE9ORTsKPiDCoAo+IMKgCS8q IEZvcmNlIGV2ZXJ5dGhpbmcgb250byB0aGUgaW5hY3RpdmUgbGlzdHMgKi8KPiAtCXJldCA9IGk5 MTVfZ3B1X2lkbGUoZGV2X3ByaXYtPmRldik7Cj4gKwlyZXQgPSBpOTE1X2dlbV93YWl0X2Zvcl9p ZGxlKGRldl9wcml2KTsKPiDCoAlpZiAocmV0KQo+IMKgCQlnb3RvIG91dDsKPiDCoAotLSAKSm9v bmFzIExhaHRpbmVuCk9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCkludGVsIENvcnBvcmF0 aW9uCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=