Re: [PATCH 2/2] debugfs: log errors when something goes wrong

From: Rafael J. Wysocki
Date: Wed Jul 03 2019 - 05:38:08 EST


On Wed, Jul 3, 2019 at 11:32 AM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On Wed, Jul 03, 2019 at 11:10:44AM +0200, Rafael J. Wysocki wrote:
> > On Wed, Jul 3, 2019 at 9:17 AM Greg Kroah-Hartman
> > <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> > >
> > > As it is not recommended that debugfs calls be checked, it was pointed
> > > out that major errors should still be logged somewhere so that
> > > developers and users have a chance to figure out what went wrong. To
> > > help with this, error logging has been added to the debugfs core so that
> > > it is not needed to be present in every individual file that calls
> > > debugfs.
> > >
> > > Reported-by: Mark Brown <broonie@xxxxxxxxxx>
> > > Reported-by: Takashi Iwai <tiwai@xxxxxxx>
> > > Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx>
> > > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> >
> > Generally speaking
> >
> > Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> >
> > > ---
> > > fs/debugfs/inode.c | 25 ++++++++++++++++++++-----
> > > 1 file changed, 20 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c
> > > index f04c8475d9a1..7f43c8acfcbf 100644
> > > --- a/fs/debugfs/inode.c
> > > +++ b/fs/debugfs/inode.c
> > > @@ -2,8 +2,9 @@
> > > /*
> > > * inode.c - part of debugfs, a tiny little debug file system
> > > *
> > > - * Copyright (C) 2004 Greg Kroah-Hartman <greg@xxxxxxxxx>
> > > + * Copyright (C) 2004,2019 Greg Kroah-Hartman <greg@xxxxxxxxx>
> > > * Copyright (C) 2004 IBM Inc.
> > > + * Copyright (C) 2019 Linux Foundation <gregkh@xxxxxxxxxxxxxxxxxxx>
> > > *
> > > * debugfs is for people to use instead of /proc or /sys.
> > > * See ./Documentation/core-api/kernel-api.rst for more details.
> > > @@ -294,8 +295,10 @@ static struct dentry *start_creating(const char *name, struct dentry *parent)
> > >
> > > error = simple_pin_fs(&debug_fs_type, &debugfs_mount,
> > > &debugfs_mount_count);
> > > - if (error)
> > > + if (error) {
> > > + pr_err("Unable to pin filesystem for file '%s'\n", name);
> >
> > But I'm not sure about the log level here. Particularly, why would
> > pr_info() not work?
>
> It could, but it is an error in that debugfs didn't do what was asked of
> it. I really don't care either way, the odds of anyone ever seeing this
> message is almost none :)

Fair enough.