* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-05-26 11:26 ` Leonard Crestez
0 siblings, 0 replies; 11+ messages in thread
From: Leonard Crestez @ 2017-05-26 11:26 UTC (permalink / raw)
To: Shawn Guo
Cc: Fabio Estevam, Dong Aisheng, linux-arm-kernel, Paul E . McKenney,
Matt Fleming, Octavian Purdila, Stephen Rothwell, linux-kernel
This option was removed by "make savedefconfig" in
commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
This happened because CONFIG_DEBUG_FS was implicitly selected by
CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
was enabled by default by commit 961518259b3b ("rcu: Enable RCU
tracepoints by default to aid in debugging")
Recently however CONFIG_RCU_TRACE was completely removed by
commit 6e74c237c410 ("rcu: Remove debugfs tracing")
The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
linux-next since next-20170517. This is bad, DEBUG_FS is extremely
useful for kernel introspection and testing.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
---
Patch is against next-20170526. Applying it to shawnguo/imx/defconfig
and cycling via savedefconfig makes this diff go away.
Alternatively maybe DEBUG_FS itself could be made "default y if DEBUG_KERNEL"
or similar?
arch/arm/configs/imx_v6_v7_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index bf1e7e3..51ca814 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -381,6 +381,7 @@ CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_UTF8=y
CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_FS=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_SCHED_DEBUG is not set
CONFIG_PROVE_LOCKING=y
--
2.7.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-05-26 11:26 ` Leonard Crestez
0 siblings, 0 replies; 11+ messages in thread
From: Leonard Crestez @ 2017-05-26 11:26 UTC (permalink / raw)
To: linux-arm-kernel
This option was removed by "make savedefconfig" in
commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
This happened because CONFIG_DEBUG_FS was implicitly selected by
CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
was enabled by default by commit 961518259b3b ("rcu: Enable RCU
tracepoints by default to aid in debugging")
Recently however CONFIG_RCU_TRACE was completely removed by
commit 6e74c237c410 ("rcu: Remove debugfs tracing")
The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
linux-next since next-20170517. This is bad, DEBUG_FS is extremely
useful for kernel introspection and testing.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
---
Patch is against next-20170526. Applying it to shawnguo/imx/defconfig
and cycling via savedefconfig makes this diff go away.
Alternatively maybe DEBUG_FS itself could be made "default y if DEBUG_KERNEL"
or similar?
arch/arm/configs/imx_v6_v7_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index bf1e7e3..51ca814 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -381,6 +381,7 @@ CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_UTF8=y
CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_FS=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_SCHED_DEBUG is not set
CONFIG_PROVE_LOCKING=y
--
2.7.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
2017-05-26 11:26 ` Leonard Crestez
@ 2017-05-26 15:42 ` Paul E. McKenney
-1 siblings, 0 replies; 11+ messages in thread
From: Paul E. McKenney @ 2017-05-26 15:42 UTC (permalink / raw)
To: Leonard Crestez
Cc: Shawn Guo, Fabio Estevam, Dong Aisheng, linux-arm-kernel,
Matt Fleming, Octavian Purdila, Stephen Rothwell, linux-kernel
On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> This option was removed by "make savedefconfig" in
> commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
>
> This happened because CONFIG_DEBUG_FS was implicitly selected by
> CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> tracepoints by default to aid in debugging")
>
> Recently however CONFIG_RCU_TRACE was completely removed by
> commit 6e74c237c410 ("rcu: Remove debugfs tracing")
CONFIG_RCU_TRACE is still very much alive in its new home at
kernel/rcu/Kconfig.debug:
config RCU_TRACE
bool "Enable tracing for RCU"
depends on DEBUG_KERNEL
default y if TREE_RCU
select TRACE_CLOCK
help
This option enables additional tracepoints for ftrace-style
event tracing.
Say Y here if you want to enable RCU tracing
Say N if you are unsure.
That said, I need to make it default to "y" if PREEMPT_RCU as well as
the current TREE_RCU. Would that help?
Thanx, Paul
> The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
> linux-next since next-20170517. This is bad, DEBUG_FS is extremely
> useful for kernel introspection and testing.
>
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
> ---
>
> Patch is against next-20170526. Applying it to shawnguo/imx/defconfig
> and cycling via savedefconfig makes this diff go away.
>
> Alternatively maybe DEBUG_FS itself could be made "default y if DEBUG_KERNEL"
> or similar?
>
> arch/arm/configs/imx_v6_v7_defconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
> index bf1e7e3..51ca814 100644
> --- a/arch/arm/configs/imx_v6_v7_defconfig
> +++ b/arch/arm/configs/imx_v6_v7_defconfig
> @@ -381,6 +381,7 @@ CONFIG_NLS_ISO8859_1=y
> CONFIG_NLS_ISO8859_15=m
> CONFIG_NLS_UTF8=y
> CONFIG_PRINTK_TIME=y
> +CONFIG_DEBUG_FS=y
> CONFIG_MAGIC_SYSRQ=y
> # CONFIG_SCHED_DEBUG is not set
> CONFIG_PROVE_LOCKING=y
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-05-26 15:42 ` Paul E. McKenney
0 siblings, 0 replies; 11+ messages in thread
From: Paul E. McKenney @ 2017-05-26 15:42 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> This option was removed by "make savedefconfig" in
> commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
>
> This happened because CONFIG_DEBUG_FS was implicitly selected by
> CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> tracepoints by default to aid in debugging")
>
> Recently however CONFIG_RCU_TRACE was completely removed by
> commit 6e74c237c410 ("rcu: Remove debugfs tracing")
CONFIG_RCU_TRACE is still very much alive in its new home at
kernel/rcu/Kconfig.debug:
config RCU_TRACE
bool "Enable tracing for RCU"
depends on DEBUG_KERNEL
default y if TREE_RCU
select TRACE_CLOCK
help
This option enables additional tracepoints for ftrace-style
event tracing.
Say Y here if you want to enable RCU tracing
Say N if you are unsure.
That said, I need to make it default to "y" if PREEMPT_RCU as well as
the current TREE_RCU. Would that help?
Thanx, Paul
> The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
> linux-next since next-20170517. This is bad, DEBUG_FS is extremely
> useful for kernel introspection and testing.
>
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
> ---
>
> Patch is against next-20170526. Applying it to shawnguo/imx/defconfig
> and cycling via savedefconfig makes this diff go away.
>
> Alternatively maybe DEBUG_FS itself could be made "default y if DEBUG_KERNEL"
> or similar?
>
> arch/arm/configs/imx_v6_v7_defconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
> index bf1e7e3..51ca814 100644
> --- a/arch/arm/configs/imx_v6_v7_defconfig
> +++ b/arch/arm/configs/imx_v6_v7_defconfig
> @@ -381,6 +381,7 @@ CONFIG_NLS_ISO8859_1=y
> CONFIG_NLS_ISO8859_15=m
> CONFIG_NLS_UTF8=y
> CONFIG_PRINTK_TIME=y
> +CONFIG_DEBUG_FS=y
> CONFIG_MAGIC_SYSRQ=y
> # CONFIG_SCHED_DEBUG is not set
> CONFIG_PROVE_LOCKING=y
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
2017-05-26 15:42 ` Paul E. McKenney
@ 2017-05-29 11:58 ` Leonard Crestez
-1 siblings, 0 replies; 11+ messages in thread
From: Leonard Crestez @ 2017-05-29 11:58 UTC (permalink / raw)
To: paulmck
Cc: Shawn Guo, Fabio Estevam, Dong Aisheng, linux-arm-kernel,
Matt Fleming, Octavian Purdila, Stephen Rothwell, linux-kernel
On Fri, 2017-05-26 at 08:42 -0700, Paul E. McKenney wrote:
> On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> >
> > This option was removed by "make savedefconfig" in
> > commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
> >
> > This happened because CONFIG_DEBUG_FS was implicitly selected by
> > CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> > was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> > tracepoints by default to aid in debugging")
> >
> > Recently however CONFIG_RCU_TRACE was completely removed by
> > commit 6e74c237c410 ("rcu: Remove debugfs tracing")
> CONFIG_RCU_TRACE is still very much alive in its new home at
> kernel/rcu/Kconfig.debug:
Sorry, what was removed is the dependency on DEBUG_FS. In particular
this snippet:
diff --git a/init/Kconfig b/init/Kconfig
index 2aa14ff..3025383 100644
--
- a/init/Kconfig
+++ b/init/Kconfig
@@ -659,14 +659,6 @@ config
RCU_FAST_NO_HZ
Say N if you are unsure.
-config
TREE_RCU_TRACE
- def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
- select DEBUG_FS
- help
- This option provides
tracing for the TREE_RCU and
- PREEMPT_RCU implementations,
permitting Makefile to
- trivially select
kernel/rcutree_trace.c.
-
config RCU_BOOST
bool "Enable RCU
priority boosting"
depends on RT_MUTEXES && PREEMPT_RCU &&
RCU_EXPERT
> config RCU_TRACE
> bool "Enable tracing for RCU"
> depends on DEBUG_KERNEL
> default y if TREE_RCU
> select TRACE_CLOCK
> help
> This option enables additional tracepoints for ftrace-style
> event tracing.
>
> Say Y here if you want to enable RCU tracing
> Say N if you are unsure.
>
> That said, I need to make it default to "y" if PREEMPT_RCU as well as
> the current TREE_RCU. Would that help?
I don't think you can help unless you want to make RCU_TRACE depend on
DEBUG_FS for no reason. The proper fix is to have DEBUG_FS inside the
imx_v6_v7_defconfig.
My problem is just an unfortunate accident with default dependencies
and overzealous savedefconfig.
As far as I understand after recent changes RCU_TRACE is now only
useful with tracepoints. Shouldn't it depend on TRACEPOINTS in some
way? It's still possible to compile with RCU_TRACE on and TRACEPOINTS
off, is this intentional? It seems that when this happens you're just
relying on tracepoint macros to expand to nothing.
Fr example maybe RCU_TRACE should be "default y if (TREE_RCU &&
TRACEPOINTS); depends on TRACEPOINTS"?
In theory you could also "select TRACEPOINTS" but then you would end up
enabling TRACEPOINTS by default in all configurations that use TREE_RCU
but don't explicitly disable RCU_TRACE.
I'd say that if $SUBSYSTEM_DEBUG depends on $MAJOR_DEBUG_FEATURE it
should try to avoid selecting $MAJOR_DEBUG_FEATURE by default if it's
not otherwise enabled. As far as I can tell this is how RCU ended up
indirectly pulling in DEBUG_FS and later unexpectedly removed it.
Or I could be completely wrong, kconfig can be very confusing.
--
Regards,
Leonard
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-05-29 11:58 ` Leonard Crestez
0 siblings, 0 replies; 11+ messages in thread
From: Leonard Crestez @ 2017-05-29 11:58 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, 2017-05-26 at 08:42 -0700, Paul E. McKenney wrote:
> On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> >
> > This option was removed by "make savedefconfig" in
> > commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
> >
> > This happened because CONFIG_DEBUG_FS was implicitly selected by
> > CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> > was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> > tracepoints by default to aid in debugging")
> >
> > Recently however CONFIG_RCU_TRACE was completely removed by
> > commit 6e74c237c410 ("rcu: Remove debugfs tracing")
> CONFIG_RCU_TRACE is still very much alive in its new home at
> kernel/rcu/Kconfig.debug:
Sorry, what was removed is the dependency on DEBUG_FS. In particular
this snippet:
diff --git a/init/Kconfig b/init/Kconfig
index 2aa14ff..3025383 100644
--
- a/init/Kconfig
+++ b/init/Kconfig
@@ -659,14 +659,6 @@ config
RCU_FAST_NO_HZ
?
??????????Say N if you are unsure.
?
-config
TREE_RCU_TRACE
-???????def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
-???????select DEBUG_FS
-???????help
-?????????This option provides
tracing for the TREE_RCU and
-?????????PREEMPT_RCU implementations,
permitting Makefile to
-?????????trivially select
kernel/rcutree_trace.c.
-
?config RCU_BOOST
????????bool "Enable RCU
priority boosting"
????????depends on RT_MUTEXES && PREEMPT_RCU &&
RCU_EXPERT
> config RCU_TRACE
> bool "Enable tracing for RCU"
> depends on DEBUG_KERNEL
> default y if TREE_RCU
> select TRACE_CLOCK
> help
> ??This option enables additional tracepoints for ftrace-style
> ??event tracing.
>
> ??Say Y here if you want to enable RCU tracing
> ??Say N if you are unsure.
>
> That said, I need to make it default to "y" if PREEMPT_RCU as well as
> the current TREE_RCU.??Would that help?
I don't think you can help unless you want to make RCU_TRACE depend on
DEBUG_FS for no reason. The proper fix is to have DEBUG_FS inside the
imx_v6_v7_defconfig.
My problem is just an unfortunate accident with default dependencies
and overzealous savedefconfig.
As far as I understand after recent changes RCU_TRACE is now only
useful with tracepoints. Shouldn't it depend on TRACEPOINTS in some
way? It's still possible to compile with RCU_TRACE on and TRACEPOINTS
off, is this intentional? It seems that when this happens you're just
relying on tracepoint macros to expand to nothing.
Fr example maybe RCU_TRACE should be "default y if (TREE_RCU &&
TRACEPOINTS); depends on TRACEPOINTS"?
In theory you could also "select TRACEPOINTS" but then you would end up
enabling TRACEPOINTS by default in all configurations that use TREE_RCU
but don't explicitly disable RCU_TRACE.
I'd say that if $SUBSYSTEM_DEBUG depends on $MAJOR_DEBUG_FEATURE it
should try to avoid selecting $MAJOR_DEBUG_FEATURE by default if it's
not otherwise enabled. As far as I can tell this is how RCU ended up
indirectly pulling in DEBUG_FS and later unexpectedly removed it.
Or I could be completely wrong, kconfig can be very confusing.
--?
Regards,
Leonard
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
2017-05-29 11:58 ` Leonard Crestez
@ 2017-05-29 15:11 ` Paul E. McKenney
-1 siblings, 0 replies; 11+ messages in thread
From: Paul E. McKenney @ 2017-05-29 15:11 UTC (permalink / raw)
To: Leonard Crestez
Cc: Shawn Guo, Fabio Estevam, Dong Aisheng, linux-arm-kernel,
Matt Fleming, Octavian Purdila, Stephen Rothwell, linux-kernel
On Mon, May 29, 2017 at 02:58:36PM +0300, Leonard Crestez wrote:
> On Fri, 2017-05-26 at 08:42 -0700, Paul E. McKenney wrote:
> > On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> > >
> > > This option was removed by "make savedefconfig" in
> > > commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
> > >
> > > This happened because CONFIG_DEBUG_FS was implicitly selected by
> > > CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> > > was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> > > tracepoints by default to aid in debugging")
> > >
> > > Recently however CONFIG_RCU_TRACE was completely removed by
> > > commit 6e74c237c410 ("rcu: Remove debugfs tracing")
>
> > CONFIG_RCU_TRACE is still very much alive in its new home at
> > kernel/rcu/Kconfig.debug:
>
> Sorry, what was removed is the dependency on DEBUG_FS. In particular
> this snippet:
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 2aa14ff..3025383 100644
> --
> - a/init/Kconfig
> +++ b/init/Kconfig
> @@ -659,14 +659,6 @@ config
> RCU_FAST_NO_HZ
>
> Say N if you are unsure.
>
> -config
> TREE_RCU_TRACE
> - def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
> - select DEBUG_FS
Ah, you are right. RCU no longer needs DEBUG_FS, so it no longer
selects it.
> - help
> - This option provides
> tracing for the TREE_RCU and
> - PREEMPT_RCU implementations,
> permitting Makefile to
> - trivially select
> kernel/rcutree_trace.c.
> -
> config RCU_BOOST
> bool "Enable RCU
> priority boosting"
> depends on RT_MUTEXES && PREEMPT_RCU &&
> RCU_EXPERT
>
> > config RCU_TRACE
> > bool "Enable tracing for RCU"
> > depends on DEBUG_KERNEL
> > default y if TREE_RCU
> > select TRACE_CLOCK
> > help
> > This option enables additional tracepoints for ftrace-style
> > event tracing.
> >
> > Say Y here if you want to enable RCU tracing
> > Say N if you are unsure.
> >
> > That said, I need to make it default to "y" if PREEMPT_RCU as well as
> > the current TREE_RCU. Would that help?
>
> I don't think you can help unless you want to make RCU_TRACE depend on
> DEBUG_FS for no reason. The proper fix is to have DEBUG_FS inside the
> imx_v6_v7_defconfig.
>
> My problem is just an unfortunate accident with default dependencies
> and overzealous savedefconfig.
Right you are!
> As far as I understand after recent changes RCU_TRACE is now only
> useful with tracepoints. Shouldn't it depend on TRACEPOINTS in some
> way? It's still possible to compile with RCU_TRACE on and TRACEPOINTS
> off, is this intentional? It seems that when this happens you're just
> relying on tracepoint macros to expand to nothing.
>
> Fr example maybe RCU_TRACE should be "default y if (TREE_RCU &&
> TRACEPOINTS); depends on TRACEPOINTS"?
>
> In theory you could also "select TRACEPOINTS" but then you would end up
> enabling TRACEPOINTS by default in all configurations that use TREE_RCU
> but don't explicitly disable RCU_TRACE.
>
> I'd say that if $SUBSYSTEM_DEBUG depends on $MAJOR_DEBUG_FEATURE it
> should try to avoid selecting $MAJOR_DEBUG_FEATURE by default if it's
> not otherwise enabled. As far as I can tell this is how RCU ended up
> indirectly pulling in DEBUG_FS and later unexpectedly removed it.
>
> Or I could be completely wrong, kconfig can be very confusing.
Interesting questions! I will give them some thought.
Perhaps TRACEPOINTS is accidentally being enabled for me just as
DEBUG_FS was being accidentally enabled for you. ;-)
Thanx, Paul
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-05-29 15:11 ` Paul E. McKenney
0 siblings, 0 replies; 11+ messages in thread
From: Paul E. McKenney @ 2017-05-29 15:11 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, May 29, 2017 at 02:58:36PM +0300, Leonard Crestez wrote:
> On Fri, 2017-05-26 at 08:42 -0700, Paul E. McKenney wrote:
> > On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> > >
> > > This option was removed by "make savedefconfig" in
> > > commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
> > >
> > > This happened because CONFIG_DEBUG_FS was implicitly selected by
> > > CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> > > was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> > > tracepoints by default to aid in debugging")
> > >
> > > Recently however CONFIG_RCU_TRACE was completely removed by
> > > commit 6e74c237c410 ("rcu: Remove debugfs tracing")
>
> > CONFIG_RCU_TRACE is still very much alive in its new home at
> > kernel/rcu/Kconfig.debug:
>
> Sorry, what was removed is the dependency on DEBUG_FS. In particular
> this snippet:
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 2aa14ff..3025383 100644
> --
> - a/init/Kconfig
> +++ b/init/Kconfig
> @@ -659,14 +659,6 @@ config
> RCU_FAST_NO_HZ
> ?
> ??????????Say N if you are unsure.
> ?
> -config
> TREE_RCU_TRACE
> -???????def_bool RCU_TRACE && ( TREE_RCU || PREEMPT_RCU )
> -???????select DEBUG_FS
Ah, you are right. RCU no longer needs DEBUG_FS, so it no longer
selects it.
> -???????help
> -?????????This option provides
> tracing for the TREE_RCU and
> -?????????PREEMPT_RCU implementations,
> permitting Makefile to
> -?????????trivially select
> kernel/rcutree_trace.c.
> -
> ?config RCU_BOOST
> ????????bool "Enable RCU
> priority boosting"
> ????????depends on RT_MUTEXES && PREEMPT_RCU &&
> RCU_EXPERT
>
> > config RCU_TRACE
> > bool "Enable tracing for RCU"
> > depends on DEBUG_KERNEL
> > default y if TREE_RCU
> > select TRACE_CLOCK
> > help
> > ??This option enables additional tracepoints for ftrace-style
> > ??event tracing.
> >
> > ??Say Y here if you want to enable RCU tracing
> > ??Say N if you are unsure.
> >
> > That said, I need to make it default to "y" if PREEMPT_RCU as well as
> > the current TREE_RCU.??Would that help?
>
> I don't think you can help unless you want to make RCU_TRACE depend on
> DEBUG_FS for no reason. The proper fix is to have DEBUG_FS inside the
> imx_v6_v7_defconfig.
>
> My problem is just an unfortunate accident with default dependencies
> and overzealous savedefconfig.
Right you are!
> As far as I understand after recent changes RCU_TRACE is now only
> useful with tracepoints. Shouldn't it depend on TRACEPOINTS in some
> way? It's still possible to compile with RCU_TRACE on and TRACEPOINTS
> off, is this intentional? It seems that when this happens you're just
> relying on tracepoint macros to expand to nothing.
>
> Fr example maybe RCU_TRACE should be "default y if (TREE_RCU &&
> TRACEPOINTS); depends on TRACEPOINTS"?
>
> In theory you could also "select TRACEPOINTS" but then you would end up
> enabling TRACEPOINTS by default in all configurations that use TREE_RCU
> but don't explicitly disable RCU_TRACE.
>
> I'd say that if $SUBSYSTEM_DEBUG depends on $MAJOR_DEBUG_FEATURE it
> should try to avoid selecting $MAJOR_DEBUG_FEATURE by default if it's
> not otherwise enabled. As far as I can tell this is how RCU ended up
> indirectly pulling in DEBUG_FS and later unexpectedly removed it.
>
> Or I could be completely wrong, kconfig can be very confusing.
Interesting questions! I will give them some thought.
Perhaps TRACEPOINTS is accidentally being enabled for me just as
DEBUG_FS was being accidentally enabled for you. ;-)
Thanx, Paul
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
2017-05-26 11:26 ` Leonard Crestez
@ 2017-06-04 3:42 ` Shawn Guo
-1 siblings, 0 replies; 11+ messages in thread
From: Shawn Guo @ 2017-06-04 3:42 UTC (permalink / raw)
To: Leonard Crestez
Cc: Dong Aisheng, Stephen Rothwell, Matt Fleming, linux-kernel,
Octavian Purdila, Fabio Estevam, Paul E . McKenney,
linux-arm-kernel
On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> This option was removed by "make savedefconfig" in
> commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
>
> This happened because CONFIG_DEBUG_FS was implicitly selected by
> CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> tracepoints by default to aid in debugging")
>
> Recently however CONFIG_RCU_TRACE was completely removed by
> commit 6e74c237c410 ("rcu: Remove debugfs tracing")
>
> The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
> linux-next since next-20170517. This is bad, DEBUG_FS is extremely
> useful for kernel introspection and testing.
>
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Applied, thanks.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS
@ 2017-06-04 3:42 ` Shawn Guo
0 siblings, 0 replies; 11+ messages in thread
From: Shawn Guo @ 2017-06-04 3:42 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, May 26, 2017 at 02:26:06PM +0300, Leonard Crestez wrote:
> This option was removed by "make savedefconfig" in
> commit c5054a98bce4 ("ARM: imx_v6_v7_defconfig: Select SMSC_PHY")
>
> This happened because CONFIG_DEBUG_FS was implicitly selected by
> CONFIG_TREE_RCU_TRACE which defaulted to true because CONFIG_RCU_TRACE
> was enabled by default by commit 961518259b3b ("rcu: Enable RCU
> tracepoints by default to aid in debugging")
>
> Recently however CONFIG_RCU_TRACE was completely removed by
> commit 6e74c237c410 ("rcu: Remove debugfs tracing")
>
> The result is that imx_v6_v7_defconfig no longer includes DEBUG_FS on
> linux-next since next-20170517. This is bad, DEBUG_FS is extremely
> useful for kernel introspection and testing.
>
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Applied, thanks.
^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <41ed3514ffb9a858445150a91933b96e12086d73.1575998907.git.leonard.crestez@nxp.com>]
end of thread, other threads:[~2019-12-11 19:02 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-26 11:26 [PATCH] ARM: imx_v6_v7_defconfig: Explicitly restore CONFIG_DEBUG_FS Leonard Crestez
2017-05-26 11:26 ` Leonard Crestez
2017-05-26 15:42 ` Paul E. McKenney
2017-05-26 15:42 ` Paul E. McKenney
2017-05-29 11:58 ` Leonard Crestez
2017-05-29 11:58 ` Leonard Crestez
2017-05-29 15:11 ` Paul E. McKenney
2017-05-29 15:11 ` Paul E. McKenney
2017-06-04 3:42 ` Shawn Guo
2017-06-04 3:42 ` Shawn Guo
[not found] <41ed3514ffb9a858445150a91933b96e12086d73.1575998907.git.leonard.crestez@nxp.com>
[not found] ` <20191210204544.GA4078779@kroah.com>
2019-12-11 19:02 ` Leonard Crestez
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.