From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/gem: Use kref_get_unless_zero for the weak mmap references Date: Thu, 15 Oct 2015 14:31:34 +0200 Message-ID: <20151015123134.GC26718@phenom.ffwll.local> References: <1444894601-5200-12-git-send-email-daniel.vetter@ffwll.ch> <1444901623-18918-1-git-send-email-daniel.vetter@ffwll.ch> <20151015100659.GA27669@nuc-i3427.alporthouse.com> <20151015111136.GX26718@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wi0-f174.google.com (mail-wi0-f174.google.com [209.85.212.174]) by gabe.freedesktop.org (Postfix) with ESMTPS id 982AB6E652 for ; Thu, 15 Oct 2015 05:28:41 -0700 (PDT) Received: by wicgb1 with SMTP id gb1so270135855wic.1 for ; Thu, 15 Oct 2015 05:28:40 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20151015111136.GX26718@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Chris Wilson , Daniel Vetter , DRI Development , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBPY3QgMTUsIDIwMTUgYXQgMDE6MTE6MzZQTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBUaHUsIE9jdCAxNSwgMjAxNSBhdCAxMTowNjo1OUFNICswMTAwLCBDaHJpcyBX aWxzb24gd3JvdGU6Cj4gPiBPbiBUaHUsIE9jdCAxNSwgMjAxNSBhdCAxMTozMzo0M0FNICswMjAw LCBEYW5pZWwgVmV0dGVyIHdyb3RlOgo+ID4gPiBDb21wYXJlZCB0byB3cmFwcGluZyB0aGUgZmlu YWwga3JlZl9wdXQgd2l0aCBkZXYtPnN0cnVjdF9tdXRleCB0aGlzCj4gPiA+IGFsbG93cyB1cyB0 byBvbmx5IGFjcXVpcmUgdGhlIG9mZnNldCBtYW5hZ2VyIGxvb2sgYm90aCBpbiB0aGUgZmluYWwK PiA+ID4gY2xlYW51cCBhbmQgaW4gdGhlIGxvb2t1cC4gV2hpY2ggaGFzIHRoZSB1cHNpZGUgdGhh dCBubyBsb2NrcyBsZWFrIG91dAo+ID4gPiBvZiB0aGUgY29yZSBhYnN0cmFjdGlvbnMuIEJ1dCBp dCBtZWFucyB0aGF0IHdlIG5lZWQgdG8gaG9sZCBhCj4gPiA+IHRlbXBvcmFyeSByZWZlcmVuY2Ug dG8gdGhlIG9iamVjdCB3aGlsZSBjaGVja2luZyBtbWFwIGNvbnN0cmFpbnRzLCB0bwo+ID4gPiBt YWtlIHN1cmUgdGhlIG9iamVjdCBkb2Vzbid0IGRpc2FwcGVhci4gRXh0ZW5kZWQgdGhlIGNyaXRp Y2FsIHJlZ2lvbgo+ID4gPiB3b3VsZCBoYXZlIHdvcmtlZCB0b28sIGJ1dCB3b3VsZCByZXN1bHQg aW4gbW9yZSBsZWFreSBsb2NraW5nLgo+ID4gPiAKPiA+ID4gQWxzbywgdGhpcyBpcyB0aGUgZmlu YWwgYml0IHdoaWNoIHJlcXVpcmVkIGRldi0+c3RydWN0X211dGV4IGluIGdlbQo+ID4gPiBjb3Jl LCBub3cgbW9kZXJuIGRyaXZlcnMgY2FuIGJlIGNvbXBsZXRlbHkgc3RydWN0X211dGV4IGZyZWUh Cj4gPiA+IAo+ID4gPiBUaGlzIG5lZWRzIGEgbmV3IGRybV92bWFfb2Zmc2V0X2V4YWN0X2xvb2t1 cF9sb2NrZWQgYW5kIG1ha2VzIGJvdGgKPiA+ID4gZHJtX3ZtYV9vZmZzZXRfZXhhY3RfbG9va3Vw IGFuZCBkcm1fdm1hX29mZnNldF9sb29rdXAgdW51c2VkLgo+ID4gPiAKPiA+ID4gdjI6IERvbid0 IGxlYWsgb2JqZWN0IHJlZmVyZW5jZXMgaW4gZmFpbHVyZSBwYXRocyAoRGF2aWQpLgo+ID4gPiAK PiA+ID4gQ2M6IERhdmlkIEhlcnJtYW5uIDxkaC5oZXJybWFubkBnbWFpbC5jb20+Cj4gPiA+IFJl dmlld2VkLWJ5OiBEYXZpZCBIZXJybWFubiA8ZGguaGVycm1hbm5AZ21haWwuY29tPgo+ID4gPiBT aWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiA+ ID4gLS0tCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jICAgICAgICAgfCAzMCArKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL2RybV92bWFf bWFuYWdlci5jIHwgNDAgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g PiA+ICBpbmNsdWRlL2RybS9kcm1fdm1hX21hbmFnZXIuaCAgICAgfCAyMiArKysrKystLS0tLS0t LS0tLS0tLS0KPiA+ID4gIDMgZmlsZXMgY2hhbmdlZCwgMzYgaW5zZXJ0aW9ucygrKSwgNTYgZGVs ZXRpb25zKC0pCj4gPiA+IAo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9n ZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2VtLmMKPiA+ID4gaW5kZXggYWI4ZWE0MjI2NGY0 Li42NjNmYWRiZTk3OWUgMTAwNjQ0Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZ2Vt LmMKPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYwo+ID4gPiBAQCAtODYyLDMw ICs4NjIsMzYgQEAgaW50IGRybV9nZW1fbW1hcChzdHJ1Y3QgZmlsZSAqZmlscCwgc3RydWN0IHZt X2FyZWFfc3RydWN0ICp2bWEpCj4gPiA+ICB7Cj4gPiA+ICAJc3RydWN0IGRybV9maWxlICpwcml2 ID0gZmlscC0+cHJpdmF0ZV9kYXRhOwo+ID4gPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBw cml2LT5taW5vci0+ZGV2Owo+ID4gPiAtCXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqOwo+ID4g PiArCXN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqID0gTlVMTDsKPiA+ID4gIAlzdHJ1Y3QgZHJt X3ZtYV9vZmZzZXRfbm9kZSAqbm9kZTsKPiA+ID4gIAlpbnQgcmV0Owo+ID4gPiAgCj4gPiA+ICAJ aWYgKGRybV9kZXZpY2VfaXNfdW5wbHVnZ2VkKGRldikpCj4gPiA+ICAJCXJldHVybiAtRU5PREVW Owo+ID4gPiAgCj4gPiAKPiA+IC8qIGJsYSBibGEgYmxhCj4gPiAgKiBXaGVuIHRoZSBvYmplY3Qg aXMgYmVpbmcgZnJlZWQsIGFmdGVyIGl0IGhpdHMgMC1yZWZjbnQKPiA+ICAqIGl0IGFjcXVpcmVz IHRoZSBzdHJ1Y3RfbXV0ZXggYW5kIHByb2NlZWRzIHRvIHRlYXIgZG93bgo+ID4gICogdGhlIG9i amVjdC4gSW4gdGhlIHByb2Nlc3MgaXQgd2lsbCBhdHRlbXB0IHRvIHJlbW92ZQo+ID4gICogdGhl IFZNQSBvZmZzZXQgYW5kIHNvIGFjcXVpcmUgdGhpcyBtZ3ItPnZtX2xvY2suCj4gPiAgKiBUaGVy ZWZvcmUgaWYgd2UgZmluZCBhbiBvYmplY3Qgd2l0aCBhIDAtcmVmY250IHRoYXQgbWF0Y2hlcwo+ ID4gICogb3VyIHJhbmdlLCB3ZSBrbm93IGl0IGlzIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIGRl c3Ryb3llZAo+ID4gICogYW5kIHdpbGwgYmUgZnJlZWQgYXMgc29vbiBhcyB3ZSByZWxlYXNlIHRo ZSBsb2NrIC0gc28KPiA+ICAqIHdlIGhhdmUgdG8gY2hlY2sgZm9yIHRoZSAwLXJlZmNudGVkIG9i amVjdCBhbmQgdHJlYXQgaXQgYXMKPiA+ICAqIGludmFsaWQuCj4gPiAgKi8KPiAKPiBBcyBkaXNj dXNzZWQgb24gaXJjIHN0cnVjdF9tdXRleCBpcyBqdXN0IGEgZGlncmVzc2lvbiwgc28gSSBsZWZ0 IHRoYXQgcGFydAo+IG91dCB3aGVuIGFkZGluZyB5b3VyIGNvbW1lbnQuCj4gCj4gPiA+IC0JbXV0 ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ID4gPiArCWRybV92bWFfb2Zmc2V0X2xvY2tf bG9va3VwKGRldi0+dm1hX29mZnNldF9tYW5hZ2VyKTsKPiA+ID4gKwlub2RlID0gZHJtX3ZtYV9v ZmZzZXRfZXhhY3RfbG9va3VwX2xvY2tlZChkZXYtPnZtYV9vZmZzZXRfbWFuYWdlciwKPiA+ID4g KwkJCQkJCSAgdm1hLT52bV9wZ29mZiwKPiA+ID4gKwkJCQkJCSAgdm1hX3BhZ2VzKHZtYSkpOwo+ ID4gPiArCWlmIChsaWtlbHkobm9kZSkpIHsKPiA+ID4gKwkJb2JqID0gY29udGFpbmVyX29mKG5v ZGUsIHN0cnVjdCBkcm1fZ2VtX29iamVjdCwgdm1hX25vZGUpOwo+ID4gPiArCQlpZiAoIWtyZWZf Z2V0X3VubGVzc196ZXJvKCZvYmotPnJlZmNvdW50KSkKPiA+ID4gKwkJCW9iaiA9IE5VTEw7Cj4g PiA+ICsJfQo+ID4gPiArCWRybV92bWFfb2Zmc2V0X3VubG9ja19sb29rdXAoZGV2LT52bWFfb2Zm c2V0X21hbmFnZXIpOwo+ID4gCj4gPiBSZXZpZXdlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0Bj aHJpcy13aWxzb24uY28udWs+Cj4gCj4gQWxsIGZvdXIgY29yZSBnZW0gcGF0Y2hlcyBub3cgbWVy Z2VkIGluIGRybS1taXNjLCB0aGFua3MgZm9yIHRoZSByZXZpZXcuCgpBcmdoLCBsYXN0IHBhdGNo IG5lZWRzIG9uZSBvZiB0aGUgdmdlbSBvbmVzIGFzIHByZXAsIHNvIGRyb3BwZWQgaXQgYWdhaW4u Ci1EYW5pZWwKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBv cmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==