From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gustavo Padovan Subject: Re: [PATCH 2/7] staging/android: display sync_pt name on debugfs Date: Tue, 9 Aug 2016 11:45:43 -0300 Message-ID: <20160809144543.GC2478@joana> References: <1466437993-21573-1-git-send-email-gustavo@padovan.org> <1466437993-21573-3-git-send-email-gustavo@padovan.org> <20160808195918.GO2484@joana> <93e2abc0-e3a6-a722-bb2a-d3e0f88abb2b@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-yw0-f194.google.com (mail-yw0-f194.google.com [209.85.161.194]) by gabe.freedesktop.org (Postfix) with ESMTPS id B94DE899F3 for ; Tue, 9 Aug 2016 14:45:48 +0000 (UTC) Received: by mail-yw0-f194.google.com with SMTP id z8so602746ywa.0 for ; Tue, 09 Aug 2016 07:45:48 -0700 (PDT) Content-Disposition: inline In-Reply-To: <93e2abc0-e3a6-a722-bb2a-d3e0f88abb2b@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Maarten Lankhorst Cc: devel@driverdev.osuosl.org, Daniel Stone , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Gustavo Padovan , Arve =?iso-8859-1?B?SGr4bm5lduVn?= , Daniel Vetter , Riley Andrews , Gustavo Padovan , John Harrison List-Id: dri-devel@lists.freedesktop.org MjAxNi0wOC0wOSBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50 ZWwuY29tPjoKCj4gT3AgMDgtMDgtMTYgb20gMjE6NTkgc2NocmVlZiBHdXN0YXZvIFBhZG92YW46 Cj4gPiAyMDE2LTA4LTA4IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51 eC5pbnRlbC5jb20+Ogo+ID4KPiA+PiBPcCAyMC0wNi0xNiBvbSAxNzo1MyBzY2hyZWVmIEd1c3Rh dm8gUGFkb3ZhbjoKPiA+Pj4gRnJvbTogR3VzdGF2byBQYWRvdmFuIDxndXN0YXZvLnBhZG92YW5A Y29sbGFib3JhLmNvLnVrPgo+ID4+Pgo+ID4+PiBXaGVuIGNyZWF0aW5nIGEgc3luY19wdCB0aGUg bmFtZSByZWNlaXZlZCB3YXNuJ3QgdXNlZCBhbnl3aGVyZS4KPiA+Pj4gTm93IHdlIGFkZCBpdCB0 byB0aGUgc3luYyBpbmZvIGRlYnVnIG91dHB1dCB0byBtYWtlIGl0IGVhc2llciB0byBpbmRldGlm eQo+ID4+PiB0aGUgdXNlcnNwYWNlIG5hbWUgb2YgdGhhdCBzeW5jIHB0Lgo+ID4+Pgo+ID4+PiBT aWduZWQtb2ZmLWJ5OiBHdXN0YXZvIFBhZG92YW4gPGd1c3Rhdm8ucGFkb3ZhbkBjb2xsYWJvcmEu Y28udWs+Cj4gPj4+IC0tLQo+ID4+PiAgZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQvc3dfc3luYy5j ICAgIHwgMTYgKysrKy0tLS0tLS0tLS0tLQo+ID4+PiAgZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQv c3luY19kZWJ1Zy5jIHwgIDUgKysrLS0KPiA+Pj4gIGRyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3N5 bmNfZGVidWcuaCB8ICA5ICsrKysrKysrKwo+ID4+PiAgMyBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNl cnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKPiA+Pj4KPiA+Pj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvc3RhZ2luZy9hbmRyb2lkL3N3X3N5bmMuYyBiL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3N3 X3N5bmMuYwo+ID4+PiBpbmRleCBiNGFlMDkyLi5lYTI3NTEyIDEwMDY0NAo+ID4+PiAtLS0gYS9k cml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zd19zeW5jLmMKPiA+Pj4gKysrIGIvZHJpdmVycy9zdGFn aW5nL2FuZHJvaWQvc3dfc3luYy5jCj4gPj4+IEBAIC0zNywxNSArMzcsNiBAQCBzdHJ1Y3Qgc3df c3luY19jcmVhdGVfZmVuY2VfZGF0YSB7Cj4gPj4+ICAJCXN0cnVjdCBzd19zeW5jX2NyZWF0ZV9m ZW5jZV9kYXRhKQo+ID4+PiAgI2RlZmluZSBTV19TWU5DX0lPQ19JTkMJCQlfSU9XKFNXX1NZTkNf SU9DX01BR0lDLCAxLCBfX3UzMikKPiA+Pj4gIAo+ID4+PiAtc3RhdGljIGNvbnN0IHN0cnVjdCBm ZW5jZV9vcHMgdGltZWxpbmVfZmVuY2Vfb3BzOwo+ID4+PiAtCj4gPj4+IC1zdGF0aWMgaW5saW5l IHN0cnVjdCBzeW5jX3B0ICpmZW5jZV90b19zeW5jX3B0KHN0cnVjdCBmZW5jZSAqZmVuY2UpCj4g Pj4+IC17Cj4gPj4+IC0JaWYgKGZlbmNlLT5vcHMgIT0gJnRpbWVsaW5lX2ZlbmNlX29wcykKPiA+ Pj4gLQkJcmV0dXJuIE5VTEw7Cj4gPj4+IC0JcmV0dXJuIGNvbnRhaW5lcl9vZihmZW5jZSwgc3Ry dWN0IHN5bmNfcHQsIGJhc2UpOwo+ID4+PiAtfQo+ID4+PiAtCj4gPj4+ICBzdHJ1Y3Qgc3luY190 aW1lbGluZSAqc3luY190aW1lbGluZV9jcmVhdGUoY29uc3QgY2hhciAqbmFtZSkKPiA+Pj4gIHsK PiA+Pj4gIAlzdHJ1Y3Qgc3luY190aW1lbGluZSAqb2JqOwo+ID4+PiBAQCAtMTA4LDcgKzk5LDcg QEAgc3RhdGljIHZvaWQgc3luY190aW1lbGluZV9zaWduYWwoc3RydWN0IHN5bmNfdGltZWxpbmUg Km9iaiwgdW5zaWduZWQgaW50IGluYykKPiA+Pj4gIH0KPiA+Pj4gIAo+ID4+PiAgc3RhdGljIHN0 cnVjdCBzeW5jX3B0ICpzeW5jX3B0X2NyZWF0ZShzdHJ1Y3Qgc3luY190aW1lbGluZSAqb2JqLCBp bnQgc2l6ZSwKPiA+Pj4gLQkJCSAgICAgdW5zaWduZWQgaW50IHZhbHVlKQo+ID4+PiArCQkJICAg ICB1bnNpZ25lZCBpbnQgdmFsdWUsIGNoYXIgKm5hbWUpCj4gPj4+ICB7Cj4gPj4+ICAJdW5zaWdu ZWQgbG9uZyBmbGFnczsKPiA+Pj4gIAlzdHJ1Y3Qgc3luY19wdCAqcHQ7Cj4gPj4+IEBAIC0xMjAs NiArMTExLDcgQEAgc3RhdGljIHN0cnVjdCBzeW5jX3B0ICpzeW5jX3B0X2NyZWF0ZShzdHJ1Y3Qg c3luY190aW1lbGluZSAqb2JqLCBpbnQgc2l6ZSwKPiA+Pj4gIAlpZiAoIXB0KQo+ID4+PiAgCQly ZXR1cm4gTlVMTDsKPiA+Pj4gIAo+ID4+PiArCXN0cmxjcHkocHQtPm5hbWUsIG5hbWUsIHNpemVv ZihwdC0+bmFtZSkpOwo+ID4+PiAgCXNwaW5fbG9ja19pcnFzYXZlKCZvYmotPmNoaWxkX2xpc3Rf bG9jaywgZmxhZ3MpOwo+ID4+PiAgCXN5bmNfdGltZWxpbmVfZ2V0KG9iaik7Cj4gPj4+ICAJZmVu Y2VfaW5pdCgmcHQtPmJhc2UsICZ0aW1lbGluZV9mZW5jZV9vcHMsICZvYmotPmNoaWxkX2xpc3Rf bG9jaywKPiA+Pj4gQEAgLTE5MSw3ICsxODMsNyBAQCBzdGF0aWMgdm9pZCB0aW1lbGluZV9mZW5j ZV90aW1lbGluZV92YWx1ZV9zdHIoc3RydWN0IGZlbmNlICpmZW5jZSwKPiA+Pj4gIAlzbnByaW50 ZihzdHIsIHNpemUsICIlZCIsIHBhcmVudC0+dmFsdWUpOwo+ID4+PiAgfQo+ID4+PiAgCj4gPj4+ IC1zdGF0aWMgY29uc3Qgc3RydWN0IGZlbmNlX29wcyB0aW1lbGluZV9mZW5jZV9vcHMgPSB7Cj4g Pj4+ICtjb25zdCBzdHJ1Y3QgZmVuY2Vfb3BzIHRpbWVsaW5lX2ZlbmNlX29wcyA9IHsKPiA+Pj4g IAkuZ2V0X2RyaXZlcl9uYW1lID0gdGltZWxpbmVfZmVuY2VfZ2V0X2RyaXZlcl9uYW1lLAo+ID4+ PiAgCS5nZXRfdGltZWxpbmVfbmFtZSA9IHRpbWVsaW5lX2ZlbmNlX2dldF90aW1lbGluZV9uYW1l LAo+ID4+PiAgCS5lbmFibGVfc2lnbmFsaW5nID0gdGltZWxpbmVfZmVuY2VfZW5hYmxlX3NpZ25h bGluZywKPiA+Pj4gQEAgLTI1Miw3ICsyNDQsNyBAQCBzdGF0aWMgbG9uZyBzd19zeW5jX2lvY3Rs X2NyZWF0ZV9mZW5jZShzdHJ1Y3Qgc3luY190aW1lbGluZSAqb2JqLAo+ID4+PiAgCQlnb3RvIGVy cjsKPiA+Pj4gIAl9Cj4gPj4+ICAKPiA+Pj4gLQlwdCA9IHN5bmNfcHRfY3JlYXRlKG9iaiwgc2l6 ZW9mKCpwdCksIGRhdGEudmFsdWUpOwo+ID4+PiArCXB0ID0gc3luY19wdF9jcmVhdGUob2JqLCBz aXplb2YoKnB0KSwgZGF0YS52YWx1ZSwgZGF0YS5uYW1lKTsKPiA+Pj4gIAlpZiAoIXB0KSB7Cj4g Pj4+ICAJCWVyciA9IC1FTk9NRU07Cj4gPj4+ICAJCWdvdG8gZXJyOwo+ID4+PiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQvc3luY19kZWJ1Zy5jIGIvZHJpdmVycy9zdGFnaW5n L2FuZHJvaWQvc3luY19kZWJ1Zy5jCj4gPj4+IGluZGV4IDRjNWE4NTUuLmI3MzJlYTMgMTAwNjQ0 Cj4gPj4+IC0tLSBhL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3N5bmNfZGVidWcuYwo+ID4+PiAr KysgYi9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zeW5jX2RlYnVnLmMKPiA+Pj4gQEAgLTc1LDEz ICs3NSwxNCBAQCBzdGF0aWMgdm9pZCBzeW5jX3ByaW50X2ZlbmNlKHN0cnVjdCBzZXFfZmlsZSAq cywgc3RydWN0IGZlbmNlICpmZW5jZSwgYm9vbCBzaG93KQo+ID4+PiAgewo+ID4+PiAgCWludCBz dGF0dXMgPSAxOwo+ID4+PiAgCXN0cnVjdCBzeW5jX3RpbWVsaW5lICpwYXJlbnQgPSBmZW5jZV9w YXJlbnQoZmVuY2UpOwo+ID4+PiArCXN0cnVjdCBzeW5jX3B0ICpwdCA9IGZlbmNlX3RvX3N5bmNf cHQoZmVuY2UpOwo+ID4+PiAgCj4gPj4+ICAJaWYgKGZlbmNlX2lzX3NpZ25hbGVkX2xvY2tlZChm ZW5jZSkpCj4gPj4+ICAJCXN0YXR1cyA9IGZlbmNlLT5zdGF0dXM7Cj4gPj4+ICAKPiA+Pj4gLQlz ZXFfcHJpbnRmKHMsICIgICVzJXNmZW5jZSAlcyIsCj4gPj4+ICsJc2VxX3ByaW50ZihzLCAiICAl cyVzZmVuY2UgJXMgJXMiLAo+ID4+PiAgCQkgICBzaG93ID8gcGFyZW50LT5uYW1lIDogIiIsCj4g Pj4+IC0JCSAgIHNob3cgPyAiXyIgOiAiIiwKPiA+Pj4gKwkJICAgc2hvdyA/ICJfIiA6ICIiLCBw dC0+bmFtZSwKPiA+Pj4gIAkJICAgc3luY19zdGF0dXNfc3RyKHN0YXR1cykpOwo+ID4+PiAgCj4g Pj4gTkFLLAo+ID4+IEEgZmVuY2UgaW4gc3luY19wcmludF9mZW5jZSBjYW4gYmUgb2YgYW55IHR5 cGUuIElmIHlvdSB3YW50IHRvIHByaW50IHRoZSBuYW1lLCB1c2UgdGhlIGZlbmNlX3ZhbHVlX3N0 ciBjYWxsYmFjay4KPiA+IEluZGVlZC4gQnV0IGZlbmNlX3ZhbHVlX3N0ciBkb2Vzbid0IHJldHVy biB0aGUgc3luY19wdCBuYW1lLCBidXQgdGhlCj4gPiBzZXFubyBvZiB0aGF0IGZlbmNlLiBJJ2xs IGtlZXAgdGhpcyBjaGFuZ2Ugb3V0IGZvciB0aGUgZGUtc3RhZ2luZyBhbmQKPiA+IHRoZW4gdHJ5 IHRvIGNvbWUgd2l0aCBzb21ldGhpbmcgdGhhdCB3b3JrcyBiZXR0ZXIuCj4gPgo+ID4gCUd1c3Rh dm8KPiAKPiBUaGlzIHdpbGwgcHJvYmFibHkgY2F1c2UgYSBrZXJuZWwgcGFuaWMgaWYgeW91IGtl ZXAgaXQgbGlrZSBpdCBpcyBhbmQgeW91IGxvb2sgYXQKPiBkZWJ1Z2ZzIGZvciBub24gc3luY19w dCBmZW5jZXMsIGl0IHNob3VsZCBkZWZpbml0ZWx5IGJlIGZpeGVkIGJlZm9yZSBkZXN0YWdpbmcu Cj4gSWdub3Jpbmcgc3luY19wdCBuYW1lIHdvdWxkIGJlIGJldHRlciB0aGFuIGNyYXNoaW5nLgoK Tm8sIEkgbWVhbnQgaWdub3Jpbmcgc3luY19wdCBuYW1lIGZvciBub3cuIEkndmUgYWxyZWFkeSBz ZW50IHYyIHdpdGhvdXQKaXQuCgpHdXN0YXZvCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932614AbcHIOpu (ORCPT ); Tue, 9 Aug 2016 10:45:50 -0400 Received: from mail-yw0-f193.google.com ([209.85.161.193]:36705 "EHLO mail-yw0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932454AbcHIOps (ORCPT ); Tue, 9 Aug 2016 10:45:48 -0400 Date: Tue, 9 Aug 2016 11:45:43 -0300 From: Gustavo Padovan To: Maarten Lankhorst Cc: Gustavo Padovan , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, dri-devel@lists.freedesktop.org, Daniel Stone , Arve =?iso-8859-1?B?SGr4bm5lduVn?= , Riley Andrews , Daniel Vetter , Rob Clark , Greg Hackmann , John Harrison , Sumit Semwal , Gustavo Padovan Subject: Re: [PATCH 2/7] staging/android: display sync_pt name on debugfs Message-ID: <20160809144543.GC2478@joana> Mail-Followup-To: Gustavo Padovan , Maarten Lankhorst , Gustavo Padovan , Greg Kroah-Hartman , linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, dri-devel@lists.freedesktop.org, Daniel Stone , Arve =?iso-8859-1?B?SGr4bm5lduVn?= , Riley Andrews , Daniel Vetter , Rob Clark , Greg Hackmann , John Harrison , Sumit Semwal , Gustavo Padovan References: <1466437993-21573-1-git-send-email-gustavo@padovan.org> <1466437993-21573-3-git-send-email-gustavo@padovan.org> <20160808195918.GO2484@joana> <93e2abc0-e3a6-a722-bb2a-d3e0f88abb2b@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <93e2abc0-e3a6-a722-bb2a-d3e0f88abb2b@linux.intel.com> User-Agent: Mutt/1.6.2 (2016-07-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 2016-08-09 Maarten Lankhorst : > Op 08-08-16 om 21:59 schreef Gustavo Padovan: > > 2016-08-08 Maarten Lankhorst : > > > >> Op 20-06-16 om 17:53 schreef Gustavo Padovan: > >>> From: Gustavo Padovan > >>> > >>> When creating a sync_pt the name received wasn't used anywhere. > >>> Now we add it to the sync info debug output to make it easier to indetify > >>> the userspace name of that sync pt. > >>> > >>> Signed-off-by: Gustavo Padovan > >>> --- > >>> drivers/staging/android/sw_sync.c | 16 ++++------------ > >>> drivers/staging/android/sync_debug.c | 5 +++-- > >>> drivers/staging/android/sync_debug.h | 9 +++++++++ > >>> 3 files changed, 16 insertions(+), 14 deletions(-) > >>> > >>> diff --git a/drivers/staging/android/sw_sync.c b/drivers/staging/android/sw_sync.c > >>> index b4ae092..ea27512 100644 > >>> --- a/drivers/staging/android/sw_sync.c > >>> +++ b/drivers/staging/android/sw_sync.c > >>> @@ -37,15 +37,6 @@ struct sw_sync_create_fence_data { > >>> struct sw_sync_create_fence_data) > >>> #define SW_SYNC_IOC_INC _IOW(SW_SYNC_IOC_MAGIC, 1, __u32) > >>> > >>> -static const struct fence_ops timeline_fence_ops; > >>> - > >>> -static inline struct sync_pt *fence_to_sync_pt(struct fence *fence) > >>> -{ > >>> - if (fence->ops != &timeline_fence_ops) > >>> - return NULL; > >>> - return container_of(fence, struct sync_pt, base); > >>> -} > >>> - > >>> struct sync_timeline *sync_timeline_create(const char *name) > >>> { > >>> struct sync_timeline *obj; > >>> @@ -108,7 +99,7 @@ static void sync_timeline_signal(struct sync_timeline *obj, unsigned int inc) > >>> } > >>> > >>> static struct sync_pt *sync_pt_create(struct sync_timeline *obj, int size, > >>> - unsigned int value) > >>> + unsigned int value, char *name) > >>> { > >>> unsigned long flags; > >>> struct sync_pt *pt; > >>> @@ -120,6 +111,7 @@ static struct sync_pt *sync_pt_create(struct sync_timeline *obj, int size, > >>> if (!pt) > >>> return NULL; > >>> > >>> + strlcpy(pt->name, name, sizeof(pt->name)); > >>> spin_lock_irqsave(&obj->child_list_lock, flags); > >>> sync_timeline_get(obj); > >>> fence_init(&pt->base, &timeline_fence_ops, &obj->child_list_lock, > >>> @@ -191,7 +183,7 @@ static void timeline_fence_timeline_value_str(struct fence *fence, > >>> snprintf(str, size, "%d", parent->value); > >>> } > >>> > >>> -static const struct fence_ops timeline_fence_ops = { > >>> +const struct fence_ops timeline_fence_ops = { > >>> .get_driver_name = timeline_fence_get_driver_name, > >>> .get_timeline_name = timeline_fence_get_timeline_name, > >>> .enable_signaling = timeline_fence_enable_signaling, > >>> @@ -252,7 +244,7 @@ static long sw_sync_ioctl_create_fence(struct sync_timeline *obj, > >>> goto err; > >>> } > >>> > >>> - pt = sync_pt_create(obj, sizeof(*pt), data.value); > >>> + pt = sync_pt_create(obj, sizeof(*pt), data.value, data.name); > >>> if (!pt) { > >>> err = -ENOMEM; > >>> goto err; > >>> diff --git a/drivers/staging/android/sync_debug.c b/drivers/staging/android/sync_debug.c > >>> index 4c5a855..b732ea3 100644 > >>> --- a/drivers/staging/android/sync_debug.c > >>> +++ b/drivers/staging/android/sync_debug.c > >>> @@ -75,13 +75,14 @@ static void sync_print_fence(struct seq_file *s, struct fence *fence, bool show) > >>> { > >>> int status = 1; > >>> struct sync_timeline *parent = fence_parent(fence); > >>> + struct sync_pt *pt = fence_to_sync_pt(fence); > >>> > >>> if (fence_is_signaled_locked(fence)) > >>> status = fence->status; > >>> > >>> - seq_printf(s, " %s%sfence %s", > >>> + seq_printf(s, " %s%sfence %s %s", > >>> show ? parent->name : "", > >>> - show ? "_" : "", > >>> + show ? "_" : "", pt->name, > >>> sync_status_str(status)); > >>> > >> NAK, > >> A fence in sync_print_fence can be of any type. If you want to print the name, use the fence_value_str callback. > > Indeed. But fence_value_str doesn't return the sync_pt name, but the > > seqno of that fence. I'll keep this change out for the de-staging and > > then try to come with something that works better. > > > > Gustavo > > This will probably cause a kernel panic if you keep it like it is and you look at > debugfs for non sync_pt fences, it should definitely be fixed before destaging. > Ignoring sync_pt name would be better than crashing. No, I meant ignoring sync_pt name for now. I've already sent v2 without it. Gustavo