Re: Strange module question

Mike (mike@oakley.keble.ox.ac.uk)
Sun, 6 Sep 1998 20:23:55 +0100 (GMT)


On Sun, 6 Sep 1998, Mike wrote:

>
> 2.1.120 comes with version 0.4.2c of the AWE driver. I tried replacing
> this with version 0.4.3, and all seems to go fine, except:
>
> if awe_wave.o is inserted then insmod ne.o segfaults.
>
The exact commandline used is:
insmod ne io=0x0300

The segfault occurs at line 976 in insmod.c:

key = alloca(q-p + 6);
memcpy(key, "parm_", 5);
memcpy(key+5, p, q-p);
key[q-p+5] = 0;

p = get_modinfo_value(f, key);
key += 5;
if (p == NULL)
{
error("invalid parameter %s", key);
return 0;
}

sym = obj_find_symbol(f, key);
if (sym == NULL)
{
error("symbol for parameter %s not found", key);
return 0;
}

if (isdigit(*p))
{
min = strtoul(p, &p, 10);
if (*p == '-')
max = strtoul(p+1, &p, 10);
else
max = min;
}
else
min = max = 1;

>>> contents = f->sections[sym->secidx]->contents;

at this point, sym->secidx is 65538, which is clearly going to cause
problems.
key was correct ("io") so I'm stumped as to what is causing this...

--
Mike <rickettm@ox.compsoc.net>

"Microwave oven? Whaddya mean, it's a microwave oven? I've been watching Channel 4 on the thing for two weeks."

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/faq.html