From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751149AbdAWJLG (ORCPT ); Mon, 23 Jan 2017 04:11:06 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:35442 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751061AbdAWJLE (ORCPT ); Mon, 23 Jan 2017 04:11:04 -0500 Date: Mon, 23 Jan 2017 10:10:50 +0100 From: Daniel Vetter To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, thomas.petazzoni@free-electrons.com, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/9] drm: debugfs: Remove all files automatically on cleanup Message-ID: <20170123091050.rk5xzdkn4ro2tuws@phenom.ffwll.local> Mail-Followup-To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, thomas.petazzoni@free-electrons.com, linux-kernel@vger.kernel.org References: <20170122181117.8210-1-noralf@tronnes.org> <20170122181117.8210-3-noralf@tronnes.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20170122181117.8210-3-noralf@tronnes.org> X-Operating-System: Linux phenom 4.8.0-1-amd64 User-Agent: NeoMutt/20161126 (1.7.1) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Jan 22, 2017 at 07:11:10PM +0100, Noralf Trønnes wrote: > Instead of having the drivers call drm_debugfs_remove_files() in > their drm_driver->debugfs_cleanup hook, do it automatically by > traversing minor->debugfs_list. > Also use debugfs_remove_recursive() so drivers who add their own > debugfs files don't have to keep track of them for removal. > > Signed-off-by: Noralf Trønnes Makes sense, but that leaves us with a pile of dead code in drivers? Can you pls go through them and remove this all (including the debugfs_cleanup hook), and then removing the remaining (now dead) code in the core? Thanks, Daniel > --- > drivers/gpu/drm/drm_debugfs.c | 17 +++++++++++++++-- > 1 file changed, 15 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c > index 37fd612..0510ce2 100644 > --- a/drivers/gpu/drm/drm_debugfs.c > +++ b/drivers/gpu/drm/drm_debugfs.c > @@ -218,6 +218,19 @@ int drm_debugfs_remove_files(const struct drm_info_list *files, int count, > } > EXPORT_SYMBOL(drm_debugfs_remove_files); > > +static void drm_debugfs_remove_all_files(struct drm_minor *minor) > +{ > + struct drm_info_node *node, *tmp; > + > + mutex_lock(&minor->debugfs_lock); > + list_for_each_entry_safe(node, tmp, &minor->debugfs_list, list) { > + debugfs_remove(node->dent); > + list_del(&node->list); > + kfree(node); > + } > + mutex_unlock(&minor->debugfs_lock); > +} > + > /** > * Cleanup the debugfs filesystem resources. > * > @@ -245,9 +258,9 @@ int drm_debugfs_cleanup(struct drm_minor *minor) > } > } > > - drm_debugfs_remove_files(drm_debugfs_list, DRM_DEBUGFS_ENTRIES, minor); > + drm_debugfs_remove_all_files(minor); > > - debugfs_remove(minor->debugfs_root); > + debugfs_remove_recursive(minor->debugfs_root); > minor->debugfs_root = NULL; > > return 0; > -- > 2.10.2 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 2/9] drm: debugfs: Remove all files automatically on cleanup Date: Mon, 23 Jan 2017 10:10:50 +0100 Message-ID: <20170123091050.rk5xzdkn4ro2tuws@phenom.ffwll.local> References: <20170122181117.8210-1-noralf@tronnes.org> <20170122181117.8210-3-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20170122181117.8210-3-noralf@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: thomas.petazzoni@free-electrons.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: devicetree@vger.kernel.org T24gU3VuLCBKYW4gMjIsIDIwMTcgYXQgMDc6MTE6MTBQTSArMDEwMCwgTm9yYWxmIFRyw7hubmVz IHdyb3RlOgo+IEluc3RlYWQgb2YgaGF2aW5nIHRoZSBkcml2ZXJzIGNhbGwgZHJtX2RlYnVnZnNf cmVtb3ZlX2ZpbGVzKCkgaW4KPiB0aGVpciBkcm1fZHJpdmVyLT5kZWJ1Z2ZzX2NsZWFudXAgaG9v aywgZG8gaXQgYXV0b21hdGljYWxseSBieQo+IHRyYXZlcnNpbmcgbWlub3ItPmRlYnVnZnNfbGlz dC4KPiBBbHNvIHVzZSBkZWJ1Z2ZzX3JlbW92ZV9yZWN1cnNpdmUoKSBzbyBkcml2ZXJzIHdobyBh ZGQgdGhlaXIgb3duCj4gZGVidWdmcyBmaWxlcyBkb24ndCBoYXZlIHRvIGtlZXAgdHJhY2sgb2Yg dGhlbSBmb3IgcmVtb3ZhbC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMgPG5v cmFsZkB0cm9ubmVzLm9yZz4KCk1ha2VzIHNlbnNlLCBidXQgdGhhdCBsZWF2ZXMgdXMgd2l0aCBh IHBpbGUgb2YgZGVhZCBjb2RlIGluIGRyaXZlcnM/IENhbgp5b3UgcGxzIGdvIHRocm91Z2ggdGhl bSBhbmQgcmVtb3ZlIHRoaXMgYWxsIChpbmNsdWRpbmcgdGhlIGRlYnVnZnNfY2xlYW51cApob29r KSwgYW5kIHRoZW4gcmVtb3ZpbmcgdGhlIHJlbWFpbmluZyAobm93IGRlYWQpIGNvZGUgaW4gdGhl IGNvcmU/CgpUaGFua3MsIERhbmllbAo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2RlYnVn ZnMuYyB8IDE3ICsrKysrKysrKysrKysrKy0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v ZHJtX2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZGVidWdmcy5jCj4gaW5kZXggMzdm ZDYxMi4uMDUxMGNlMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RlYnVnZnMu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZGVidWdmcy5jCj4gQEAgLTIxOCw2ICsyMTgs MTkgQEAgaW50IGRybV9kZWJ1Z2ZzX3JlbW92ZV9maWxlcyhjb25zdCBzdHJ1Y3QgZHJtX2luZm9f bGlzdCAqZmlsZXMsIGludCBjb3VudCwKPiAgfQo+ICBFWFBPUlRfU1lNQk9MKGRybV9kZWJ1Z2Zz X3JlbW92ZV9maWxlcyk7Cj4gIAo+ICtzdGF0aWMgdm9pZCBkcm1fZGVidWdmc19yZW1vdmVfYWxs X2ZpbGVzKHN0cnVjdCBkcm1fbWlub3IgKm1pbm9yKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2luZm9f bm9kZSAqbm9kZSwgKnRtcDsKPiArCj4gKwltdXRleF9sb2NrKCZtaW5vci0+ZGVidWdmc19sb2Nr KTsKPiArCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShub2RlLCB0bXAsICZtaW5vci0+ZGVidWdm c19saXN0LCBsaXN0KSB7Cj4gKwkJZGVidWdmc19yZW1vdmUobm9kZS0+ZGVudCk7Cj4gKwkJbGlz dF9kZWwoJm5vZGUtPmxpc3QpOwo+ICsJCWtmcmVlKG5vZGUpOwo+ICsJfQo+ICsJbXV0ZXhfdW5s b2NrKCZtaW5vci0+ZGVidWdmc19sb2NrKTsKPiArfQo+ICsKPiAgLyoqCj4gICAqIENsZWFudXAg dGhlIGRlYnVnZnMgZmlsZXN5c3RlbSByZXNvdXJjZXMuCj4gICAqCj4gQEAgLTI0NSw5ICsyNTgs OSBAQCBpbnQgZHJtX2RlYnVnZnNfY2xlYW51cChzdHJ1Y3QgZHJtX21pbm9yICptaW5vcikKPiAg CQl9Cj4gIAl9Cj4gIAo+IC0JZHJtX2RlYnVnZnNfcmVtb3ZlX2ZpbGVzKGRybV9kZWJ1Z2ZzX2xp c3QsIERSTV9ERUJVR0ZTX0VOVFJJRVMsIG1pbm9yKTsKPiArCWRybV9kZWJ1Z2ZzX3JlbW92ZV9h bGxfZmlsZXMobWlub3IpOwo+ICAKPiAtCWRlYnVnZnNfcmVtb3ZlKG1pbm9yLT5kZWJ1Z2ZzX3Jv b3QpOwo+ICsJZGVidWdmc19yZW1vdmVfcmVjdXJzaXZlKG1pbm9yLT5kZWJ1Z2ZzX3Jvb3QpOwo+ ICAJbWlub3ItPmRlYnVnZnNfcm9vdCA9IE5VTEw7Cj4gIAo+ICAJcmV0dXJuIDA7Cj4gLS0gCj4g Mi4xMC4yCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KPiBkcmktZGV2ZWwgbWFpbGluZyBsaXN0Cj4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9y YXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==