From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 5/5] drm: allocate kernel mode-object IDs in cyclic fashion Date: Wed, 9 Sep 2015 15:03:19 +0200 Message-ID: <20150909130319.GJ2767@phenom.ffwll.local> References: <1441801293-1440-1-git-send-email-dh.herrmann@gmail.com> <1441801293-1440-6-git-send-email-dh.herrmann@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f171.google.com (mail-wi0-f171.google.com [209.85.212.171]) by gabe.freedesktop.org (Postfix) with ESMTPS id 032346EA59 for ; Wed, 9 Sep 2015 06:00:37 -0700 (PDT) Received: by wiclk2 with SMTP id lk2so156326707wic.0 for ; Wed, 09 Sep 2015 06:00:35 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1441801293-1440-6-git-send-email-dh.herrmann@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: David Herrmann Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBTZXAgMDksIDIwMTUgYXQgMDI6MjE6MzNQTSArMDIwMCwgRGF2aWQgSGVycm1hbm4g d3JvdGU6Cj4gTm93IHRoYXQgd2Ugc3VwcG9ydCBjb25uZWN0b3IgaG90cGx1Z2dpbmcsIHVzZXIt c3BhY2UgbWlnaHQgc2VlCj4gbW9kZS1vYmplY3QgSURzIGNvbWluZyBhbmQgZ29pbmcgYXN5bmNo cm9ub3VzbHkuIFRoZXJlZm9yZSwgd2UgbXVzdCBtYWtlCj4gc3VyZSB0byBub3QgcmUtdXNlIG9i amVjdCBJRHMsIHNvIHRvIG5vdCBjb25mdXNlIHVzZXItc3BhY2UgYW5kIGludHJvZHVjZQo+IHJh Y2VzLiBUaGVyZWZvcmUsIGFsbCBrZXJuZWwtYWxsb2NhdGVkIG9iamVjdHMgd2lsbCBubyBsb25n ZXIgcmVjeWNsZQo+IElEcy4gSW5zdGVhZCwgd2UgdXNlIHRoZSBjeWNsaWMgaWRyIGFsbG9jYXRv ciAod2hpY2ggcGVyZm9ybXMgc3RpbGwgZmluZQo+IGZvciByZWFzb25hYmxlIGFsbG9jYXRpb24g c2NoZW1lcykuCj4gCj4gSG93ZXZlciwgZm9yIHVzZXItc3BhY2UgYWxsb2NhdGVkIG9iamVjdHMg bGlrZSBmcmFtZWJ1ZmZlcnMsIHdlIGRvbid0Cj4gd2FudCB0byByaXNrIGFsbG93aW5nIG1hbGlj aW91cyB1c2VycyB0byBzY3JldyB3aXRoIHRoZSBJRCBzcGFjZS4KPiBGdXJ0aGVybW9yZSwgdGhv c2Ugb2JqZWN0cyBoYXBwZW4gdG8gbm90IGJlIHN1YmplY3QgdG8gSUQgaG90cGx1ZyByYWNlcywK PiBhcyB0aGV5J3JlIGFsbG9jYXRlZCBhbmQgZnJlZWQgZXhwbGljaXRseS4gSGVuY2UsIHdlIHN0 aWxsIHJlY3ljbGUgSURzCj4gZm9yIHRoZXNlIG9iamVjdHMgKHdoaWNoIGFyZSBqdXN0IGZyYW1l YnVmZmVycyBzbyBmYXIpLgoKU2luY2UgYXRvbWljIGFsc28gYmxvYiBwcm9wZXJ0aWVzIGNhbiBi ZSBjcmVhdGVkIGJ5IHVzZXJzcGFjZS4gQW5kIHRoZXJlCmhhcyBhY3R1YWxseSBiZWVuIHRyb3Vi bGUgb25jZSB3aXRoIHNvbWUgYXR0ZW1wdCBpbiBTTkEgdG8gY2FjaGUgdGhlIGVkaWQKYmxvYiB3 aXRob3V0IHJlYWxpemluZyB0aGF0IHRoZXkgZ2V0IHJldXNlZC4gU28gd29ya2luZyB1c2Vyc3Bh Y2UgX2Fsd2F5c18KaGFzIHRvIHJlLXJlYWQgdGhlIGJsb2IgcHJvcCB0byBtYWtlIHN1cmUgaXQg aGFzIHRoZSBjdXJyZW50IG9uZSBhbnl3YXkuCi1EYW5pZWwKCj4gCj4gRm9yIGF0b21pYy1tb2Rl c2V0dGluZywgb2JqZWN0cyBhcmUgbG9va2VkIHVwIGJ5IHRoZSBrZXJuZWwgd2l0aG91dAo+IHNw ZWNpZnlpbmcgYW4gb2JqZWN0LXR5cGUuIEhlbmNlLCB3ZSBoYXZlIGEgdGhlb3JldGljYWwgcmFj ZSB3aGVyZSBhCj4gZnJhbWVidWZmZXIgcmVjeWNsZXMgYSBwcmV2aW91cyBjb25uZWN0b3IgSUQu IEhvd2V2ZXIsIHVzZXItYWxsb2NhdGVkCj4gb2JqZWN0cyBhcmUgbmV2ZXIgcmV0dXJuZWQgYnkg ZHJtX21vZGVfb2JqZWN0X2ZpbmQoKSAoYXMgdGhleSBuZWVkCj4gc2VwYXJhdGUgcmVmLWNvdW50 IGhhbmRsaW5nKSwgc28gdGhpcyByYWNlIGNhbm5vdCBoYXBwZW4gd2l0aCB0aGUKPiBjdXJyZW50 bHkgYXZhaWxhYmxlIG9iamVjdHMuIEV2ZW4gaWYgd2UgYWRkIHJlZi1jb3VudGluZyB0byBvdGhl cgo+IG9iamVjdHMsIGFsbCB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSBpcyB0byBuZXZlciBsb29rdXAg dXNlci1jb250cm9sbGVkCj4gb2JqZWN0cyB3aXRoIHRoZSBzYW1lIGZ1bmN0aW9uIGFzIGtlcm5l bC1jb250cm9sbGVkIG9iamVjdHMsIGJ1dCBub3QKPiBzcGVjaWZ5aW5nIHRoZSB0eXBlLiBUaGlz IHNvdW5kcyBoaWdobHkgdW5saWtlbHkgdG8gaGFwcGVuIGV2ZXIsIHNvIHdlCj4gc2hvdWxkIGJl IHNhZmUsIGFueXdheS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBEYXZpZCBIZXJybWFubiA8ZGguaGVy cm1hbm5AZ21haWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYyB8IDM3 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KPiAgMSBmaWxlIGNoYW5nZWQs IDMyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiBpbmRl eCAzM2Q4NzdjLi5mZDhhMmUyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fY3J0 Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiBAQCAtMjY5LDE4ICsyNjks NDIgQEAgY29uc3QgY2hhciAqZHJtX2dldF9mb3JtYXRfbmFtZSh1aW50MzJfdCBmb3JtYXQpCj4g IEVYUE9SVF9TWU1CT0woZHJtX2dldF9mb3JtYXRfbmFtZSk7Cj4gIAo+ICAvKgo+ICsgKiBGbGFn cyBmb3IgZHJtX21vZGVfb2JqZWN0X2dldF9yZWcoKToKPiArICogRFJNX01PREVfT0JKRUNUX0lE X1VOTElOS0VEOglBbGxvY2F0ZSB0aGUgb2JqZWN0IElELCBidXQgZG8gbm90IHN0b3JlIHRoZQo+ ICsgKiAJCQkJb2JqZWN0IHBvaW50ZXIuIEhlbmNlLCB0aGUgb2JqZWN0IGlzIG5vdAo+ICsgKiAJ CQkJcmVnaXN0ZXJlZCBidXQgbmVlZHMgdG8gYmUgaW5zZXJ0ZWQgbWFudWFsbHkuCj4gKyAqIAkJ CQlUaGlzIG11c3QgYmUgdXNlZCBmb3IgaG90cGx1Z2dlZCBvYmplY3RzLgo+ICsgKiBEUk1fTU9E RV9PQkpFQ1RfSURfUkVDWUNMRToJQWxsb3cgcmVjeWNsaW5nIHByZXZpb3VzbHkgYWxsb2NhdGVk IElEcy4gSWYKPiArICogCQkJCW5vdCBzZXQsIHRoZSBJRHMgc3BhY2UgaXMgYWxsb2NhdGVkIGlu IGEgY3ljbGljCj4gKyAqIAkJCQlmYXNoaW9uLiBUaGlzIHNob3VsZCBiZSB0aGUgZGVmYXVsdCBm b3IgYWxsCj4gKyAqIAkJCQlrZXJuZWwgYWxsb2NhdGVkIG9iamVjdHMsIHRvIG5vdCBjb25mdXNl Cj4gKyAqIAkJCQl1c2VyLXNwYWNlIG9uIGhvdHBsdWcuIFRoaXMgbXVzdCBub3QgYmUgdXNlZAo+ ICsgKiAJCQkJZm9yIHVzZXItYWxsb2NhdGVkIG9iamVjdHMsIHRob3VnaC4KPiArICovCj4gK2Vu dW0gewo+ICsJRFJNX01PREVfT0JKRUNUX0lEX1VOTElOS0VECQk9ICgxVSA8PCAwKSwKPiArCURS TV9NT0RFX09CSkVDVF9JRF9SRUNZQ0xFCQkJPSAoMVUgPDwgMSksCj4gK307Cj4gKwo+ICsvKgo+ ICAgKiBJbnRlcm5hbCBmdW5jdGlvbiB0byBhc3NpZ24gYSBzbG90IGluIHRoZSBvYmplY3QgaWRy IGFuZCBvcHRpb25hbGx5Cj4gICAqIHJlZ2lzdGVyIHRoZSBvYmplY3QgaW50byB0aGUgaWRyLgo+ ICAgKi8KPiAgc3RhdGljIGludCBkcm1fbW9kZV9vYmplY3RfZ2V0X3JlZyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAo+ICAJCQkJICAgc3RydWN0IGRybV9tb2RlX29iamVjdCAqb2JqLAo+ICAJCQkJ ICAgdWludDMyX3Qgb2JqX3R5cGUsCj4gLQkJCQkgICBib29sIHJlZ2lzdGVyX29iaikKPiArCQkJ CSAgIHVuc2lnbmVkIGludCBmbGFncykKPiAgewo+ICsJdm9pZCAqcHRyID0gKGZsYWdzICYgRFJN X01PREVfT0JKRUNUX0lEX1VOTElOS0VEKSA/IE5VTEwgOiBvYmo7Cj4gIAlpbnQgcmV0Owo+ICAK PiAgCW11dGV4X2xvY2soJmRldi0+bW9kZV9jb25maWcuaWRyX211dGV4KTsKPiAtCXJldCA9IGlk cl9hbGxvYygmZGV2LT5tb2RlX2NvbmZpZy5jcnRjX2lkciwgcmVnaXN0ZXJfb2JqID8gb2JqIDog TlVMTCwgMSwgMCwgR0ZQX0tFUk5FTCk7Cj4gKwlpZiAoZmxhZ3MgJiBEUk1fTU9ERV9PQkpFQ1Rf SURfUkVDWUNMRSkKPiArCQlyZXQgPSBpZHJfYWxsb2MoJmRldi0+bW9kZV9jb25maWcuY3J0Y19p ZHIsIHB0ciwgMSwgMCwKPiArCQkJCUdGUF9LRVJORUwpOwo+ICsJZWxzZQo+ICsJCXJldCA9IGlk cl9hbGxvY19jeWNsaWMoJmRldi0+bW9kZV9jb25maWcuY3J0Y19pZHIsIHB0ciwgMSwgMCwKPiAr CQkJCSAgICAgICBHRlBfS0VSTkVMKTsKPiAgCWlmIChyZXQgPj0gMCkgewo+ICAJCS8qCj4gIAkJ ICogU2V0IHVwIHRoZSBvYmplY3QgbGlua2luZyB1bmRlciB0aGUgcHJvdGVjdGlvbiBvZiB0aGUg aWRyCj4gQEAgLTMxMiw3ICszMzYsNyBAQCBzdGF0aWMgaW50IGRybV9tb2RlX29iamVjdF9nZXRf cmVnKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIGludCBkcm1fbW9kZV9vYmplY3RfZ2V0KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJCXN0cnVjdCBkcm1fbW9kZV9vYmplY3QgKm9iaiwg dWludDMyX3Qgb2JqX3R5cGUpCj4gIHsKPiAtCXJldHVybiBkcm1fbW9kZV9vYmplY3RfZ2V0X3Jl ZyhkZXYsIG9iaiwgb2JqX3R5cGUsIHRydWUpOwo+ICsJcmV0dXJuIGRybV9tb2RlX29iamVjdF9n ZXRfcmVnKGRldiwgb2JqLCBvYmpfdHlwZSwgMCk7Cj4gIH0KPiAgCj4gIHN0YXRpYyB2b2lkIGRy bV9tb2RlX29iamVjdF9yZWdpc3RlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+IEBAIC00MTQs NyArNDM4LDggQEAgaW50IGRybV9mcmFtZWJ1ZmZlcl9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+ICAJZmItPmRldiA9IGRldjsKPiAgCWZi LT5mdW5jcyA9IGZ1bmNzOwo+ICAKPiAtCXJldCA9IGRybV9tb2RlX29iamVjdF9nZXQoZGV2LCAm ZmItPmJhc2UsIERSTV9NT0RFX09CSkVDVF9GQik7Cj4gKwlyZXQgPSBkcm1fbW9kZV9vYmplY3Rf Z2V0X3JlZyhkZXYsICZmYi0+YmFzZSwgRFJNX01PREVfT0JKRUNUX0ZCLAo+ICsJCQkJICAgICAg RFJNX01PREVfT0JKRUNUX0lEX1JFQ1lDTEUpOwo+ICAJaWYgKHJldCkKPiAgCQlnb3RvIG91dDsK PiAgCj4gQEAgLTg3Miw3ICs4OTcsOSBAQCBpbnQgZHJtX2Nvbm5lY3Rvcl9pbml0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCj4gIAo+ICAJZHJtX21vZGVzZXRfbG9ja19hbGwoZGV2KTsKPiAgCj4g LQlyZXQgPSBkcm1fbW9kZV9vYmplY3RfZ2V0X3JlZyhkZXYsICZjb25uZWN0b3ItPmJhc2UsIERS TV9NT0RFX09CSkVDVF9DT05ORUNUT1IsIGZhbHNlKTsKPiArCXJldCA9IGRybV9tb2RlX29iamVj dF9nZXRfcmVnKGRldiwgJmNvbm5lY3Rvci0+YmFzZSwKPiArCQkJCSAgICAgIERSTV9NT0RFX09C SkVDVF9DT05ORUNUT1IsCj4gKwkJCQkgICAgICBEUk1fTU9ERV9PQkpFQ1RfSURfVU5MSU5LRUQp Owo+ICAJaWYgKHJldCkKPiAgCQlnb3RvIG91dF91bmxvY2s7Cj4gIAo+IC0tIAo+IDIuNS4xCj4g CgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24K aHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK