Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758150Ab0BRPDQ (ORCPT ); Thu, 18 Feb 2010 10:03:16 -0500 Received: from mail-vw0-f46.google.com ([209.85.212.46]:37274 "EHLO mail-vw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754417Ab0BRPDP convert rfc822-to-8bit (ORCPT ); Thu, 18 Feb 2010 10:03:15 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=QkOVOrGodOTfOi/A5z26MMJ+sV2K7we24gHLJkyMi1yGedOLoCeMbd77FHiquiK3Fo RAnBzH8swtvVoOGgpchFLaa4zBkHcEgt1p6i7dz67+7r4k+tE5i0okRePFz7MxDqREK8 pInEUfsqLcQlTLgV1N1XrHxUwPK1KrxdJH/1o= MIME-Version: 1.0 In-Reply-To: <20100218145055.GB855@nowhere> References: <1266491616-6270-1-git-send-regression-fweisbec@gmail.com> <1266491616-6270-3-git-send-regression-fweisbec@gmail.com> <8bd0f97a1002180318g6ce70480x571d7d332239d68b@mail.gmail.com> <20100218120944.GA2406@osiris.boeblingen.de.ibm.com> <8bd0f97a1002180412x6cc4f280u5444f013c6e3b670@mail.gmail.com> <20100218123453.GA5136@nowhere> <20100218132521.GB2406@osiris.boeblingen.de.ibm.com> <8bd0f97a1002180601i60c5eaa4p7639091c5b617702@mail.gmail.com> <20100218145055.GB855@nowhere> From: Mike Frysinger Date: Thu, 18 Feb 2010 10:02:52 -0500 Message-ID: <8bd0f97a1002180702k12db615pa3096b273ce2c222@mail.gmail.com> Subject: Re: [PATCH 2/3] tracing/kprobes: Make Kconfig dependencies generic To: Frederic Weisbecker Cc: Heiko Carstens , Ingo Molnar , LKML , Masami Hiramatsu , Martin Schwidefsky , "David S . Miller" , Paul Mundt , Steven Rostedt Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2299 Lines: 48 On Thu, Feb 18, 2010 at 09:50, Frederic Weisbecker wrote: > On Thu, Feb 18, 2010 at 09:01:12AM -0500, Mike Frysinger wrote: >> > --- a/arch/Kconfig >> > +++ b/arch/Kconfig >> > @@ -123,6 +123,10 @@ config USE_GENERIC_SMP_HELPERS >> > >> >  config HAVE_REGS_AND_STACK_ACCESS_API >> >        bool >> > +       help >> > +         This symbol should be selected by an architecure if it supports >> > +         the API needed to access registers and stack entries from pt_regs. >> > +         For example the kprobes-based event tracer needs this API. >> >> a bit vague ... arent there headers/functions people could look at ? >> perhaps you're talking about the regset functions (which is an API to >> access registers in pt_regs) ?  or you're talking about asm/syscall.h >> (which is an API to access registers in pt_regs) ? >> >> i'm not asking to be a pain, i'm asking because i really havent a >> clue.  if i wanted to add support for this stuff to the Blackfin arch, >> i wouldnt know where to start.  even after reading this help i'd fall >> back to grepping arch/x86/ and trying to divine a starting point from >> there. > > If an arch support kprobes, it just needs to select > HAVE_REGS_AND_STACK_ACCESS_API to figure out quickly what is missing, > as gcc will barf every missing clues you need. so should this new Kconfig option have an appropriate depends on KPROBES or something ? > For now it is stored is asm/ptrace.h, but that might be split in > the future, especially as ptrace has initially nothing related to > that. A documentation that deals with filenames or API enumerations > tend to be incidentally async with API evolutions. i dont expect there to be per-function documentation here ... such things below in the header files themselves (linux/regset.h is an example of how to approach this). but having a tip of reading a file or two (like HAVE_ARCH_TRACEHOOK) doesnt bit rot nearly as often. if the common API expected of headers hasnt yet been split, then i guess not much left to be done here. -mike -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/