[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20130530145434.GA3051@oc6784271780.ibm.com>
Date: Thu, 30 May 2013 09:54:34 -0500
From: "Philip J. Kelleher" <pjk1939@...ux.vnet.ibm.com>
To: Andy Shevchenko <andy.shevchenko@...il.com>
Cc: axboe@...nel.dk,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/8] rsxx: Adding in debugfs entries.
I will look into all of the suggestion that you submitted to me.
Thank you for taking the time to review the patches.
Regards,
-Philip Kelleher
On Wed, May 29, 2013 at 09:18:12PM +0300, Andy Shevchenko wrote:
> On Wed, May 29, 2013 at 12:08 AM, Philip J. Kelleher
> <pjk1939@...ux.vnet.ibm.com> wrote:
> > From: Philip J Kelleher <pjk1939@...ux.vnet.ibm.com>
> >
> > Adding in some debugfs entries to help with debugging and
> > testing code.
>
> > +++ linux-block/drivers/block/rsxx/core.c 2013-05-02 17:18:22.944239791 -0500
> > @@ -52,6 +54,191 @@ MODULE_PARM_DESC(force_legacy, "Force th
> > static DEFINE_IDA(rsxx_disk_ida);
> > static DEFINE_SPINLOCK(rsxx_ida_lock);
> >
> > +/* --------------------Debugfs Setup ------------------- */
> > +
> > +static struct dentry *rsxx_debugfs_root;
>
> I didn't get if you use only one debugfs_root per instance? How do you
> distinguish two or more cards then?
>
> > +static void rsxx_debugfs_dev_new(struct rsxx_cardinfo *card)
> > +{
> > + if (!rsxx_debugfs_root)
> > + return;
>
> It seems you always call this after debugfs_init(). So, remove this
> check (keep in mind you have to check debugfs_init() return code - see
> below).
>
> > +static void rsxx_debugfs_dev_remove(struct rsxx_cardinfo *card)
> > +{
> > +}
>
> Useless function. See below.
>
> > +static void rsxx_debugfs_init(void)
> > +{
> > + rsxx_debugfs_root = debugfs_create_dir(DRIVER_NAME, NULL);
>
> Same comment for DRIVER_NAME as for global variable debugfs_root above.
>
> > + if (!rsxx_debugfs_root)
> > + return;
>
> It should be checked for NULL and for ERR_PTR. Return error instead of void.
>
> > +static void rsxx_debugfs_destroy(void)
> > +{
> > + if (!rsxx_debugfs_root)
> > + return;
>
> Use debugfs_remove_recursive().
> It's also NULL-proof.
>
> > + debugfs_remove(rsxx_debugfs_root);
> > + rsxx_debugfs_root = NULL;
>
> If you will use this on card based, you probably have to move this
> from global space to card space.
>
> > +++ linux-block/drivers/block/rsxx/rsxx_priv.h 2013-05-02 17:17:25.154498245 -0500
> > @@ -181,6 +181,11 @@ struct rsxx_cardinfo {
> >
> > int n_targets;
> > struct rsxx_dma_ctrl *ctrl;
> > +
> > + /* Debugfs Variables */
> > + struct dentry *debugfs_dir;
> > + struct dentry *debugfs_stats;
> > + struct dentry *debugfs_pci_regs;
>
> No need to keep those pointers since you may use debugfs_remove_recursive().
>
> --
> With Best Regards,
> Andy Shevchenko
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists