lkml.org 
[lkml]   [2013]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 1/8] rsxx: Adding in debugfs entries.
From
On Wed, May 29, 2013 at 12:08 AM, Philip J. Kelleher
<pjk1939@linux.vnet.ibm.com> wrote:
> From: Philip J Kelleher <pjk1939@linux.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


\
 
 \ /
  Last update: 2013-05-29 20:41    [W:0.036 / U:0.140 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site