> -----Original Message----- > From: De Marchi, Lucas <lucas.demarchi@xxxxxxxxx> > Sent: Wednesday, December 6, 2023 11:33 PM > To: Saarinen, Jani <jani.saarinen@xxxxxxxxx> > Cc: Shankar, Uma <uma.shankar@xxxxxxxxx>; Borah, Chaitanya Kumar > <chaitanya.kumar.borah@xxxxxxxxx>; intel-gfx@xxxxxxxxxxxxxxxxxxxxx; Vivi, Rodrigo > <rodrigo.vivi@xxxxxxxxx> > Subject: Re: [topic/core-for-CI] Revert "debugfs: annotate debugfs > handlers vs. removal with lockdep" > > On Wed, Dec 06, 2023 at 07:41:04PM +0000, Jani Saarinen wrote: > >Hi, > >> -----Original Message----- > >> From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf > >> Of Shankar, Uma > >> Sent: Wednesday, December 6, 2023 1:05 PM > >> To: Borah, Chaitanya Kumar <chaitanya.kumar.borah@xxxxxxxxx>; intel- > >> gfx@xxxxxxxxxxxxxxxxxxxxx > >> Subject: Re: [topic/core-for-CI] Revert "debugfs: > >> annotate debugfs handlers vs. removal with lockdep" > >> > >> > >> > >> > -----Original Message----- > >> > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf > >> > Of Chaitanya Kumar Borah > >> > Sent: Wednesday, December 6, 2023 12:17 PM > >> > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > >> > Subject: [topic/core-for-CI] Revert "debugfs: annotate > >> > debugfs handlers vs. removal with lockdep" > >> > > >> > From: Johannes Berg <johannes.berg@xxxxxxxxx> > >> > > >> > This reverts commit f4acfcd4deb1 ("debugfs: annotate debugfs handlers vs. > >> > removal with lockdep"), it appears to have false positives and > >> > really shouldn't have been in the -rc series with the fixes anyway. > >> > >> Acked-by: Uma Shankar <uma.shankar@xxxxxxxxx> > >> > >> Hi Chaitanya, > >> Please get the full CI run executed with this change, once its green we can plan > merge. > >Just commented on "issues" (no real issues ) on BAT and asked to re-report but we > really should use sometimes by-pass shards when we see regression on this > magnitude. > >This has big impact on core/gem tests > >https://intel-gfx-ci.01.org/tree/drm-tip/index.html?testfilter=module%7 > >Cgem%7Ccore Even on module load. I am leaning to break process and not > >wait to Full CI if someone who has merge rights (eg @Vivi, Rodrigo, @De Marchi, > Lucas) agree here? > > I think this is the convincing link: > https://intel-gfx-ci.01.org/tree/drm- > tip/Patchwork_127359v2/index.html?testfilter=module%7Cgem%7Ccore > > Applied with ack on irc by Rodrigo. Thank you! > > Lucas De Marchi > > > > >Br, > >Jani > >> > >> Regards, > >> Uma Shankar > >> > >> > Link:https://patchwork.kernel.org/project/linux- > >> > fsdevel/patch/20231202114936.fd55431ab160.I911aa53abeeca138126f69 > >> > 0d383a89b13eb05667@changeid/ > >> > Reference: https://gitlab.freedesktop.org/drm/intel/-/issues/9802 > >> > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> > >> > Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > >> > --- > >> > fs/debugfs/file.c | 10 ---------- > >> > fs/debugfs/inode.c | 7 ------- > >> > fs/debugfs/internal.h | 6 ------ > >> > 3 files changed, 23 deletions(-) > >> > > >> > diff --git a/fs/debugfs/file.c b/fs/debugfs/file.c index > >> > a5ade8c16375..5063434be0fc 100644 > >> > --- a/fs/debugfs/file.c > >> > +++ b/fs/debugfs/file.c > >> > @@ -108,12 +108,6 @@ int debugfs_file_get(struct dentry *dentry) > >> > kfree(fsd); > >> > fsd = READ_ONCE(dentry->d_fsdata); > >> > } > >> > -#ifdef CONFIG_LOCKDEP > >> > - fsd->lock_name = kasprintf(GFP_KERNEL, "debugfs:%pd", > >> > dentry); > >> > - lockdep_register_key(&fsd->key); > >> > - lockdep_init_map(&fsd->lockdep_map, fsd->lock_name ?: > >> > "debugfs", > >> > - &fsd->key, 0); > >> > -#endif > >> > INIT_LIST_HEAD(&fsd->cancellations); > >> > mutex_init(&fsd->cancellations_mtx); > >> > } > >> > @@ -132,8 +126,6 @@ int debugfs_file_get(struct dentry *dentry) > >> > if (!refcount_inc_not_zero(&fsd->active_users)) > >> > return -EIO; > >> > > >> > - lock_map_acquire_read(&fsd->lockdep_map); > >> > - > >> > return 0; > >> > } > >> > EXPORT_SYMBOL_GPL(debugfs_file_get); > >> > @@ -151,8 +143,6 @@ void debugfs_file_put(struct dentry *dentry) { > >> > struct debugfs_fsdata *fsd = READ_ONCE(dentry->d_fsdata); > >> > > >> > - lock_map_release(&fsd->lockdep_map); > >> > - > >> > if (refcount_dec_and_test(&fsd->active_users)) > >> > complete(&fsd->active_users_drained); > >> > } > >> > diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c index > >> > e4e7fe1bd9fb..034a617cb1a5 100644 > >> > --- a/fs/debugfs/inode.c > >> > +++ b/fs/debugfs/inode.c > >> > @@ -243,10 +243,6 @@ static void debugfs_release_dentry(struct > >> > dentry > >> > *dentry) > >> > > >> > /* check it wasn't a dir (no fsdata) or automount (no real_fops) */ > >> > if (fsd && fsd->real_fops) { > >> > -#ifdef CONFIG_LOCKDEP > >> > - lockdep_unregister_key(&fsd->key); > >> > - kfree(fsd->lock_name); > >> > -#endif > >> > WARN_ON(!list_empty(&fsd->cancellations)); > >> > mutex_destroy(&fsd->cancellations_mtx); > >> > } > >> > @@ -755,9 +751,6 @@ static void __debugfs_file_removed(struct > >> > dentry > >> > *dentry) > >> > if ((unsigned long)fsd & DEBUGFS_FSDATA_IS_REAL_FOPS_BIT) > >> > return; > >> > > >> > - lock_map_acquire(&fsd->lockdep_map); > >> > - lock_map_release(&fsd->lockdep_map); > >> > - > >> > /* if we hit zero, just wait for all to finish */ > >> > if (!refcount_dec_and_test(&fsd->active_users)) { > >> > wait_for_completion(&fsd->active_users_drained); > >> > diff --git a/fs/debugfs/internal.h b/fs/debugfs/internal.h index > >> > 0c4c68cf161f..dae80c2a469e 100644 > >> > --- a/fs/debugfs/internal.h > >> > +++ b/fs/debugfs/internal.h > >> > @@ -7,7 +7,6 @@ > >> > > >> > #ifndef _DEBUGFS_INTERNAL_H_ > >> > #define _DEBUGFS_INTERNAL_H_ > >> > -#include <linux/lockdep.h> > >> > #include <linux/list.h> > >> > > >> > struct file_operations; > >> > @@ -25,11 +24,6 @@ struct debugfs_fsdata { > >> > struct { > >> > refcount_t active_users; > >> > struct completion active_users_drained; -#ifdef > >> CONFIG_LOCKDEP > >> > - struct lockdep_map lockdep_map; > >> > - struct lock_class_key key; > >> > - char *lock_name; > >> > -#endif > >> > > >> > /* protect cancellations */ > >> > struct mutex cancellations_mtx; > >> > -- > >> > 2.25.1 > >