All of lore.kernel.org
 help / color / mirror / Atom feed
From: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
To: Felipe Contreras <felipe.contreras@gmail.com>
Cc: Randy Dunlap <randy.dunlap@oracle.com>,
	lkml <linux-kernel@vger.kernel.org>,
	linux-next@vger.kernel.org,
	Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
	Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>,
	"David S. Miller" <davem@davemloft.net>,
	akpm <akpm@linux-foundation.org>,
	2nddept-manager@sdl.hitachi.co.jp
Subject: Re: [PATCH -next] optprobes: fix kconfig depends/selects
Date: Mon, 13 Sep 2010 19:14:13 +0900	[thread overview]
Message-ID: <4C8DF975.4040502@hitachi.com> (raw)
In-Reply-To: <AANLkTi=rAq7mGYD02bjZQ1j59J3U2ahHS0mqkULv-648@mail.gmail.com>

(2010/09/13 18:41), Felipe Contreras wrote:
> On Mon, Sep 13, 2010 at 10:15 AM, Masami Hiramatsu
> <masami.hiramatsu.pt@hitachi.com> wrote:
>> (2010/09/13 10:06), Masami Hiramatsu wrote:
>>> (2010/09/12 19:49), Felipe Contreras wrote:
>>>> On Thu, Aug 12, 2010 at 10:26 PM, Randy Dunlap <randy.dunlap@oracle.com> wrote:
>>>>> From: Randy Dunlap <randy.dunlap@oracle.com>
>>>>>
>>>>> 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@oracle.com>
>>>>> Cc:     Ananth N Mavinakayanahalli <ananth@in.ibm.com>
>>>>> Cc:     Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
>>>>> Cc:     "David S. Miller" <davem@davemloft.net>
>>>>> Cc:     Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
>>>>> ---
>>>>>  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@gmail.com>
>>>>
>>>
>>> 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.
>>
>> Hmm, wait, I might misunderstand something here. I thought
>> KALLSYMS_ALL added symbols of static functions.
>> But, does KALLSYMS_ALL just add symbols of variables?
>> If so, both of KPROBES and OPTPROBES require only KALLSYMS.
>> It means that they don't need to care about CONFIG_DEBUG_KERNEL.
> 
> So:
> -       select KALLSYMS_ALL
> +       depends on KALLSYMS_ALL
> 
> Because KALLSYMS_ALL depends on DEBUG_KERNEL && KALLSYMS.

No, what I meant is;
-       select KALLSYMS_ALL

:-)



-- 
Masami HIRAMATSU
2nd Dept. Linux Technology Center
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com

  reply	other threads:[~2010-09-13 10:14 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-12 19:26 [PATCH -next] optprobes: fix kconfig depends/selects Randy Dunlap
2010-08-17 14:55 ` Masami Hiramatsu
2010-08-17 15:03   ` Masami Hiramatsu
2010-09-12 10:49 ` Felipe Contreras
2010-09-12 18:34   ` Randy Dunlap
2010-09-12 18:41     ` Felipe Contreras
2010-09-12 18:46       ` Randy Dunlap
2010-09-13  1:06   ` Masami Hiramatsu
2010-09-13  7:15     ` Masami Hiramatsu
2010-09-13  9:41       ` Felipe Contreras
2010-09-13 10:14         ` Masami Hiramatsu [this message]
2010-09-13 11:11           ` Felipe Contreras
2010-09-13 10:25       ` [PATCH -next,-tip ] kprobes: Fix Kconfig dependency Masami Hiramatsu
2010-09-13 10:25         ` Masami Hiramatsu
2010-09-13 16:33         ` Randy Dunlap
2010-09-13 19:54         ` [tip:perf/urgent] " tip-bot for Masami Hiramatsu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C8DF975.4040502@hitachi.com \
    --to=masami.hiramatsu.pt@hitachi.com \
    --cc=2nddept-manager@sdl.hitachi.co.jp \
    --cc=akpm@linux-foundation.org \
    --cc=ananth@in.ibm.com \
    --cc=anil.s.keshavamurthy@intel.com \
    --cc=davem@davemloft.net \
    --cc=felipe.contreras@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=randy.dunlap@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.