From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/tegra: Fix crash caused by reference count imbalance Date: Tue, 17 May 2016 18:46:32 +0200 Message-ID: <20160517164632.GT27098@phenom.ffwll.local> References: <1463502435-29217-1-git-send-email-jonathanh@nvidia.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1463502435-29217-1-git-send-email-jonathanh@nvidia.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jon Hunter Cc: Alexandre Courbot , Stephen Warren , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-tegra@vger.kernel.org List-Id: linux-tegra@vger.kernel.org T24gVHVlLCBNYXkgMTcsIDIwMTYgYXQgMDU6Mjc6MTVQTSArMDEwMCwgSm9uIEh1bnRlciB3cm90 ZToKPiBDb21taXQgZDIzMDdkZWExNGE0ICgiZHJtL2F0b21pYzogdXNlIGNvbm5lY3RvciByZWZl cmVuY2VzICh2MykiKSBhZGRlZAo+IHJlZmVyZW5jZSBjb3VudGluZyBmb3IgRFJNIGNvbm5lY3Rv cnMgYW5kIHRoaXMgY2F1c2VkIGEgY3Jhc2ggd2hlbgo+IGV4ZXJjaXNpbmcgc3lzdGVtIHN1c3Bl bmQgb24gVGVncmExMTQgRGFsbW9yZS4KPiAKPiBUaGUgVGVncmEgRFNJIGRyaXZlciBpbXBsZW1l bnRzIGEgVGVncmEgc3BlY2lmaWMgZnVuY3Rpb24sCj4gdGVncmFfZHNpX2Nvbm5lY3Rvcl9kdXBs aWNhdGVfc3RhdGUoKSwgdG8gZHVwbGljYXRlIHRoZSBjb25uZWN0b3Igc3RhdGUKPiBhbmQgZGVz dHJveXMgdGhlIHN0YXRlIHVzaW5nIHRoZSBnZW5lcmljIGhlbHBlciBmdW5jdGlvbiwKPiBkcm1f YXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZGVzdHJveV9zdGF0ZSgpLiBGb2xsb3dpbmcgY29tbWl0 Cj4gZDIzMDdkZWExNGE0ICgiZHJtL2F0b21pYzogdXNlIGNvbm5lY3RvciByZWZlcmVuY2VzICh2 MykiKSB0aGVyZSBpcwo+IG5vdyBhbiBpbWJhbGFuY2UgaW4gdGhlIGNvbm5lY3RvciByZWZlcmVu Y2UgY291bnQgYmVjYXVzZSB0aGUgVGVncmEKPiBmdW5jdGlvbiB0byBkdXBsaWNhdGUgc3RhdGUg ZG9lcyBub3QgdGFrZSBhIHJlZmVyZW5jZSB3aGVuIGR1cGxpY2F0aW5nCj4gdGhlIHN0YXRlIGlu Zm9ybWF0aW9uLiBIb3dldmVyLCB0aGUgZ2VuZXJpYyBoZWxwZXIgZnVuY3Rpb24gdG8gZGVzdHJv eQo+IHRoZSBzdGF0ZSBpbmZvcm1hdGlvbiBhc3N1bWVzIGEgcmVmZXJlbmNlIGhhcyBiZWVuIHRh a2VuIGFuZCBkdXJpbmcKPiBzeXN0ZW0gc3VzcGVuZCwgd2hlbiB0aGUgY29ubmVjdG9yIHN0YXRl IGlzIGRlc3Ryb3llZCwgdGhpcyBsZWFkcyB0byBhCj4gY3Jhc2ggYmVjYXVzZSB3ZSBhdHRlbXB0 IHRvIHB1dCB0aGUgcmVmZXJlbmNlIGZvciBhbiBvYmplY3QgdGhhdCBoYXMKPiBhbHJlYWR5IGJl ZW4gZnJlZWQuCj4gCj4gRml4IHRoaXMgYnkgYWxpZ25pbmcgdGVncmFfZHNpX2Nvbm5lY3Rvcl9k dXBsaWNhdGVfc3RhdGUoKSB3aXRoIGNvbW1pdAo+IGQyMzA3ZGVhMTRhNCAoImRybS9hdG9taWM6 IHVzZSBjb25uZWN0b3IgcmVmZXJlbmNlcyAodjMpIiksIHNvIHRoYXQgd2UKPiB0YWtlIGEgcmVm ZXJlbmNlIG9uIGEgY29ubmVjdG9yIGlmIGNydGMgaXMgc2V0Lgo+IAo+IEJ5IGZpeGluZyB0ZWdy YV9kc2lfY29ubmVjdG9yX2R1cGxpY2F0ZV9zdGF0ZSgpIHRvIHRha2UgYSByZWZlcmVuY2UsCj4g YWx0aG91Z2ggYSBjcmFzaCB3YXMgbm8gbG9uZ2VyIHNlZW4sIGl0IHdhcyB0aGVuIG9ic2VydmVk IHRoYXQgYWZ0ZXIKPiBlYWNoIHN5c3RlbSBzdXNwZW5kLXJlc3VtZSBjeWNsZSwgdGhlIHJlZmVy ZW5jZSB3b3VsZCBiZSBvbmUgZ3JlYXRlcgo+IHRoYW4gYmVmb3JlIHRoZSBzdXNwZW5kLXJlc3Vt ZSBjeWNsZS4gRm9sbG93aW5nIGNvbW1pdCBkMjMwN2RlYTE0YTQKPiAoImRybS9hdG9taWM6IHVz ZSBjb25uZWN0b3IgcmVmZXJlbmNlcyAodjMpIiksIGl0IHdhcyBmb3VuZCB0aGF0IHdlCj4gYWxz byBuZWVkIHRvIHB1dCB0aGUgcmVmZXJlbmNlIHdoZW4gY2FsbGluZyB0aGUgZnVuY3Rpb24KPiB0 ZWdyYV9kc2lfY29ubmVjdG9yX3Jlc2V0KCkgYmVmb3JlIGZyZWVpbmcgdGhlIHN0YXRlLiBGaXgg dGhpcyBieQo+IHVwZGF0aW5nIHRlZ3JhX2RzaV9jb25uZWN0b3JfcmVzZXQoKSB0byBjYWxsIHRo ZSBmdW5jdGlvbgo+IF9fZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUo KSBpbiBvcmRlciB0byBwdXQgdGhlCj4gcmVmZXJlbmNlIGZvciB0aGUgY29ubmVjdG9yLgo+IAo+ IEZpbmFsbHksIGFkZCBhIHdhcm5pbmcgaWYgYWxsb2NhdGluZyBtZW1vcnkgZm9yIHRoZSBzdGF0 ZSBpbmZvcm1hdGlvbgo+IGZhaWxzIGluIHRlZ3JhX2RzaV9jb25uZWN0b3JfcmVzZXQoKS4KPiAK PiBGaXhlczogZDIzMDdkZWExNGE0ICgiZHJtL2F0b21pYzogdXNlIGNvbm5lY3RvciByZWZlcmVu Y2VzICh2MykiKQo+IAo+IFNpZ25lZC1vZmYtYnk6IEpvbiBIdW50ZXIgPGpvbmF0aGFuaEBudmlk aWEuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMgfCAxNiArKysrKysr KysrKystLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMgYi9kcml2 ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMKPiBpbmRleCA0NGUxMDI3OTkxOTUuLjY4YWFhNGMzM2Nk OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vdGVncmEvZHNpLmMKPiBAQCAtNzQ1LDEzICs3NDUsMTggQEAgc3RhdGljIHZv aWQgdGVncmFfZHNpX3NvZnRfcmVzZXQoc3RydWN0IHRlZ3JhX2RzaSAqZHNpKQo+ICAKPiAgc3Rh dGljIHZvaWQgdGVncmFfZHNpX2Nvbm5lY3Rvcl9yZXNldChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAq Y29ubmVjdG9yKQo+ICB7Cj4gLQlzdHJ1Y3QgdGVncmFfZHNpX3N0YXRlICpzdGF0ZSA9Cj4gLQkJ a3phbGxvYyhzaXplb2YoKnN0YXRlKSwgR0ZQX0tFUk5FTCk7Cj4gKwlzdHJ1Y3QgdGVncmFfZHNp X3N0YXRlICpzdGF0ZSA9IGt6YWxsb2Moc2l6ZW9mKCpzdGF0ZSksIEdGUF9LRVJORUwpOwo+ICAK PiAtCWlmIChzdGF0ZSkgewo+ICsJaWYgKFdBUk5fT04oIXN0YXRlKSkKPiArCQlyZXR1cm47Cj4g Kwo+ICsJaWYgKGNvbm5lY3Rvci0+c3RhdGUpIHsKPiArCQlfX2RybV9hdG9taWNfaGVscGVyX2Nv bm5lY3Rvcl9kZXN0cm95X3N0YXRlKGNvbm5lY3RvciwKPiArCQkJCQkJCSAgICBjb25uZWN0b3It PnN0YXRlKTsKPiAgCQlrZnJlZShjb25uZWN0b3ItPnN0YXRlKTsKPiAtCQlfX2RybV9hdG9taWNf aGVscGVyX2Nvbm5lY3Rvcl9yZXNldChjb25uZWN0b3IsICZzdGF0ZS0+YmFzZSk7Cj4gIAl9Cj4g Kwo+ICsJX19kcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfcmVzZXQoY29ubmVjdG9yLCAmc3Rh dGUtPmJhc2UpOwoKUGxlYXNlIHJlYmFzZSBvbnRvIGRybS1taXNjIG9yIGxpbnV4LW5leHQsIEkn dmUgcmVtb3ZlZCB0aGUgY29ubmVjdG9yCmFyZ3VtZW50IGZyb20gX19kcm1fYXRvbWljX2hlbHBl cl9jb25uZWN0b3JfZGVzdHJveV9zdGF0ZSgpLiBJJ2xsIHNlbmQgdGhlCnB1bGwgcmVxdWVzdCBm b3IgdGhhdCBsYXRlciB0b2RheSB0byBEYXZlLgoKPiAgfQo+ICAKPiAgc3RhdGljIHN0cnVjdCBk cm1fY29ubmVjdG9yX3N0YXRlICoKPiBAQCAtNzY0LDYgKzc2OSw5IEBAIHRlZ3JhX2RzaV9jb25u ZWN0b3JfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4g IAlpZiAoIWNvcHkpCj4gIAkJcmV0dXJuIE5VTEw7Cj4gIAo+ICsJaWYgKGNvcHktPmJhc2UuY3J0 YykKPiArCQlkcm1fY29ubmVjdG9yX3JlZmVyZW5jZShjb25uZWN0b3IpOwo+ICsKClBsZWFzZSB1 c2UgX19kcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZHVwbGljYXRlX3N0YXRlIGluc3RlYWQg b2YKb3Blbi1jb2RpbmcgaXQuCgpDaGVlcnMsIERhbmllbAoKPiAgCXJldHVybiAmY29weS0+YmFz ZTsKPiAgfQo+ICAKPiAtLSAKPiAyLjEuNAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5n aW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=