From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [CI 08/10] drm/i915/scheduler: Execute requests in order of priorities Date: Wed, 16 Nov 2016 13:22:42 +0200 Message-ID: <87vavn1xfh.fsf@intel.com> References: <20161114204105.29171-1-chris@chris-wilson.co.uk> <20161114204105.29171-8-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 ESMTPS id 62F656E661 for ; Wed, 16 Nov 2016 11:22:44 +0000 (UTC) In-Reply-To: <20161114204105.29171-8-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 ClRoaXMgcGF0Y2gsIG9yCgpjb21taXQgMjAzMTFiZDM1MDYwNDM1YmFkYmE4YTBkNDZiMDZkNWQx ODRhYmFmNwpBdXRob3I6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpE YXRlOiAgIE1vbiBOb3YgMTQgMjA6NDE6MDMgMjAxNiArMDAwMAoKICAgIGRybS9pOTE1L3NjaGVk dWxlcjogRXhlY3V0ZSByZXF1ZXN0cyBpbiBvcmRlciBvZiBwcmlvcml0aWVzCgp0cmlja3Mgc3Bh cnNlIGludG8gd2FybmluZ3MuIEl0IG1ha2VzIG1lIHVuaGFwcHkgdG8gc2VlIHRoZSBzcGFyc2UK d2FybmluZ3MgYWNjdW11bGF0ZSBiZWNhdXNlIHRoYXQgd2lsbCBldmVudHVhbGx5IHJlbmRlciBz cGFyc2UgdXNlbGVzcy4KClRoZSB3YXJuaW5ncyBpbi1saW5lIG9uIHRoZSB0aGluZ3MgYmVpbmcg d2FybmVkIGFib3V0LgoKQlIsCkphbmkuCgoKT24gTW9uLCAxNCBOb3YgMjAxNiwgQ2hyaXMgV2ls c29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyb3RlOgo+IEBAIC02MzQsMTMgKzY2Nywx MTIgQEAgc3RhdGljIHZvaWQgZXhlY2xpc3RzX3N1Ym1pdF9yZXF1ZXN0KHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKPiAgCS8qIFdpbGwgYmUgY2FsbGVkIGZyb20gaXJxLWNv bnRleHQgd2hlbiB1c2luZyBmb3JlaWduIGZlbmNlcy4gKi8KPiAgCXNwaW5fbG9ja19pcnFzYXZl KCZlbmdpbmUtPnRpbWVsaW5lLT5sb2NrLCBmbGFncyk7Cj4gIAo+IC0JbGlzdF9hZGRfdGFpbCgm cmVxdWVzdC0+ZXhlY2xpc3RfbGluaywgJmVuZ2luZS0+ZXhlY2xpc3RfcXVldWUpOwo+ICsJaWYg KGluc2VydF9yZXF1ZXN0KCZyZXF1ZXN0LT5wcmlvdHJlZSwgJmVuZ2luZS0+ZXhlY2xpc3RfcXVl dWUpKQo+ICsJCWVuZ2luZS0+ZXhlY2xpc3RfZmlyc3QgPSAmcmVxdWVzdC0+cHJpb3RyZWUubm9k ZTsKPiAgCWlmIChleGVjbGlzdHNfZWxzcF9pZGxlKGVuZ2luZSkpCj4gIAkJdGFza2xldF9oaV9z Y2hlZHVsZSgmZW5naW5lLT5pcnFfdGFza2xldCk7Cj4gIAo+ICAJc3Bpbl91bmxvY2tfaXJxcmVz dG9yZSgmZW5naW5lLT50aW1lbGluZS0+bG9jaywgZmxhZ3MpOwo+ICB9Cj4gIAo+ICtzdGF0aWMg c3RydWN0IGludGVsX2VuZ2luZV9jcyAqCj4gK3B0X2xvY2tfZW5naW5lKHN0cnVjdCBpOTE1X3By aW90cmVlICpwdCwgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqbG9ja2VkKQo+ICt7Cj4gKwlzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7Cj4gKwo+ICsJZW5naW5lID0gY29udGFpbmVyX29m KHB0LAo+ICsJCQkgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QsCj4gKwkJCSAgICAg IHByaW90cmVlKS0+ZW5naW5lOwo+ICsJaWYgKGVuZ2luZSAhPSBsb2NrZWQpIHsKPiArCQlpZiAo bG9ja2VkKQo+ICsJCQlzcGluX3VubG9ja19pcnEoJmxvY2tlZC0+dGltZWxpbmUtPmxvY2spOwoK ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmM6Njg4OjQwOiB3YXJuaW5nOiBjb250ZXh0 IGltYmFsYW5jZSBpbiAncHRfbG9ja19lbmdpbmUnIC0gdW5leHBlY3RlZCB1bmxvY2sKCj4gKwkJ c3Bpbl9sb2NrX2lycSgmZW5naW5lLT50aW1lbGluZS0+bG9jayk7Cj4gKwl9Cj4gKwo+ICsJcmV0 dXJuIGVuZ2luZTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgZXhlY2xpc3RzX3NjaGVkdWxlKHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCwgaW50IHByaW8pCj4gK3sKPiArCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9IE5VTEw7Cj4gKwlzdHJ1Y3QgaTkxNV9kZXBl bmRlbmN5ICpkZXAsICpwOwo+ICsJc3RydWN0IGk5MTVfZGVwZW5kZW5jeSBzdGFjazsKPiArCUxJ U1RfSEVBRChkZnMpOwo+ICsKPiArCWlmIChwcmlvIDw9IFJFQURfT05DRShyZXF1ZXN0LT5wcmlv dHJlZS5wcmlvcml0eSkpCj4gKwkJcmV0dXJuOwo+ICsKPiArCS8qIE5lZWQgQktMIGluIG9yZGVy IHRvIHVzZSB0aGUgdGVtcG9yYXJ5IGxpbmsgaW5zaWRlIGk5MTVfZGVwZW5kZW5jeSAqLwo+ICsJ bG9ja2RlcF9hc3NlcnRfaGVsZCgmcmVxdWVzdC0+aTkxNS0+ZHJtLnN0cnVjdF9tdXRleCk7Cj4g Kwo+ICsJc3RhY2suc2lnbmFsZXIgPSAmcmVxdWVzdC0+cHJpb3RyZWU7Cj4gKwlsaXN0X2FkZCgm c3RhY2suZGZzX2xpbmssICZkZnMpOwo+ICsKPiArCS8qIFJlY3Vyc2l2ZWx5IGJ1bXAgYWxsIGRl cGVuZGVudCBwcmlvcml0aWVzIHRvIG1hdGNoIHRoZSBuZXcgcmVxdWVzdC4KPiArCSAqCj4gKwkg KiBBIG5haXZlIGFwcHJvYWNoIHdvdWxkIGJlIHRvIHVzZSByZWN1cnNpb246Cj4gKwkgKiBzdGF0 aWMgdm9pZCB1cGRhdGVfcHJpb3JpdGllcyhzdHJ1Y3QgaTkxNV9wcmlvdHJlZSAqcHQsIHByaW8p IHsKPiArCSAqIAlsaXN0X2Zvcl9lYWNoX2VudHJ5KGRlcCwgJnB0LT5zaWduYWxlcnNfbGlzdCwg c2lnbmFsX2xpbmspCj4gKwkgKiAJCXVwZGF0ZV9wcmlvcml0aWVzKGRlcC0+c2lnbmFsLCBwcmlv KQo+ICsJICogCWluc2VydF9yZXF1ZXN0KHB0KTsKPiArCSAqIH0KPiArCSAqIGJ1dCB0aGF0IG1h eSBoYXZlIHVubGltaXRlZCByZWN1cnNpb24gZGVwdGggYW5kIHNvIHJ1bnMgYSB2ZXJ5Cj4gKwkg KiByZWFsIHJpc2sgb2Ygb3ZlcnVubmluZyB0aGUga2VybmVsIHN0YWNrLiBJbnN0ZWFkLCB3ZSBi dWlsZAo+ICsJICogYSBmbGF0IGxpc3Qgb2YgYWxsIGRlcGVuZGVuY2llcyBzdGFydGluZyB3aXRo IHRoZSBjdXJyZW50IHJlcXVlc3QuCj4gKwkgKiBBcyB3ZSB3YWxrIHRoZSBsaXN0IG9mIGRlcGVu ZGVuY2llcywgd2UgYWRkIGFsbCBvZiBpdHMgZGVwZW5kZW5jaWVzCj4gKwkgKiB0byB0aGUgZW5k IG9mIHRoZSBsaXN0ICh0aGlzIG1heSBpbmNsdWRlIGFuIGFscmVhZHkgdmlzaXRlZAo+ICsJICog cmVxdWVzdCkgYW5kIGNvbnRpbnVlIHRvIHdhbGsgb253YXJkcyBvbnRvIHRoZSBuZXcgZGVwZW5k ZW5jaWVzLiBUaGUKPiArCSAqIGVuZCByZXN1bHQgaXMgYSB0b3BvbG9naWNhbCBsaXN0IG9mIHJl cXVlc3RzIGluIHJldmVyc2Ugb3JkZXIsIHRoZQo+ICsJICogbGFzdCBlbGVtZW50IGluIHRoZSBs aXN0IGlzIHRoZSByZXF1ZXN0IHdlIG11c3QgZXhlY3V0ZSBmaXJzdC4KPiArCSAqLwo+ICsJbGlz dF9mb3JfZWFjaF9lbnRyeV9zYWZlKGRlcCwgcCwgJmRmcywgZGZzX2xpbmspIHsKPiArCQlzdHJ1 Y3QgaTkxNV9wcmlvdHJlZSAqcHQgPSBkZXAtPnNpZ25hbGVyOwo+ICsKPiArCQlsaXN0X2Zvcl9l YWNoX2VudHJ5KHAsICZwdC0+c2lnbmFsZXJzX2xpc3QsIHNpZ25hbF9saW5rKQo+ICsJCQlpZiAo cHJpbyA+IFJFQURfT05DRShwLT5zaWduYWxlci0+cHJpb3JpdHkpKQo+ICsJCQkJbGlzdF9tb3Zl X3RhaWwoJnAtPmRmc19saW5rLCAmZGZzKTsKPiArCj4gKwkJcCA9IGxpc3RfbmV4dF9lbnRyeShk ZXAsIGRmc19saW5rKTsKPiArCQlpZiAoIVJCX0VNUFRZX05PREUoJnB0LT5ub2RlKSkKPiArCQkJ Y29udGludWU7Cj4gKwo+ICsJCWVuZ2luZSA9IHB0X2xvY2tfZW5naW5lKHB0LCBlbmdpbmUpOwo+ ICsKPiArCQkvKiBJZiBpdCBpcyBub3QgYWxyZWFkeSBpbiB0aGUgcmJ0cmVlLCB3ZSBjYW4gdXBk YXRlIHRoZQo+ICsJCSAqIHByaW9yaXR5IGlucGxhY2UgYW5kIHNraXAgb3ZlciBpdCAoYW5kIGl0 cyBkZXBlbmRlbmNpZXMpCj4gKwkJICogaWYgaXQgaXMgcmVmZXJlbmNlZCAqYWdhaW4qIGFzIHdl IGRlc2NlbmQgdGhlIGRmcy4KPiArCQkgKi8KPiArCQlpZiAocHJpbyA+IHB0LT5wcmlvcml0eSAm JiBSQl9FTVBUWV9OT0RFKCZwdC0+bm9kZSkpIHsKPiArCQkJcHQtPnByaW9yaXR5ID0gcHJpbzsK PiArCQkJbGlzdF9kZWxfaW5pdCgmZGVwLT5kZnNfbGluayk7Cj4gKwkJfQo+ICsJfQo+ICsKPiAr CS8qIEZpZm8gYW5kIGRlcHRoLWZpcnN0IHJlcGxhY2VtZW50IGVuc3VyZSBvdXIgZGVwcyBleGVj dXRlIGJlZm9yZSB1cyAqLwo+ICsJbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlX3JldmVyc2UoZGVw LCBwLCAmZGZzLCBkZnNfbGluaykgewo+ICsJCXN0cnVjdCBpOTE1X3ByaW90cmVlICpwdCA9IGRl cC0+c2lnbmFsZXI7Cj4gKwo+ICsJCUlOSVRfTElTVF9IRUFEKCZkZXAtPmRmc19saW5rKTsKPiAr Cj4gKwkJZW5naW5lID0gcHRfbG9ja19lbmdpbmUocHQsIGVuZ2luZSk7Cj4gKwo+ICsJCWlmIChw cmlvIDw9IHB0LT5wcmlvcml0eSkKPiArCQkJY29udGludWU7Cj4gKwo+ICsJCUdFTV9CVUdfT04o UkJfRU1QVFlfTk9ERSgmcHQtPm5vZGUpKTsKPiArCj4gKwkJcHQtPnByaW9yaXR5ID0gcHJpbzsK PiArCQlyYl9lcmFzZSgmcHQtPm5vZGUsICZlbmdpbmUtPmV4ZWNsaXN0X3F1ZXVlKTsKPiArCQlp ZiAoaW5zZXJ0X3JlcXVlc3QocHQsICZlbmdpbmUtPmV4ZWNsaXN0X3F1ZXVlKSkKPiArCQkJZW5n aW5lLT5leGVjbGlzdF9maXJzdCA9ICZwdC0+bm9kZTsKPiArCX0KPiArCj4gKwlpZiAoZW5naW5l KQo+ICsJCXNwaW5fdW5sb2NrX2lycSgmZW5naW5lLT50aW1lbGluZS0+bG9jayk7Cgpkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYzo3NzE6MzI6IHdhcm5pbmc6IGNvbnRleHQgaW1iYWxh bmNlIGluICdleGVjbGlzdHNfc2NoZWR1bGUnIC0gdW5leHBlY3RlZCB1bmxvY2sKCgoKLS0gCkph bmkgTmlrdWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK