(2010/09/12 19:49), Felipe Contreras wrote: > On Thu, Aug 12, 2010 at 10:26 PM, Randy Dunlap <randy.dunlap@xxxxxxxxxx> wrote: >> From: Randy Dunlap <randy.dunlap@xxxxxxxxxx> >> >> KALLSYMS and KALLSYMS_ALL depend on DEBUG_KERNEL, so add that dependency. >> KALLSYMS_ALL depends on KALLSYMS, so select both of them, not just KALLSYMS_ALL. >> >> warning: (OPTPROBES && KPROBES && HAVE_OPTPROBES && !PREEMPT || MTD_UBI_DEBUG && MTD && SYSFS && MTD_UBI || UBIFS_FS_DEBUG && MISC_FILESYSTEMS && UBIFS_FS || LOCKDEP && DEBUG_KERNEL && TRACE_IRQFLAGS_SUPPORT && STACKTRACE_SUPPORT && LOCKDEP_SUPPORT || LATENCYTOP && HAVE_LATENCYTOP_SUPPORT) selects KALLSYMS_ALL which has unmet direct dependencies (DEBUG_KERNEL && KALLSYMS) >> >> Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx> >> Cc: Ananth N Mavinakayanahalli <ananth@xxxxxxxxxx> >> Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@xxxxxxxxx> >> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> >> Cc: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx> >> --- >> arch/Kconfig | 2 ++ >> 1 file changed, 2 insertions(+) >> >> --- linux-next-20100810.orig/arch/Kconfig >> +++ linux-next-20100810/arch/Kconfig >> @@ -45,6 +45,8 @@ config OPTPROBES >> def_bool y >> depends on KPROBES && HAVE_OPTPROBES >> depends on !PREEMPT >> + depends on DEBUG_KERNEL >> + select KALLSYMS >> select KALLSYMS_ALL >> >> config HAVE_EFFICIENT_UNALIGNED_ACCESS >> -- > > This causes another problem: > > arch/Kconfig:33:error: recursive dependency detected! > arch/Kconfig:33: symbol KPROBES depends on KALLSYMS > init/Kconfig:825: symbol KALLSYMS is selected by OPTPROBES > arch/Kconfig:44: symbol OPTPROBES depends on KPROBES > > The 'select KALLSYMS' is redundant. > > Otherwise: Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> > Thanks, let me clear the dependency; Kprobes uses kallsyms_lookup for finding target function and checking instruction boundary, thus CONFIG_KPROBES should select CONFIG_KALLSYMS and CONFIG_KALLSYMS_ALL. Optprobe is a optional feature which is supported on x86 arch, and it also uses kallsyms_lookup for checking instructions in the target function. Anyway, since optprobe itself is depends on kprobes, it doesn't need to select both of KALLSYMS/KALLSYMS_ALL. Thank you, -- Masami HIRAMATSU 2nd Dept. Linux Technology Center Hitachi, Ltd., Systems Development Laboratory E-mail: masami.hiramatsu.pt@xxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html