2005-01-08 11:04:15

by Andreas Hartmann

[permalink] [raw]
Subject: ksymoops 2.4.10 segfaults

Hello,


ksymoops segfaults in object.c while computing cmd_strlen, because
options->target is defined 'null':

/* Extract all symbols definitions from an object using nm */
static void read_nm_symbols(SYMBOL_SET *ss, const char *file, const
OPTIONS *options)
{
FILE *f;
char *cmd, *line = NULL, **string = NULL;
int i, cmd_strlen, size = 0;
static char const procname[] = "read_nm_symbols";
static char const nm_options[] = "--target=";

if (!regular_file(file, procname))
return;

printf ("Path to nm: %s\n",path_nm);
printf ("nm_options: %s\n",nm_options);
printf ("target: %s\n",(options->target));
printf ("file: %s\n",file);
cmd_strlen =
strlen(path_nm)+1+strlen(nm_options)+strlen(options->target)+1+strlen(file)+1;
printf ("length: %d\n",cmd_strlen);
cmd = malloc(cmd_strlen);


./ksymoops
ksymoops 2.4.10 on i686 2.4.29-pre3. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.29-pre3/ (default)
-m /usr/src/linux/System.map (default)

Warning: You did not tell me where to find symbol information. I will
assume that the log matches the kernel and modules that are running
right now and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.

Path to nm: /usr/local/bin/nm
nm_options: --target=
target: (null)
file: /lib-2.6/modules/2.4.29-pre3-swsusp/kernel/sound/pci/snd-via82xx.o
Segmentation fault (core dumped)


Kind regards,
Andreas Hartmann


2005-01-08 13:21:43

by Keith Owens

[permalink] [raw]
Subject: Re: ksymoops 2.4.10 segfaults

On Sat, 08 Jan 2005 12:01:57 +0100,
Andreas Hartmann <[email protected]> wrote:
>ksymoops segfaults in object.c while computing cmd_strlen, because
>options->target is defined 'null':

I have a fix for this in my ksymoops inbox. It will be released as
part of ksymoops 2.4.11 later today my time.