From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: Re: [PATCH 09/35] drm/gem: support BO freeing without dev->struct_mutex Date: Wed, 27 Apr 2016 11:31:00 +0200 Message-ID: <1461749460.32509.9.camel@pengutronix.de> References: <1461691808-12414-1-git-send-email-daniel.vetter@ffwll.ch> <1461691808-12414-10-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by gabe.freedesktop.org (Postfix) with ESMTPS id 97A7E6E1DB for ; Wed, 27 Apr 2016 09:31:05 +0000 (UTC) In-Reply-To: <1461691808-12414-10-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter Cc: Daniel Vetter , Intel Graphics Development , DRI Development List-Id: dri-devel@lists.freedesktop.org QW0gRGllbnN0YWcsIGRlbiAyNi4wNC4yMDE2LCAxOToyOSArMDIwMCBzY2hyaWViIERhbmllbCBW ZXR0ZXI6Cj4gRmluYWxseSBhbGwgdGhlIGNvcmUgZ2VtIGFuZCBhIGxvdCBvZiBkcml2ZXJzIGFy ZSBlbnRpcmVseSBmcmVlIG9mCj4gZGV2LT5zdHJ1Y3RfbXV0ZXggZGVwZW5jaWVzLCBhbmQgd2Ug Y2FuIHN0YXJ0IHRvIGhhdmUgYW4gZW50aXJlbHkKPiBsb2NrbGVzcyB1bnJlZiBwYXRoLgo+IAo+ IFRvIG1ha2Ugc3VyZSB0aGF0IG5vIG9uZSB3aG8gdG91Y2hlcyB0aGUgY29yZSBjb2RlIGFjY2lk ZW50YWxseSBicmVha3MKPiBleGlzdGluZyBkcml2ZXJzIHdoaWNoIHN0aWxsIHJlcXVpcmUgZGV2 LT5zdHJ1Y3RfbXV0ZXggSSd2ZSBtYWRlIHRoZQo+IG1pZ2h0X2xvY2sgY2hlY2sgdW5jb25kaXRp b25hbC4KPiAKPiBXaGlsZSBhdCBpdCBkZS1pbmxpbmUgdGhlIHJlZi91bnJlZiBmdW5jdGlvbnMs IHRoZXkndmUgYmVjb21lIGEgYml0Cj4gdG9vIGJpZy4KPiAKPiB2MjogTWFrZSBpdCBub3QgbGVh ayBsaWtlIGEgc2lldmUuCj4gCj4gU2lnbmVkLW9mZi1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVs LnZldHRlckBpbnRlbC5jb20+CgpUd28gbW9zdGx5IGNvc21ldGljIGNvbW1lbnRzIGJlbG93LCBv dGhlcndpc2UgbG9va3MgZ29vZDoKClJldmlld2VkLWJ5OiBMdWNhcyBTdGFjaCA8bC5zdGFjaEBw ZW5ndXRyb25peC5kZT4KCj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMgfCA2NCAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQo+ICBpbmNsdWRl L2RybS9kcm1QLmggICAgICAgIHwgMTIgKysrKysrKystCj4gIGluY2x1ZGUvZHJtL2RybV9nZW0u aCAgICAgfCA0NSArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMyBmaWxlcyBj aGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMK PiBpbmRleCAyNWRhYzMxZWVmMzcuLjhmMmVmZjQ0OGJiNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2dlbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYwo+IEBA IC03ODgsMTYgKzc4OCw3IEBAIGRybV9nZW1fb2JqZWN0X3JlbGVhc2Uoc3RydWN0IGRybV9nZW1f b2JqZWN0ICpvYmopCj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fZ2VtX29iamVjdF9yZWxlYXNl KTsKPiAgCj4gLS8qKgo+IC0gKiBkcm1fZ2VtX29iamVjdF9mcmVlIC0gZnJlZSBhIEdFTSBvYmpl Y3QKPiAtICogQGtyZWY6IGtyZWYgb2YgdGhlIG9iamVjdCB0byBmcmVlCj4gLSAqCj4gLSAqIENh bGxlZCBhZnRlciB0aGUgbGFzdCByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCBoYXMgYmVlbiBsb3N0 Lgo+IC0gKiBNdXN0IGJlIGNhbGxlZCBob2xkaW5nIHN0cnVjdF8gbXV0ZXgKPiAtICoKPiAtICog RnJlZXMgdGhlIG9iamVjdAo+IC0gKi8KPiAtdm9pZAo+ICtzdGF0aWMgdm9pZAo+ICBkcm1fZ2Vt X29iamVjdF9mcmVlKHN0cnVjdCBrcmVmICprcmVmKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2dlbV9v YmplY3QgKm9iaiA9Cj4gQEAgLTgwNiwxMCArNzk3LDU5IEBAIGRybV9nZW1fb2JqZWN0X2ZyZWUo c3RydWN0IGtyZWYgKmtyZWYpCj4gIAo+ICAJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZkZXYt PnN0cnVjdF9tdXRleCkpOwo+ICAKPiAtCWlmIChkZXYtPmRyaXZlci0+Z2VtX2ZyZWVfb2JqZWN0 ICE9IE5VTEwpCj4gKwlpZiAoZGV2LT5kcml2ZXItPmdlbV9mcmVlX29iamVjdF91bmxvY2tlZCAh PSBOVUxMKQoKV2h5IHRob3NlIGV4cGxpY2l0ICE9IE5VTEwgY2hlY2tzPyBUaGUgc3R5bGUgbW9z dGx5IHVzZWQgaW4gdGhpcyBmaWxlIGlzCnRvIG9taXQgdGhvc2UsIGxpa2UgImlmIChkZXYtPmRy aXZlci0+Z2VtX2ZyZWVfb2JqZWN0X3VubG9ja2VkKSIuIFNhbWUKY29tbWVudCBhcHBsaWVzIHRv IHNldmVyYWwgaHVua3Mgb2YgdGhpcyBwYXRjaC4KCj4gKwkJZGV2LT5kcml2ZXItPmdlbV9mcmVl X29iamVjdF91bmxvY2tlZChvYmopOwo+ICsJZWxzZSBpZiAoZGV2LT5kcml2ZXItPmdlbV9mcmVl X29iamVjdCAhPSBOVUxMKQo+ICAJCWRldi0+ZHJpdmVyLT5nZW1fZnJlZV9vYmplY3Qob2JqKTsK PiAgfQo+IC1FWFBPUlRfU1lNQk9MKGRybV9nZW1fb2JqZWN0X2ZyZWUpOwo+ICsKPiArLyoqCj4g KyAqIGRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkIC0gcmVsZWFzZSBhIEdFTSBC TyByZWZlcmVuY2UKPiArICogQG9iajogR0VNIGJ1ZmZlciBvYmplY3QKPiArICoKPiArICogVGhp cyByZWxlYXNlcyBhIHJlZmVyZW5jZSB0byBAb2JqLiBDYWxsZXJzIG11c3Qgbm90IGhvbGQgdGhl Cj4gKyAqIGRldi0+c3RydWN0X211dGV4IGxvY2sgd2hlbiBjYWxsaW5nIHRoaXMgZnVuY3Rpb24u Cj4gKyAqLwo+ICt2b2lkCj4gK2RybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKHN0 cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 Owo+ICsKPiArCWlmICghb2JqKQo+ICsJCXJldHVybjsKPiArCj4gKwlkZXYgPSBvYmotPmRldjsK PiArCW1pZ2h0X2xvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiArCj4gKwlpZiAoZGV2LT5kcml2 ZXItPmdlbV9mcmVlX29iamVjdCAhPSBOVUxMKQo+ICsJCWtyZWZfcHV0KCZvYmotPnJlZmNvdW50 LCBkcm1fZ2VtX29iamVjdF9mcmVlKTsKPiArCWVsc2UgaWYgKGtyZWZfcHV0X211dGV4KCZvYmot PnJlZmNvdW50LCBkcm1fZ2VtX29iamVjdF9mcmVlLAo+ICsJCQkJJmRldi0+c3RydWN0X211dGV4 KSkKPiArCQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiArfQo+ICtFWFBPUlRf U1lNQk9MKGRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKTsKPiArCj4gKy8qKgo+ ICsgKiBkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSAtIHJlbGVhc2UgYSBHRU0gQk8gcmVmZXJl bmNlCj4gKyAqIEBvYmo6IEdFTSBidWZmZXIgb2JqZWN0Cj4gKyAqCj4gKyAqIFRoaXMgcmVsZWFz ZXMgYSByZWZlcmVuY2UgdG8gQG9iai4gQ2FsbGVycyBtdXN0IGhvbGQgdGhlIGRldi0+c3RydWN0 X211dGV4Cj4gKyAqIGxvY2sgd2hlbiBjYWxsaW5nIHRoaXMgZnVuY3Rpb24sIGV2ZW4gd2hlbiB0 aGUgZHJpdmVyIGRvZXNuJ3QgdXNlCj4gKyAqIGRldi0+c3RydWN0X211dGV4IGZvciBhbnl0aGlu Zy4KPiArICoKPiArICogRm9yIGRyaXZlcnMgbm90IGVuY3VtYmVyZWQgd2l0aCBsZWdhY3kgbG9j a2luZyB1c2UKPiArICogZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoKSBpbnN0 ZWFkLgo+ICsgKi8KPiArdm9pZAo+ICtkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZShzdHJ1Y3Qg ZHJtX2dlbV9vYmplY3QgKm9iaikKPiArewo+ICsJaWYgKG9iaiAhPSBOVUxMKSB7Cj4gKwkJV0FS Tl9PTighbXV0ZXhfaXNfbG9ja2VkKCZvYmotPmRldi0+c3RydWN0X211dGV4KSk7Cj4gKwo+ICsJ CWtyZWZfcHV0KCZvYmotPnJlZmNvdW50LCBkcm1fZ2VtX29iamVjdF9mcmVlKTsKPiArCX0KPiAr fQo+ICtFWFBPUlRfU1lNQk9MKGRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKTsKPiAgCj4gIC8q Kgo+ICAgKiBkcm1fZ2VtX3ZtX29wZW4gLSB2bWEtPm9wcy0+b3BlbiBpbXBsZW1lbnRhdGlvbiBm b3IgR0VNCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybVAuaCBiL2luY2x1ZGUvZHJtL2Ry bVAuaAo+IGluZGV4IGM4MWRkMjI1MGZjNi4uN2UzMGIzZDJiMjVjIDEwMDY0NAo+IC0tLSBhL2lu Y2x1ZGUvZHJtL2RybVAuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2RybVAuaAo+IEBAIC01ODMsOSAr NTgzLDE5IEBAIHN0cnVjdCBkcm1fZHJpdmVyIHsKPiAgCSAqIERyaXZlci1zcGVjaWZpYyBjb25z dHJ1Y3RvciBmb3IgZHJtX2dlbV9vYmplY3RzLCB0byBzZXQgdXAKPiAgCSAqIG9iai0+ZHJpdmVy X3ByaXZhdGUuCj4gIAkgKgo+IC0JICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MuCj4gKwkgKiBUaGlz IGlzIGRlcHJlY2F0ZWQgYW5kIHNob3VsZCBub3QgYmUgdXNlZCBieSBuZXcgZHJpdmVycy4gVXNl Cj4gKwkgKiBAZ2VtX2ZyZWVfb2JqZWN0X3VubG9ja2VkIGluc3RlYWQuCj4gIAkgKi8KPiAgCXZv aWQgKCpnZW1fZnJlZV9vYmplY3QpIChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaik7Cj4gKwo+ ICsJLyoqCj4gKwkgKiBEcml2ZXItc3BlY2lmaWMgY29uc3RydWN0b3IgZm9yIGRybV9nZW1fb2Jq ZWN0cywgdG8gc2V0IHVwCj4gKwkgKiBvYmotPmRyaXZlcl9wcml2YXRlLgoKVGhpcyBwYXJ0IG9m IHRoZSBjb21tZW50IGlzIHJlYWxseSBvZmYuIEkgc2VlIGl0J3MganVzdCBjb3B5JnBhc3RlIGZy b20KdGhlIGNvbW1lbnQgYWJvdmUgZ2VtX2ZyZWVfb2JqZWN0LCBidXQgSSB0aGluayBpdCBzaG91 bGQgaGF2ZSBiZWVuCnBsYWNlZCBhYm92ZSBnZW1fb3Blbl9vYmplY3QgYW5kIGhhcyBub3RoaW5n IHRvIGRvIHdpdGggdGhlIGZyZWUqCmNhbGxiYWNrcy4KCj4gIFRoaXMgaXMgZm9yIGRyaXZlcnMg d2hpY2ggYXJlIG5vdCBlbmN1bWJlcmVkCj4gKwkgKiB3aXRoIGRldi0+c3RydWN0X211dGV4IGxl Z2FjeSBsb2NraW5nIHNjaGVtZXMuIFVzZSB0aGlzIGhvb2sgaW5zdGVhZAo+ICsJICogb2YgQGdl bV9mcmVlX29iamVjdC4KPiArCSAqLwo+ICsJdm9pZCAoKmdlbV9mcmVlX29iamVjdF91bmxvY2tl ZCkgKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKTsKPiArCj4gIAlpbnQgKCpnZW1fb3Blbl9v YmplY3QpIChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKiwgc3RydWN0IGRybV9maWxlICopOwo+ICAJ dm9pZCAoKmdlbV9jbG9zZV9vYmplY3QpIChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKiwgc3RydWN0 IGRybV9maWxlICopOwo+ICAKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2dlbS5oIGIv aW5jbHVkZS9kcm0vZHJtX2dlbS5oCj4gaW5kZXggMGIzZTExYWI4NzU3Li5hZTFjN2YxOGVlYzAg MTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2dlbS5oCj4gKysrIGIvaW5jbHVkZS9kcm0v ZHJtX2dlbS5oCj4gQEAgLTE3NSw3ICsxNzUsNiBAQCBzdHJ1Y3QgZHJtX2dlbV9vYmplY3Qgewo+ ICB9Owo+ICAKPiAgdm9pZCBkcm1fZ2VtX29iamVjdF9yZWxlYXNlKHN0cnVjdCBkcm1fZ2VtX29i amVjdCAqb2JqKTsKPiAtdm9pZCBkcm1fZ2VtX29iamVjdF9mcmVlKHN0cnVjdCBrcmVmICprcmVm KTsKPiAgaW50IGRybV9nZW1fb2JqZWN0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAg CQkJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmosIHNpemVfdCBzaXplKTsKPiAgdm9pZCBkcm1f Z2VtX3ByaXZhdGVfb2JqZWN0X2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiBAQCAtMTk5 LDQ4ICsxOTgsOCBAQCBkcm1fZ2VtX29iamVjdF9yZWZlcmVuY2Uoc3RydWN0IGRybV9nZW1fb2Jq ZWN0ICpvYmopCj4gIAlrcmVmX2dldCgmb2JqLT5yZWZjb3VudCk7Cj4gIH0KPiAgCj4gLS8qKgo+ IC0gKiBkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSAtIHJlbGVhc2UgYSBHRU0gQk8gcmVmZXJl bmNlCj4gLSAqIEBvYmo6IEdFTSBidWZmZXIgb2JqZWN0Cj4gLSAqCj4gLSAqIFRoaXMgcmVsZWFz ZXMgYSByZWZlcmVuY2UgdG8gQG9iai4gQ2FsbGVycyBtdXN0IGhvbGQgdGhlIGRldi0+c3RydWN0 X211dGV4Cj4gLSAqIGxvY2sgd2hlbiBjYWxsaW5nIHRoaXMgZnVuY3Rpb24sIGV2ZW4gd2hlbiB0 aGUgZHJpdmVyIGRvZXNuJ3QgdXNlCj4gLSAqIGRldi0+c3RydWN0X211dGV4IGZvciBhbnl0aGlu Zy4KPiAtICoKPiAtICogRm9yIGRyaXZlcnMgbm90IGVuY3VtYmVyZWQgd2l0aCBsZWdhY3kgbG9j a2luZyB1c2UKPiAtICogZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoKSBpbnN0 ZWFkLgo+IC0gKi8KPiAtc3RhdGljIGlubGluZSB2b2lkCj4gLWRybV9nZW1fb2JqZWN0X3VucmVm ZXJlbmNlKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQo+IC17Cj4gLQlpZiAob2JqICE9IE5V TEwpIHsKPiAtCQlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJm9iai0+ZGV2LT5zdHJ1Y3RfbXV0 ZXgpKTsKPiAtCj4gLQkJa3JlZl9wdXQoJm9iai0+cmVmY291bnQsIGRybV9nZW1fb2JqZWN0X2Zy ZWUpOwo+IC0JfQo+IC19Cj4gLQo+IC0vKioKPiAtICogZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVu Y2VfdW5sb2NrZWQgLSByZWxlYXNlIGEgR0VNIEJPIHJlZmVyZW5jZQo+IC0gKiBAb2JqOiBHRU0g YnVmZmVyIG9iamVjdAo+IC0gKgo+IC0gKiBUaGlzIHJlbGVhc2VzIGEgcmVmZXJlbmNlIHRvIEBv YmouIENhbGxlcnMgbXVzdCBub3QgaG9sZCB0aGUKPiAtICogZGV2LT5zdHJ1Y3RfbXV0ZXggbG9j ayB3aGVuIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi4KPiAtICovCj4gLXN0YXRpYyBpbmxpbmUgdm9p ZAo+IC1kcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChzdHJ1Y3QgZHJtX2dlbV9v YmplY3QgKm9iaikKPiAtewo+IC0Jc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiAtCj4gLQlpZiAo IW9iaikKPiAtCQlyZXR1cm47Cj4gLQo+IC0JZGV2ID0gb2JqLT5kZXY7Cj4gLQlpZiAoa3JlZl9w dXRfbXV0ZXgoJm9iai0+cmVmY291bnQsIGRybV9nZW1fb2JqZWN0X2ZyZWUsICZkZXYtPnN0cnVj dF9tdXRleCkpCj4gLQkJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gLQllbHNl Cj4gLQkJbWlnaHRfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IC19Cj4gK3ZvaWQgZHJtX2dl bV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmop Owo+ICt2b2lkIGRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKHN0cnVjdCBkcm1fZ2VtX29iamVj dCAqb2JqKTsKPiAgCj4gIGludCBkcm1fZ2VtX2hhbmRsZV9jcmVhdGUoc3RydWN0IGRybV9maWxl ICpmaWxlX3ByaXYsCj4gIAkJCSAgc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmosCgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==