All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mmc: add ifdef around fault_create_debugfs_attr()
@ 2015-11-06 12:15 Adrien Schildknecht
  2015-11-09 13:33 ` Ulf Hansson
  0 siblings, 1 reply; 6+ messages in thread
From: Adrien Schildknecht @ 2015-11-06 12:15 UTC (permalink / raw)
  To: ulf.hansson, shawn.lin, linus.walleij
  Cc: linux-mmc, linux-kernel, Adrien Schildknecht

FAIL_MMC_REQUEST can be used without FAULT_INJECTION_DEBUG_FS.
In this case fault_create_debugfs_attr() will always return an error and
lead to the deletion of the whole debugfs directory.

This patch makes sure that FAULT_INJECTION_DEBUG_FS is enabled before
attempting to create the debugfs atttribute.

Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>
---
 drivers/mmc/core/debugfs.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
index 154aced..13e842c 100644
--- a/drivers/mmc/core/debugfs.c
+++ b/drivers/mmc/core/debugfs.c
@@ -259,11 +259,13 @@ void mmc_add_host_debugfs(struct mmc_host *host)
 	if (fail_request)
 		setup_fault_attr(&fail_default_attr, fail_request);
 	host->fail_mmc_request = fail_default_attr;
+#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
 	if (IS_ERR(fault_create_debugfs_attr("fail_mmc_request",
 					     root,
 					     &host->fail_mmc_request)))
 		goto err_node;
 #endif
+#endif
 	return;
 
 err_node:
-- 
2.6.2


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] mmc: add ifdef around fault_create_debugfs_attr()
  2015-11-06 12:15 [PATCH] mmc: add ifdef around fault_create_debugfs_attr() Adrien Schildknecht
@ 2015-11-09 13:33 ` Ulf Hansson
  2015-11-10 15:04   ` Adrien Schildknecht
  0 siblings, 1 reply; 6+ messages in thread
From: Ulf Hansson @ 2015-11-09 13:33 UTC (permalink / raw)
  To: Adrien Schildknecht; +Cc: Shawn Lin, Linus Walleij, linux-mmc, linux-kernel

On 6 November 2015 at 13:15, Adrien Schildknecht <adrien+dev@schischi.me> wrote:
> FAIL_MMC_REQUEST can be used without FAULT_INJECTION_DEBUG_FS.
> In this case fault_create_debugfs_attr() will always return an error and
> lead to the deletion of the whole debugfs directory.
>
> This patch makes sure that FAULT_INJECTION_DEBUG_FS is enabled before
> attempting to create the debugfs atttribute.
>
> Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>
> ---
>  drivers/mmc/core/debugfs.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
> index 154aced..13e842c 100644
> --- a/drivers/mmc/core/debugfs.c
> +++ b/drivers/mmc/core/debugfs.c
> @@ -259,11 +259,13 @@ void mmc_add_host_debugfs(struct mmc_host *host)
>         if (fail_request)
>                 setup_fault_attr(&fail_default_attr, fail_request);
>         host->fail_mmc_request = fail_default_attr;
> +#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
>         if (IS_ERR(fault_create_debugfs_attr("fail_mmc_request",
>                                              root,
>                                              &host->fail_mmc_request)))
>                 goto err_node;
>  #endif
> +#endif
>         return;
>
>  err_node:
> --
> 2.6.2
>

I think you are solving this in the wrong way. Will it really makes
sense to use FAIL_MMC_REQUEST unless FAULT_INJECTION_DEBUG_FS is set,
I don't think so.

I suggest you to change FAIL_MMC_REQUEST from depending on
FAULT_INJECTION to FAULT_INJECTION_DEBUG_FS in /lib/Kconfig.debug.

Kind regards
Uffe

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] mmc: add ifdef around fault_create_debugfs_attr()
  2015-11-09 13:33 ` Ulf Hansson
@ 2015-11-10 15:04   ` Adrien Schildknecht
  2015-11-10 17:29     ` Ulf Hansson
  0 siblings, 1 reply; 6+ messages in thread
From: Adrien Schildknecht @ 2015-11-10 15:04 UTC (permalink / raw)
  To: Ulf Hansson; +Cc: Shawn Lin, Linus Walleij, linux-mmc, linux-kernel

On Mon, 9 Nov 2015 14:33:11 +0100
Ulf Hansson <ulf.hansson@linaro.org> wrote:
> On 6 November 2015 at 13:15, Adrien Schildknecht
> <adrien+dev@schischi.me> wrote:  
> > FAIL_MMC_REQUEST can be used without FAULT_INJECTION_DEBUG_FS.
> > In this case fault_create_debugfs_attr() will always return an
> > error and lead to the deletion of the whole debugfs directory.
> >
> > This patch makes sure that FAULT_INJECTION_DEBUG_FS is enabled
> > before attempting to create the debugfs atttribute.
> >
> > Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>
> > ---
> >  drivers/mmc/core/debugfs.c | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
> > index 154aced..13e842c 100644
> > --- a/drivers/mmc/core/debugfs.c
> > +++ b/drivers/mmc/core/debugfs.c
> > @@ -259,11 +259,13 @@ void mmc_add_host_debugfs(struct mmc_host
> > *host) if (fail_request)
> >                 setup_fault_attr(&fail_default_attr, fail_request);
> >         host->fail_mmc_request = fail_default_attr;
> > +#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
> >         if (IS_ERR(fault_create_debugfs_attr("fail_mmc_request",
> >                                              root,
> >                                              &host->fail_mmc_request)))
> >                 goto err_node;
> >  #endif
> > +#endif
> >         return;
> >
> >  err_node:
> > --
> > 2.6.2
> >    
> 
> I think you are solving this in the wrong way. Will it really makes
> sense to use FAIL_MMC_REQUEST unless FAULT_INJECTION_DEBUG_FS is set,
> I don't think so.  
The fault attribute can be configured using either the debugfs or the
module parameter "fail_request". It is thus possible to use
FAIL_MMC_REQUEST without FAULT_INJECTION_DEBUG_FS (even if it is less
convenient).

> I suggest you to change FAIL_MMC_REQUEST from depending on
> FAULT_INJECTION to FAULT_INJECTION_DEBUG_FS in /lib/Kconfig.debug.  
The other systems that use the fault injection infrastructure (futex,
alloc_pages, slab...) can be used without the dependency on
FAULT_INJECTION_DEBUG_FS. They also use nested #ifdef to handle this
configuration. I chose the #ifdef approach for the sake of coherence.

-- 
Adrien Schildknecht

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] mmc: add ifdef around fault_create_debugfs_attr()
  2015-11-10 15:04   ` Adrien Schildknecht
@ 2015-11-10 17:29     ` Ulf Hansson
  2015-11-10 19:12       ` [PATCH v2] mmc: kconfig: replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS Adrien Schildknecht
  0 siblings, 1 reply; 6+ messages in thread
From: Ulf Hansson @ 2015-11-10 17:29 UTC (permalink / raw)
  To: Adrien Schildknecht; +Cc: Shawn Lin, Linus Walleij, linux-mmc, linux-kernel

On 10 November 2015 at 16:04, Adrien Schildknecht
<adrien+dev@schischi.me> wrote:
> On Mon, 9 Nov 2015 14:33:11 +0100
> Ulf Hansson <ulf.hansson@linaro.org> wrote:
>> On 6 November 2015 at 13:15, Adrien Schildknecht
>> <adrien+dev@schischi.me> wrote:
>> > FAIL_MMC_REQUEST can be used without FAULT_INJECTION_DEBUG_FS.
>> > In this case fault_create_debugfs_attr() will always return an
>> > error and lead to the deletion of the whole debugfs directory.
>> >
>> > This patch makes sure that FAULT_INJECTION_DEBUG_FS is enabled
>> > before attempting to create the debugfs atttribute.
>> >
>> > Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>
>> > ---
>> >  drivers/mmc/core/debugfs.c | 2 ++
>> >  1 file changed, 2 insertions(+)
>> >
>> > diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c
>> > index 154aced..13e842c 100644
>> > --- a/drivers/mmc/core/debugfs.c
>> > +++ b/drivers/mmc/core/debugfs.c
>> > @@ -259,11 +259,13 @@ void mmc_add_host_debugfs(struct mmc_host
>> > *host) if (fail_request)
>> >                 setup_fault_attr(&fail_default_attr, fail_request);
>> >         host->fail_mmc_request = fail_default_attr;
>> > +#ifdef CONFIG_FAULT_INJECTION_DEBUG_FS
>> >         if (IS_ERR(fault_create_debugfs_attr("fail_mmc_request",
>> >                                              root,
>> >                                              &host->fail_mmc_request)))
>> >                 goto err_node;
>> >  #endif
>> > +#endif
>> >         return;
>> >
>> >  err_node:
>> > --
>> > 2.6.2
>> >
>>
>> I think you are solving this in the wrong way. Will it really makes
>> sense to use FAIL_MMC_REQUEST unless FAULT_INJECTION_DEBUG_FS is set,
>> I don't think so.
> The fault attribute can be configured using either the debugfs or the
> module parameter "fail_request". It is thus possible to use
> FAIL_MMC_REQUEST without FAULT_INJECTION_DEBUG_FS (even if it is less
> convenient).
>
>> I suggest you to change FAIL_MMC_REQUEST from depending on
>> FAULT_INJECTION to FAULT_INJECTION_DEBUG_FS in /lib/Kconfig.debug.
> The other systems that use the fault injection infrastructure (futex,
> alloc_pages, slab...) can be used without the dependency on
> FAULT_INJECTION_DEBUG_FS. They also use nested #ifdef to handle this

There are also those that chosen to depend on
FAULT_INJECTION_DEBUG_FS, such as FAULT_INJECTION_STACKTRACE_FILTER.

> configuration. I chose the #ifdef approach for the sake of coherence.

I would like to keep the amount of #ifdefs around in the code to a
minimal. In this case it doesn't even make sense and as there are no
consistent behaviour to consider, could you please adopt the Kconfig
solution instead!?

Kind regards
Uffe

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v2] mmc: kconfig: replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS
  2015-11-10 17:29     ` Ulf Hansson
@ 2015-11-10 19:12       ` Adrien Schildknecht
  2015-11-19 11:29         ` Ulf Hansson
  0 siblings, 1 reply; 6+ messages in thread
From: Adrien Schildknecht @ 2015-11-10 19:12 UTC (permalink / raw)
  To: ulf.hansson, shawn.lin, linus.walleij
  Cc: linux-mmc, linux-kernel, Adrien Schildknecht

Fault-injection capability for MMC IO uses debugfs entries to configure
the attributes.
FAULT_INJECTION_DEBUG_FS must be enabled to use FAIL_MMC_REQUEST.

Replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS.
Also remove 'select DEBUG_FS' since FAULT_INJECTION_DEBUG_FS depends on
it.

Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>
---
 lib/Kconfig.debug | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 749e886..5c038d2 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -1523,8 +1523,7 @@ config FAIL_IO_TIMEOUT
 
 config FAIL_MMC_REQUEST
 	bool "Fault-injection capability for MMC IO"
-	select DEBUG_FS
-	depends on FAULT_INJECTION && MMC
+	depends on FAULT_INJECTION_DEBUG_FS && MMC
 	help
 	  Provide fault-injection capability for MMC IO.
 	  This will make the mmc core return data errors. This is
-- 
2.6.2


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v2] mmc: kconfig: replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS
  2015-11-10 19:12       ` [PATCH v2] mmc: kconfig: replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS Adrien Schildknecht
@ 2015-11-19 11:29         ` Ulf Hansson
  0 siblings, 0 replies; 6+ messages in thread
From: Ulf Hansson @ 2015-11-19 11:29 UTC (permalink / raw)
  To: Adrien Schildknecht; +Cc: Shawn Lin, Linus Walleij, linux-mmc, linux-kernel

On 10 November 2015 at 20:12, Adrien Schildknecht
<adrien+dev@schischi.me> wrote:
> Fault-injection capability for MMC IO uses debugfs entries to configure
> the attributes.
> FAULT_INJECTION_DEBUG_FS must be enabled to use FAIL_MMC_REQUEST.
>
> Replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS.
> Also remove 'select DEBUG_FS' since FAULT_INJECTION_DEBUG_FS depends on
> it.
>
> Signed-off-by: Adrien Schildknecht <adrien+dev@schischi.me>

Thanks, applied for next!

Kind regards
Uffe


> ---
>  lib/Kconfig.debug | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
> index 749e886..5c038d2 100644
> --- a/lib/Kconfig.debug
> +++ b/lib/Kconfig.debug
> @@ -1523,8 +1523,7 @@ config FAIL_IO_TIMEOUT
>
>  config FAIL_MMC_REQUEST
>         bool "Fault-injection capability for MMC IO"
> -       select DEBUG_FS
> -       depends on FAULT_INJECTION && MMC
> +       depends on FAULT_INJECTION_DEBUG_FS && MMC
>         help
>           Provide fault-injection capability for MMC IO.
>           This will make the mmc core return data errors. This is
> --
> 2.6.2
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-11-19 11:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-06 12:15 [PATCH] mmc: add ifdef around fault_create_debugfs_attr() Adrien Schildknecht
2015-11-09 13:33 ` Ulf Hansson
2015-11-10 15:04   ` Adrien Schildknecht
2015-11-10 17:29     ` Ulf Hansson
2015-11-10 19:12       ` [PATCH v2] mmc: kconfig: replace FAULT_INJECTION with FAULT_INJECTION_DEBUG_FS Adrien Schildknecht
2015-11-19 11:29         ` Ulf Hansson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.