[PATCH v2] ubifs: fix kconfig dependency warning

From: Randy Dunlap
Date: Tue Mar 29 2011 - 11:49:14 EST


On Tue, 29 Mar 2011 18:04:15 +0300 Artem Bityutskiy wrote:

> On Tue, 2011-03-29 at 08:01 -0700, Randy Dunlap wrote:
> > On 03/29/11 00:02, Artem Bityutskiy wrote:
> > > On Mon, 2011-03-28 at 13:40 -0700, Randy Dunlap wrote:
> > >> From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
> > >>
> > >> Fix another kconfig dependency warning, this time in ubifs.
> > >>
> > >> warning: (UBIFS_FS_DEBUG && LOCKDEP && LATENCYTOP) selects KALLSYMS_ALL which has unmet direct dependencies (DEBUG_KERNEL && KALLSYMS)
> > >>
> > >> Without this patch, we can have:
> > >> # CONFIG_KALLSYMS is not set
> > >> CONFIG_KALLSYMS_ALL=y
> > >> which is useless (does nothing unless KALLSYMS is enabled).
> > >>
> > >> However, ubifs builds successfully with or without this patch,
> > >> and it builds with this line completely deleted,
> > >> so what was this 'select' for? Just developer convenience?
> > >
> > > Well, here is the idea. You can compile UBIFS with debugging and without
> > > debugging. Without debugging the resulting ubifs.ko is much smaller, so
> > > some embedded people prefer it this way.
> > >
> > > If you select debugging support, then we'll compile it a lot of
> > > assertions, self-checks, test-modes, extra error messages with detailed
> > > dumps. And we want to see stackdumps when errors or problems happen,
> > > this is why we select KALLSYMS_ALL.
> > >
> > > So I guess instead we should do:
> > >
> > > select KALLSYMS
> > > select KALLSYMS_ALL
> >
> > Yes, that should do it. Thanks for the explanation.
>
> Will you submit a patch? Alternatively, I can make it myself. What is
> your preference?

Here's an updated patch. But since KALLSYMS_ALL depends on DEBUG_KERNEL,
the lines above aren't quite sufficient and I don't care to select
DEBUG_KERNEL.

---
From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>

Fix kconfig dependency warning in ubifs:

warning: (UBIFS_FS_DEBUG && LOCKDEP && LATENCYTOP) selects KALLSYMS_ALL which has unmet direct dependencies (DEBUG_KERNEL && KALLSYMS)

Without this patch, we can have:
# CONFIG_KALLSYMS is not set
CONFIG_KALLSYMS_ALL=y
which is useless (does nothing unless KALLSYMS is enabled).

Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
Cc: Artem Bityutskiy <dedekind1@xxxxxxxxx>
Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Cc: linux-mtd@xxxxxxxxxxxxxxxxxxx
---
fs/ubifs/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- linux-next-20110328.orig/fs/ubifs/Kconfig
+++ linux-next-20110328/fs/ubifs/Kconfig
@@ -47,7 +47,8 @@ config UBIFS_FS_DEBUG
bool "Enable debugging support"
depends on UBIFS_FS
select DEBUG_FS
- select KALLSYMS_ALL
+ select KALLSYMS
+ select KALLSYMS_ALL if DEBUG_KERNEL
help
This option enables UBIFS debugging support. It makes sure various
assertions, self-checks, debugging messages and test modes are compiled
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/