Re: [PATCH 0/6] gcov kernel support

From: Andrew Morton
Date: Mon Jun 09 2008 - 15:12:22 EST


On Mon, 09 Jun 2008 15:49:16 +0200 Peter Oberparleiter <peter.oberparleiter@xxxxxxxxxx> wrote:

> Andrew Morton wrote:
> > On Mon, 02 Jun 2008 15:33:51 +0200 Peter Oberparleiter <peter.oberparleiter@xxxxxxxxxx> wrote:
> >
> >> This is version #3 of the gcov kernel support patch set
> >
> > My build tree is now filled with dead symlinks, like
> >
> > lrwxrwxrwx 1 akpm akpm 64 Jun 9 00:06 security/selinux/nlmsgtab.gcda -> /sys/kernel/debug/gcov/usr/src/25/security/selinux/nlmsgtab.gcda
>
> Unfortunately a necessary evil of this approach: symlinks are created
> for all compiled source files while link targets are only available when
> the corresponding code is executed. In other words: those links will be
> dead for source files which don't compile to actual code and for modules
> as long as they are not loaded.

It doesn't seem awfully useful. I don't run kernels on my build
machines and I'm sure many are in the same situation. So gcov is going
to need a way of locating these files on the *target* machine. And
once that is available, there is no need to add all these symlinks into
the build directory.

> > Which causes (at least)
> >
> > ctags: Warning: cannot open source file "security/selinux/ss/conditional.gcda" : No such file or directory
> > ctags: Warning: cannot open source file "security/selinux/netlink.gcda" : No such file or directory
> > ctags: Warning: cannot open source file "security/selinux/netlabel.gcda" : No such file or directory
>
> > and probably other thing which I haven't discovered yet.
>
> I'm sure there's some kind of 'find' magic that can be used to work
> around dead links. I'll see how this can be applied to the ctags case -
> though neither 'make tags' nor 'make TAGS' seem to produce any warnings
> on my system..

I use

ctags -R --excmd=pattern --format=1

--
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/