This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PR3498: more efficient dwfl searching


On 07/07/2009 11:47 AM, Frank Ch. Eigler wrote:
> Hi -
> 
> I committed some code to dramatically improve the pass-2 and pass-3
> processing times for scripts that target the kernel, especially for
> kernel build trees that have oodles of files under
> /lib/modules/.../build.  It's basically using the offline module
> search function's predicate vigorously, so that stap doesn't bother
> open all .ko's on the system just for a kernel probe.
> 
> My early testing shows no problems, just speedups, but if you notice
> debuginfo being found less well than before, please let me know.

Indeed, my hardy "stap -l syscall.*" test is a bit faster now -- cool!

But it doesn't appear to handle module wildcards anymore:

> $ /usr/bin/stap -V
> SystemTap translator/driver (version 0.9.8/0.141 non-git sources)
> Copyright (C) 2005-2009 Red Hat, Inc. and others
> This is free software; see the source for copying conditions.
> $ /usr/bin/stap -l 'module("scsi*").function("*")' | wc -l
> 587
> $ ./run-stap -V
> SystemTap translator/driver (version 0.9.8/0.141 commit release-0.9.8-125-gae2552d)
> Copyright (C) 2005-2009 Red Hat, Inc. and others
> This is free software; see the source for copying conditions.
> $ ./run-stap -l 'module("scsi*").function("*")' | wc -l
> semantic error: missing x86_64 kernel/module debuginfo under '/lib/modules/2.6.29.5-191.fc11.x86_64/build' while resolving probe point module("scsi*").function("*")
> 0

I would guess that this bit needs more smarts:

> +  /* Reject mismatching module names */
> +  if (strcmp(modname, offline_search_modname))
> +    return 0;

Josh


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]