----- "Dave Anderson" <[email protected]> wrote:
> ----- "Shahar Luxenberg" <[email protected]> wrote:
>
> > Hi,
> >
> >
> >
> > Environment: Red Hat Enterprise Linux Server release 5.2 (Tikanga),
> > x86, 2.6.18-92.el5
> >
> > I’ve installed crash 5.0.0 and noticed lots of error messages during
> > startup of the form:
> >
> > ‘crash: input string too large: "804328c4:" (9 vs 8)’
> >
> > This doesn’t happen with crash 4.1.2
> >
> >
> >
> > While debugging it a little, I’ve noticed that BUG_x86 is calling gdb
> > with the x/i command:
> >
> > sprintf(buf1, "x/%ldi 0x%lx", spn->value - sp->value, sp->value);
> >
> > The return buffer (buf2) is: 0x80430800: push %ebp
> >
> > On 4.1.2, the return buffer (buf2) is: 0x80430800 <do_exit>: push %ebp
> >
> > This explains the problem since parse_line will parse the line
> > differently returning ‘0x80430800:’ on arglist[0] and nothing on
> > arglist[2] (crash 5.0.0) while returning 0x80430800 on arglist[0] and
> > ‘push’ on arglist[2].
> >
> > Have you noticed this kind of problem?
>
> I see it now, at least on 2.6.18-era kernels. It doesn't seem to happen
> with earlier RHEL4 (2.6.9-era) vmlinux files for some reason. And on anything
> later than 2.6.20, the code in question isn't run. Anyway, as you tracked
> it down, the x86 code disassembly output is different, but should be trivial
> to fix.
>
> Thanks for the report,
> Dave
Patch attached, and queued for the next release.
Dave
Index: crash/kernel.c
===================================================================
RCS file: /nfs/projects/cvs/crash/kernel.c,v
retrieving revision 1.221
retrieving revision 1.222
diff -u -r1.221 -r1.222
--- crash/kernel.c 7 Dec 2009 21:39:57 -0000 1.221
+++ crash/kernel.c 11 Jan 2010 19:21:44 -0000 1.222
@@ -1534,7 +1534,8 @@
if (parse_line(buf2, arglist) < 3)
continue;
- if ((vaddr = htol(arglist[0], RETURN_ON_ERROR, NULL)) >= spn->value)
+ if ((vaddr = htol(strip_ending_char(arglist[0], ':'),
+ RETURN_ON_ERROR, NULL)) >= spn->value)
continue;
if (STREQ(arglist[2], "ud2a")) {
--
Crash-utility mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/crash-utility