From mboxrd@z Thu Jan 1 00:00:00 1970 From: Deepak Singh Rawat Subject: Re: [PATCH 7/9] drm/vmwgfx: Use an RBtree instead of linked list for MOB resources Date: Mon, 22 Apr 2019 19:15:49 +0000 Message-ID: <0906e1ae26b145fa8334d54a30b4969857ffa6af.camel@vmware.com> References: <20190412160338.64994-1-thellstrom@vmware.com> <20190412160338.64994-8-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-eopbgr750082.outbound.protection.outlook.com [40.107.75.82]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5766589175 for ; Mon, 22 Apr 2019 19:15:58 +0000 (UTC) In-Reply-To: <20190412160338.64994-8-thellstrom@vmware.com> Content-Language: en-US Content-ID: <93634950429ABC49B5DEFE6C92D5D622@namprd05.prod.outlook.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thomas Hellstrom Cc: Linux-graphics-maintainer , "linux-kernel@vger.kernel.org" , "dri-devel@lists.freedesktop.org" List-Id: dri-devel@lists.freedesktop.org UmV2aWV3ZWQtYnk6IERlZXBhayBSYXdhdCA8ZHJhd2F0QHZtd2FyZS5jb20+DQoNCk9uIEZyaSwg MjAxOS0wNC0xMiBhdCAwOTowNCAtMDcwMCwgVGhvbWFzIEhlbGxzdHJvbSB3cm90ZToNCj4gV2l0 aCBlbXVsYXRlZCBjb2hlcmVudCBtZW1vcnkgd2UgbmVlZCB0byBiZSBhYmxlIHRvIHF1aWNrbHkg bG9vayB1cA0KPiBhIHJlc291cmNlIGZyb20gdGhlIE1PQiBvZmZzZXQuIEluc3RlYWQgb2YgdHJh dmVyc2luZyBhIGxpbmtlZCBsaXN0DQo+IHdpdGgNCj4gTyhuKSB3b3JzdCBjYXNlLCB1c2UgYW4g UkJ0cmVlIHdpdGggTyhsb2cgbikgd29yc3QgY2FzZSBjb21wbGV4aXR5Lg0KPiANCj4gU2lnbmVk LW9mZi1ieTogVGhvbWFzIEhlbGxzdHJvbSA8dGhlbGxzdHJvbUB2bXdhcmUuY29tPg0KPiAtLS0N Cj4gIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2JvLmMgICAgICAgfCAgNSArKy0tDQo+ ICBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaCAgICAgIHwgMTAgKysrLS0tLQ0K PiAgZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfcmVzb3VyY2UuYyB8IDMzICsrKysrKysr KysrKysrKysrLS0tLS0NCj4gLS0NCj4gIDMgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygr KSwgMTYgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfYm8uYw0KPiBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2JvLmMN Cj4gaW5kZXggOTBjYTg2NjY0MGZlLi5lOGJjN2E3YWMwMzEgMTAwNjQ0DQo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2JvLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfYm8uYw0KPiBAQCAtNDY0LDYgKzQ2NCw3IEBAIHZvaWQgdm13X2JvX2JvX2Zy ZWUoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibykNCj4gIAlzdHJ1Y3Qgdm13X2J1ZmZlcl9v YmplY3QgKnZtd19ibyA9IHZtd19idWZmZXJfb2JqZWN0KGJvKTsNCj4gIA0KPiAgCVdBUk5fT04o dm13X2JvLT5kaXJ0eSk7DQo+ICsJV0FSTl9PTighUkJfRU1QVFlfUk9PVCgmdm13X2JvLT5yZXNf dHJlZSkpOw0KPiAgCXZtd19ib191bm1hcCh2bXdfYm8pOw0KPiAgCWtmcmVlKHZtd19ibyk7DQo+ ICB9DQo+IEBAIC00ODAsNiArNDgxLDcgQEAgc3RhdGljIHZvaWQgdm13X3VzZXJfYm9fZGVzdHJv eShzdHJ1Y3QNCj4gdHRtX2J1ZmZlcl9vYmplY3QgKmJvKQ0KPiAgCXN0cnVjdCB2bXdfYnVmZmVy X29iamVjdCAqdmJvID0gJnZtd191c2VyX2JvLT52Ym87DQo+ICANCj4gIAlXQVJOX09OKHZiby0+ ZGlydHkpOw0KPiArCVdBUk5fT04oIVJCX0VNUFRZX1JPT1QoJnZiby0+cmVzX3RyZWUpKTsNCj4g IAl2bXdfYm9fdW5tYXAodmJvKTsNCj4gIAl0dG1fcHJpbWVfb2JqZWN0X2tmcmVlKHZtd191c2Vy X2JvLCBwcmltZSk7DQo+ICB9DQo+IEBAIC01MTUsOCArNTE3LDcgQEAgaW50IHZtd19ib19pbml0 KHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYsDQo+ICAJbWVtc2V0KHZtd19ibywgMCwgc2l6 ZW9mKCp2bXdfYm8pKTsNCj4gIAlCVUlMRF9CVUdfT04oVFRNX01BWF9CT19QUklPUklUWSA8PSAz KTsNCj4gIAl2bXdfYm8tPmJhc2UucHJpb3JpdHkgPSAzOw0KPiAtDQo+IC0JSU5JVF9MSVNUX0hF QUQoJnZtd19iby0+cmVzX2xpc3QpOw0KPiArCXZtd19iby0+cmVzX3RyZWUgPSBSQl9ST09UOw0K PiAgDQo+ICAJcmV0ID0gdHRtX2JvX2luaXQoYmRldiwgJnZtd19iby0+YmFzZSwgc2l6ZSwNCj4g IAkJCSAgdHRtX2JvX3R5cGVfZGV2aWNlLCBwbGFjZW1lbnQsDQo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaA0KPiBiL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2Rydi5oDQo+IGluZGV4IGYwNWZjZTUyZmJiNC4uODFlYmNkNjY4MDM4IDEwMDY0 NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaA0KPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaA0KPiBAQCAtOTAsNyArOTAsNyBAQCBz dHJ1Y3Qgdm13X2Zwcml2IHsNCj4gIC8qKg0KPiAgICogc3RydWN0IHZtd19idWZmZXJfb2JqZWN0 IC0gVFRNIGJ1ZmZlciBvYmplY3Qgd2l0aCB2bXdnZngNCj4gYWRkaXRpb25zDQo+ICAgKiBAYmFz ZTogVGhlIFRUTSBidWZmZXIgb2JqZWN0DQo+IC0gKiBAcmVzX2xpc3Q6IExpc3Qgb2YgcmVzb3Vy Y2VzIHVzaW5nIHRoaXMgYnVmZmVyIG9iamVjdCBhcyBhDQo+IGJhY2tpbmcgTU9CDQo+ICsgKiBA cmVzX3RyZWU6IFJCIHRyZWUgb2YgcmVzb3VyY2VzIHVzaW5nIHRoaXMgYnVmZmVyIG9iamVjdCBh cyBhDQo+IGJhY2tpbmcgTU9CDQo+ICAgKiBAcGluX2NvdW50OiBwaW4gZGVwdGgNCj4gICAqIEBk eF9xdWVyeV9jdHg6IERYIGNvbnRleHQgaWYgdGhpcyBidWZmZXIgb2JqZWN0IGlzIHVzZWQgYXMg YSBEWA0KPiBxdWVyeSBNT0INCj4gICAqIEBtYXA6IEttYXAgb2JqZWN0IGZvciBzZW1pLXBlcnNp c3RlbnQgbWFwcGluZ3MNCj4gQEAgLTk5LDcgKzk5LDcgQEAgc3RydWN0IHZtd19mcHJpdiB7DQo+ ICAgKi8NCj4gIHN0cnVjdCB2bXdfYnVmZmVyX29iamVjdCB7DQo+ICAJc3RydWN0IHR0bV9idWZm ZXJfb2JqZWN0IGJhc2U7DQo+IC0Jc3RydWN0IGxpc3RfaGVhZCByZXNfbGlzdDsNCj4gKwlzdHJ1 Y3QgcmJfcm9vdCByZXNfdHJlZTsNCj4gIAlzMzIgcGluX2NvdW50Ow0KPiAgCS8qIE5vdCByZWYt Y291bnRlZC4gIFByb3RlY3RlZCBieSBiaW5kaW5nX211dGV4ICovDQo+ICAJc3RydWN0IHZtd19y ZXNvdXJjZSAqZHhfcXVlcnlfY3R4Ow0KPiBAQCAtMTQ3LDggKzE0Nyw4IEBAIHN0cnVjdCB2bXdf cmVzX2Z1bmM7DQo+ICAgKiBwaW4tY291bnQgZ3JlYXRlciB0aGFuIHplcm8uIEl0IGlzIG5vdCBv biB0aGUgcmVzb3VyY2UgTFJVIGxpc3RzDQo+IGFuZCBpdHMNCj4gICAqIGJhY2t1cCBidWZmZXIg aXMgcGlubmVkLiBIZW5jZSBpdCBjYW4ndCBiZSBldmljdGVkLg0KPiAgICogQGZ1bmM6IE1ldGhv ZCB2dGFibGUgZm9yIHRoaXMgcmVzb3VyY2UuIEltbXV0YWJsZS4NCj4gKyAqIEBtb2Jfbm9kZTsg Tm9kZSBmb3IgdGhlIE1PQiBiYWNrdXAgcmJ0cmVlLiBQcm90ZWN0ZWQgYnkgQGJhY2t1cA0KPiBy ZXNlcnZlZC4NCj4gICAqIEBscnVfaGVhZDogTGlzdCBoZWFkIGZvciB0aGUgTFJVIGxpc3QuIFBy b3RlY3RlZCBieQ0KPiBAZGV2X3ByaXY6OnJlc291cmNlX2xvY2suDQo+IC0gKiBAbW9iX2hlYWQ6 IExpc3QgaGVhZCBmb3IgdGhlIE1PQiBiYWNrdXAgbGlzdC4gUHJvdGVjdGVkIGJ5DQo+IEBiYWNr dXAgcmVzZXJ2ZWQuDQo+ICAgKiBAYmluZGluZ19oZWFkOiBMaXN0IGhlYWQgZm9yIHRoZSBjb250 ZXh0IGJpbmRpbmcgbGlzdC4gUHJvdGVjdGVkDQo+IGJ5DQo+ICAgKiB0aGUgQGRldl9wcml2Ojpi aW5kaW5nX211dGV4DQo+ICAgKiBAcmVzX2ZyZWU6IFRoZSByZXNvdXJjZSBkZXN0cnVjdG9yLg0K PiBAQCAtMTY5LDggKzE2OSw4IEBAIHN0cnVjdCB2bXdfcmVzb3VyY2Ugew0KPiAgCXVuc2lnbmVk IGxvbmcgYmFja3VwX29mZnNldDsNCj4gIAl1bnNpZ25lZCBsb25nIHBpbl9jb3VudDsNCj4gIAlj b25zdCBzdHJ1Y3Qgdm13X3Jlc19mdW5jICpmdW5jOw0KPiArCXN0cnVjdCByYl9ub2RlIG1vYl9u b2RlOw0KPiAgCXN0cnVjdCBsaXN0X2hlYWQgbHJ1X2hlYWQ7DQo+IC0Jc3RydWN0IGxpc3RfaGVh ZCBtb2JfaGVhZDsNCj4gIAlzdHJ1Y3QgbGlzdF9oZWFkIGJpbmRpbmdfaGVhZDsNCj4gIAlzdHJ1 Y3Qgdm13X3Jlc291cmNlX2RpcnR5ICpkaXJ0eTsNCj4gIAl2b2lkICgqcmVzX2ZyZWUpIChzdHJ1 Y3Qgdm13X3Jlc291cmNlICpyZXMpOw0KPiBAQCAtNzQzLDcgKzc0Myw3IEBAIHZvaWQgdm13X3Jl c291cmNlX2RpcnR5X3VwZGF0ZShzdHJ1Y3QNCj4gdm13X3Jlc291cmNlICpyZXMsIHBnb2ZmX3Qg c3RhcnQsDQo+ICAgKi8NCj4gIHN0YXRpYyBpbmxpbmUgYm9vbCB2bXdfcmVzb3VyY2VfbW9iX2F0 dGFjaGVkKGNvbnN0IHN0cnVjdA0KPiB2bXdfcmVzb3VyY2UgKnJlcykNCj4gIHsNCj4gLQlyZXR1 cm4gIWxpc3RfZW1wdHkoJnJlcy0+bW9iX2hlYWQpOw0KPiArCXJldHVybiAhUkJfRU1QVFlfTk9E RSgmcmVzLT5tb2Jfbm9kZSk7DQo+ICB9DQo+ICANCj4gIC8qKg0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfcmVzb3VyY2UuYw0KPiBiL2RyaXZlcnMvZ3B1L2Ry bS92bXdnZngvdm13Z2Z4X3Jlc291cmNlLmMNCj4gaW5kZXggZDM1ZjRiZDMyY2Q5Li5mZjlmZTU2 NTA0NjggMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3Jlc291 cmNlLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfcmVzb3VyY2UuYw0K PiBAQCAtNDEsMTEgKzQxLDI0IEBADQo+ICB2b2lkIHZtd19yZXNvdXJjZV9tb2JfYXR0YWNoKHN0 cnVjdCB2bXdfcmVzb3VyY2UgKnJlcykNCj4gIHsNCj4gIAlzdHJ1Y3Qgdm13X2J1ZmZlcl9vYmpl Y3QgKmJhY2t1cCA9IHJlcy0+YmFja3VwOw0KPiArCXN0cnVjdCByYl9ub2RlICoqbmV3ID0gJmJh Y2t1cC0+cmVzX3RyZWUucmJfbm9kZSwgKnBhcmVudCA9DQo+IE5VTEw7DQo+ICANCj4gIAlsb2Nr ZGVwX2Fzc2VydF9oZWxkKCZiYWNrdXAtPmJhc2UucmVzdi0+bG9jay5iYXNlKTsNCj4gIAlyZXMt PnVzZWRfcHJpbyA9IChyZXMtPnJlc19kaXJ0eSkgPyByZXMtPmZ1bmMtPmRpcnR5X3ByaW8gOg0K PiAgCQlyZXMtPmZ1bmMtPnByaW87DQo+IC0JbGlzdF9hZGRfdGFpbCgmcmVzLT5tb2JfaGVhZCwg JmJhY2t1cC0+cmVzX2xpc3QpOw0KPiArDQo+ICsJd2hpbGUgKCpuZXcpIHsNCj4gKwkJc3RydWN0 IHZtd19yZXNvdXJjZSAqdGhpcyA9DQo+ICsJCQljb250YWluZXJfb2YoKm5ldywgc3RydWN0IHZt d19yZXNvdXJjZSwNCj4gbW9iX25vZGUpOw0KPiArDQo+ICsJCXBhcmVudCA9ICpuZXc7DQo+ICsJ CW5ldyA9IChyZXMtPmJhY2t1cF9vZmZzZXQgPCB0aGlzLT5iYWNrdXBfb2Zmc2V0KSA/DQo+ICsJ CQkmKCgqbmV3KS0+cmJfbGVmdCkgOiAmKCgqbmV3KS0+cmJfcmlnaHQpOw0KPiArCX0NCj4gKw0K PiArCXJiX2xpbmtfbm9kZSgmcmVzLT5tb2Jfbm9kZSwgcGFyZW50LCBuZXcpOw0KPiArCXJiX2lu c2VydF9jb2xvcigmcmVzLT5tb2Jfbm9kZSwgJmJhY2t1cC0+cmVzX3RyZWUpOw0KPiArDQo+ICAJ dm13X2JvX3ByaW9fYWRkKGJhY2t1cCwgcmVzLT51c2VkX3ByaW8pOw0KPiAgfQ0KPiAgDQo+IEBA IC01OSw3ICs3Miw4IEBAIHZvaWQgdm13X3Jlc291cmNlX21vYl9kZXRhY2goc3RydWN0IHZtd19y ZXNvdXJjZQ0KPiAqcmVzKQ0KPiAgDQo+ICAJbG9ja2RlcF9hc3NlcnRfaGVsZCgmYmFja3VwLT5i YXNlLnJlc3YtPmxvY2suYmFzZSk7DQo+ICAJaWYgKHZtd19yZXNvdXJjZV9tb2JfYXR0YWNoZWQo cmVzKSkgew0KPiAtCQlsaXN0X2RlbF9pbml0KCZyZXMtPm1vYl9oZWFkKTsNCj4gKwkJcmJfZXJh c2UoJnJlcy0+bW9iX25vZGUsICZiYWNrdXAtPnJlc190cmVlKTsNCj4gKwkJUkJfQ0xFQVJfTk9E RSgmcmVzLT5tb2Jfbm9kZSk7DQo+ICAJCXZtd19ib19wcmlvX2RlbChiYWNrdXAsIHJlcy0+dXNl ZF9wcmlvKTsNCj4gIAl9DQo+ICB9DQo+IEBAIC0yMDYsOCArMjIwLDggQEAgaW50IHZtd19yZXNv dXJjZV9pbml0KHN0cnVjdCB2bXdfcHJpdmF0ZQ0KPiAqZGV2X3ByaXYsIHN0cnVjdCB2bXdfcmVz b3VyY2UgKnJlcywNCj4gIAlyZXMtPnJlc19mcmVlID0gcmVzX2ZyZWU7DQo+ICAJcmVzLT5kZXZf cHJpdiA9IGRldl9wcml2Ow0KPiAgCXJlcy0+ZnVuYyA9IGZ1bmM7DQo+ICsJUkJfQ0xFQVJfTk9E RSgmcmVzLT5tb2Jfbm9kZSk7DQo+ICAJSU5JVF9MSVNUX0hFQUQoJnJlcy0+bHJ1X2hlYWQpOw0K PiAtCUlOSVRfTElTVF9IRUFEKCZyZXMtPm1vYl9oZWFkKTsNCj4gIAlJTklUX0xJU1RfSEVBRCgm cmVzLT5iaW5kaW5nX2hlYWQpOw0KPiAgCXJlcy0+aWQgPSAtMTsNCj4gIAlyZXMtPmJhY2t1cCA9 IE5VTEw7DQo+IEBAIC03NTUsMTkgKzc2OSwyMCBAQCBpbnQgdm13X3Jlc291cmNlX3ZhbGlkYXRl KHN0cnVjdCB2bXdfcmVzb3VyY2UNCj4gKnJlcywgYm9vbCBpbnRyKQ0KPiAgICovDQo+ICB2b2lk IHZtd19yZXNvdXJjZV91bmJpbmRfbGlzdChzdHJ1Y3Qgdm13X2J1ZmZlcl9vYmplY3QgKnZibykN Cj4gIHsNCj4gLQ0KPiAtCXN0cnVjdCB2bXdfcmVzb3VyY2UgKnJlcywgKm5leHQ7DQo+ICAJc3Ry dWN0IHR0bV92YWxpZGF0ZV9idWZmZXIgdmFsX2J1ZiA9IHsNCj4gIAkJLmJvID0gJnZiby0+YmFz ZSwNCj4gIAkJLm51bV9zaGFyZWQgPSAwDQo+ICAJfTsNCj4gIA0KPiAgCWxvY2tkZXBfYXNzZXJ0 X2hlbGQoJnZiby0+YmFzZS5yZXN2LT5sb2NrLmJhc2UpOw0KPiAtCWxpc3RfZm9yX2VhY2hfZW50 cnlfc2FmZShyZXMsIG5leHQsICZ2Ym8tPnJlc19saXN0LCBtb2JfaGVhZCkgew0KPiAtCQlpZiAo IXJlcy0+ZnVuYy0+dW5iaW5kKQ0KPiAtCQkJY29udGludWU7DQo+ICsJd2hpbGUgKCFSQl9FTVBU WV9ST09UKCZ2Ym8tPnJlc190cmVlKSkgew0KPiArCQlzdHJ1Y3QgcmJfbm9kZSAqbm9kZSA9IHZi by0+cmVzX3RyZWUucmJfbm9kZTsNCj4gKwkJc3RydWN0IHZtd19yZXNvdXJjZSAqcmVzID0NCj4g KwkJCWNvbnRhaW5lcl9vZihub2RlLCBzdHJ1Y3Qgdm13X3Jlc291cmNlLA0KPiBtb2Jfbm9kZSk7 DQo+ICsNCj4gKwkJaWYgKCFXQVJOX09OX09OQ0UoIXJlcy0+ZnVuYy0+dW5iaW5kKSkNCj4gKwkJ CSh2b2lkKSByZXMtPmZ1bmMtPnVuYmluZChyZXMsIHJlcy0+cmVzX2RpcnR5LA0KPiAmdmFsX2J1 Zik7DQo+ICANCj4gLQkJKHZvaWQpIHJlcy0+ZnVuYy0+dW5iaW5kKHJlcywgcmVzLT5yZXNfZGly dHksDQo+ICZ2YWxfYnVmKTsNCj4gIAkJcmVzLT5iYWNrdXBfZGlydHkgPSB0cnVlOw0KPiAgCQly ZXMtPnJlc19kaXJ0eSA9IGZhbHNlOw0KPiAgCQl2bXdfcmVzb3VyY2VfbW9iX2RldGFjaChyZXMp Ow0KPiAtLSANCj4gMi4yMC4xDQo+IA0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWw=