On 09/22/2009 03:22 AM, Mark Wielaard wrote:
On Sun, 2009-09-20 at 21:04 -0700, Roland McGrath wrote:
> I believe it was a specific feature request to have /lib/`uname -r`/build
> get searched. You'd have to ask around or look through old PRs for
> systemtap to find the request. But I'm not comfortable changing this right
> now. Keeping consistent with the depmod behavior is the sort of
> excuse^H^H^H^H^H^Hstandard that I like, but we should take care to research
> the past concerns of users before making a change.
I asked around and it is indeed a feature of stap:
Build for kernel in given build tree. Can also be set with the
SYSTEMTAP_RELEASE environment variable.
Build for kernel in build tree /lib/modules/RELEASE/build. Can
also be set with the SYSTEMTAP_RELEASE environment variable.
So, that second case explicitly relies on searching the modules under
the 'build' subdir.
I think the doc is a little misleading. The second case is actually the
typical case, with a default of "-r $(uname -r)". The build tree is
certainly in the build subdir (makefiles, headers, etc.), but the
modules are searched starting in /lib/modules/RELEASE/.
Could it be that we search .../build because of vmlinux? If one makes a
custom kernel and does a "make modules_install", then all of the modules
get copied into /lib/modules/RELEASE/kernel/, but the unstripped,
uncompressed vmlinux is only available in the original build path.