From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH] android: fix warning when releasing active sync point Date: Tue, 15 Dec 2015 11:01:05 +0100 Message-ID: <566FE4E1.2040005@linux.intel.com> References: <20151215012955.GA28277@dtor-ws> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 378CE6E0DD for ; Tue, 15 Dec 2015 02:01:09 -0800 (PST) In-Reply-To: <20151215012955.GA28277@dtor-ws> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Dmitry Torokhov , Greg Kroah-Hartman Cc: devel@driverdev.osuosl.org, Andrew Bresticker , =?UTF-8?B?QXJ2ZSBIasO4bm5ldsOl?= =?UTF-8?Q?g?= , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Riley Andrews , linux-media@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T3AgMTUtMTItMTUgb20gMDI6Mjkgc2NocmVlZiBEbWl0cnkgVG9yb2tob3Y6Cj4gVXNlcnNwYWNl IGNhbiBjbG9zZSB0aGUgc3luYyBkZXZpY2Ugd2hpbGUgdGhlcmUgYXJlIHN0aWxsIGFjdGl2ZSBm ZW5jZQo+IHBvaW50cywgaW4gd2hpY2ggY2FzZSBrZXJuZWwgcHJvZHVjZXMgdGhlIGZvbGxvd2lu ZyB3YXJuaW5nOgo+Cj4gWyAgIDQzLjg1MzE3Nl0gLS0tLS0tLS0tLS0tWyBjdXQgaGVyZSBdLS0t LS0tLS0tLS0tCj4gWyAgIDQzLjg1NzgzNF0gV0FSTklORzogQ1BVOiAwIFBJRDogODkyIGF0IC9t bnQvaG9zdC9zb3VyY2Uvc3JjL3RoaXJkX3BhcnR5L2tlcm5lbC92My4xOC9kcml2ZXJzL3N0YWdp bmcvYW5kcm9pZC9zeW5jLmM6NDM5IGFuZHJvaWRfZmVuY2VfcmVsZWFzZSsweDg4LzB4MTA0KCkK PiBbICAgNDMuODcxNzQxXSBDUFU6IDAgUElEOiA4OTIgQ29tbTogQmluZGVyXzUgVGFpbnRlZDog RyAgICAgVSAzLjE4LjAtMDc2NjEtZzA1NTBjZTkgIzEKPiBbICAgNDMuODgwMTc2XSBIYXJkd2Fy ZSBuYW1lOiBHb29nbGUgVGVncmEyMTAgU21hdWcgUmV2IDErIChEVCkKPiBbICAgNDMuODg1ODM0 XSBDYWxsIHRyYWNlOgo+IFsgICA0My44ODgyOTRdIFs8ZmZmZmZmYzAwMDIwNzQ2ND5dIGR1bXBf YmFja3RyYWNlKzB4MC8weDEwYwo+IFsgICA0My44OTM2OTddIFs8ZmZmZmZmYzAwMDIwNzU4MD5d IHNob3dfc3RhY2srMHgxMC8weDFjCj4gWyAgIDQzLjg5ODc1Nl0gWzxmZmZmZmZjMDAwYWIxMjU4 Pl0gZHVtcF9zdGFjaysweDc0LzB4YjgKPiBbICAgNDMuOTAzODE0XSBbPGZmZmZmZmMwMDAyMWQ0 MTQ+XSB3YXJuX3Nsb3dwYXRoX2NvbW1vbisweDg0LzB4YjAKPiBbICAgNDMuOTA5NzM2XSBbPGZm ZmZmZmMwMDAyMWQ1MzA+XSB3YXJuX3Nsb3dwYXRoX251bGwrMHgxNC8weDIwCj4gWyAgIDQzLjkx NTQ4Ml0gWzxmZmZmZmZjMDAwODhhZWZjPl0gYW5kcm9pZF9mZW5jZV9yZWxlYXNlKzB4ODQvMHgx MDQKPiBbICAgNDMuOTIxNTgyXSBbPGZmZmZmZmMwMDA2NzFjYzQ+XSBmZW5jZV9yZWxlYXNlKzB4 MTA0LzB4MTM0Cj4gWyAgIDQzLjkyNzA2Nl0gWzxmZmZmZmZjMDAwODhiMGNjPl0gc3luY19mZW5j ZV9mcmVlKzB4NzQvMHg5Ywo+IFsgICA0My45MzI1NTJdIFs8ZmZmZmZmYzAwMDg4YjEyOD5dIHN5 bmNfZmVuY2VfcmVsZWFzZSsweDM0LzB4NDgKPiBbICAgNDMuOTM4MzA0XSBbPGZmZmZmZmMwMDAz MTdiYmM+XSBfX2ZwdXQrMHgxMDAvMHgxYjgKPiBbICAgNDMuOTQzMTg1XSBbPGZmZmZmZmMwMDAz MTdjYzg+XSBfX19fZnB1dCsweDgvMHgxNAo+IFsgICA0My45NDc5ODJdIFs8ZmZmZmZmYzAwMDIz N2YzOD5dIHRhc2tfd29ya19ydW4rMHhiMC8weGU0Cj4gWyAgIDQzLjk1MzI5N10gWzxmZmZmZmZj MDAwMjA3MDc0Pl0gZG9fbm90aWZ5X3Jlc3VtZSsweDQ0LzB4NWMKPiBbICAgNDMuOTU4ODY3XSAt LS1bIGVuZCB0cmFjZSA1YTJhYTQwMjdjYzVkMTcxIF0tLS0KPgo+IExldCdzIGZpeCBpdCBieSBp bnRyb2R1Y2luZyBhIG5ldyBvcHRpb25hbCBjYWxsYmFjayAoZGlzYWJsZV9zaWduYWxpbmcpCj4g dG8gZmVuY2Ugb3BlcmF0aW9ucyBzbyB0aGF0IGRyaXZlcnMgY2FuIGRvIHByb3BlciBjbGVhbiB1 cHMgd2hlbiB3ZQo+IHJlbW92ZSBsYXN0IGNhbGxiYWNrIGZvciBnaXZlbiBmZW5jZS4KPgo+IFJl dmlld2VkLWJ5OiBBbmRyZXcgQnJlc3RpY2tlciA8YWJyZXN0aWNAY2hyb21pdW0ub3JnPgo+IFNp Z25lZC1vZmYtYnk6IERtaXRyeSBUb3Jva2hvdiA8ZHRvckBjaHJvbWl1bS5vcmc+Cj4KTkFDSyEg VGhlcmUncyBubyB3YXkgdG8gZG8gdGhpcyByYWNlIGZyZWUuClRoZSBkcml2ZXIgc2hvdWxkIGhv bGQgYSByZWZjb3VudCB1bnRpbCBmZW5jZSBpcyBzaWduYWxlZC4KX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mga14.intel.com ([192.55.52.115]:6367 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933277AbbLOKBJ (ORCPT ); Tue, 15 Dec 2015 05:01:09 -0500 Subject: Re: [PATCH] android: fix warning when releasing active sync point To: Dmitry Torokhov , Greg Kroah-Hartman References: <20151215012955.GA28277@dtor-ws> Cc: Sumit Semwal , =?UTF-8?B?QXJ2ZSBIasO4bm5ldsOl?= =?UTF-8?Q?g?= , Riley Andrews , Andrew Bresticker , linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org From: Maarten Lankhorst Message-ID: <566FE4E1.2040005@linux.intel.com> Date: Tue, 15 Dec 2015 11:01:05 +0100 MIME-Version: 1.0 In-Reply-To: <20151215012955.GA28277@dtor-ws> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-media-owner@vger.kernel.org List-ID: Op 15-12-15 om 02:29 schreef Dmitry Torokhov: > Userspace can close the sync device while there are still active fence > points, in which case kernel produces the following warning: > > [ 43.853176] ------------[ cut here ]------------ > [ 43.857834] WARNING: CPU: 0 PID: 892 at /mnt/host/source/src/third_party/kernel/v3.18/drivers/staging/android/sync.c:439 android_fence_release+0x88/0x104() > [ 43.871741] CPU: 0 PID: 892 Comm: Binder_5 Tainted: G U 3.18.0-07661-g0550ce9 #1 > [ 43.880176] Hardware name: Google Tegra210 Smaug Rev 1+ (DT) > [ 43.885834] Call trace: > [ 43.888294] [] dump_backtrace+0x0/0x10c > [ 43.893697] [] show_stack+0x10/0x1c > [ 43.898756] [] dump_stack+0x74/0xb8 > [ 43.903814] [] warn_slowpath_common+0x84/0xb0 > [ 43.909736] [] warn_slowpath_null+0x14/0x20 > [ 43.915482] [] android_fence_release+0x84/0x104 > [ 43.921582] [] fence_release+0x104/0x134 > [ 43.927066] [] sync_fence_free+0x74/0x9c > [ 43.932552] [] sync_fence_release+0x34/0x48 > [ 43.938304] [] __fput+0x100/0x1b8 > [ 43.943185] [] ____fput+0x8/0x14 > [ 43.947982] [] task_work_run+0xb0/0xe4 > [ 43.953297] [] do_notify_resume+0x44/0x5c > [ 43.958867] ---[ end trace 5a2aa4027cc5d171 ]--- > > Let's fix it by introducing a new optional callback (disable_signaling) > to fence operations so that drivers can do proper clean ups when we > remove last callback for given fence. > > Reviewed-by: Andrew Bresticker > Signed-off-by: Dmitry Torokhov > NACK! There's no way to do this race free. The driver should hold a refcount until fence is signaled.