bug-grub
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Internal ZIP bug, "more" command, dynamic memory


From: OKUJI Yoshinori
Subject: Re: Internal ZIP bug, "more" command, dynamic memory
Date: Sat, 04 Nov 2000 02:02:19 +0900

From: "Volker Augustin" <address@hidden>
Subject: Re: Internal ZIP bug, "more" command, dynamic memory
Date: Fri, 03 Nov 2000 15:53:59 +0100

> thanks for the patch. I applied it and ran grub and it booted
> without printing anything at all.
> However, when I change the #if 0 in common.c to #if 1 (so that now
> track_int13 is executed),

  Don't do that. As I said, run the command "ioprobe" instead. The
command does the same thing as GRUB does at the startup time.

> grub prints registers... lots of them ... never ending ... and they
> are changing continuously, so it seems that grub is in an endless
> loop somewhere. But where can that be?

  To find it out, I added the dump routine. :)

  See the values of "IP" and "CS". If GRUB doesn't stop dumping
registers, their values should be repeated periodically. Write down
the repeated values, reboot your machine, and dump the memory regions
indicated by the addresses. In real mode, (CS << 4 | IP) represents
a currently executed (linear) address. So you can dump a target memory
region by "read ((CS << 4) | IP)". Note that GRUB doesn't evaluate any
expression, so you have to pass a pre-computed value to the command
"read". Then, you can disassemble the dumped binary code. If anything
is difficult for you, feel free to ask me.

Okuji



reply via email to

[Prev in Thread] Current Thread [Next in Thread]