Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Sep 2014 21:28:49 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        Justin Hibbits <chmeeedalf@gmail.com>
Cc:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: PowerMac G5 boot hangups before Copyright notice: "Stopped at 0: illegal instruction 0" [10.1-BETA1 example]
Message-ID:  <6D729F43-662A-429E-9503-0148EC3250B1@dsl-only.net>
In-Reply-To: <CAHSQbTBXxrgXQdNeCs=C5wJaT_bmh9FU836O6VnJDbJuqCUujw@mail.gmail.com>
References:  <1118046C-0FF7-49FC-82DA-DB9A7A310991@dsl-only.net> <2ED3DB50-B985-4382-8FF2-3B44E7E65453@dsl-only.net> <CAHSQbTBXxrgXQdNeCs=C5wJaT_bmh9FU836O6VnJDbJuqCUujw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In part I sent directly to you because of a past exchange (July-27) =
where you had written:

> Nathan and I both speculate that it's
> dropping into Open Firmware (we make extensive use of OFW), and then
> messing something up, taking a page fault or something.

The specific text that I report and its uniformity when it is produced =
seems to add a little information beyond a speculated "page fault or =
something" and so might eventually help a little. As I understand the =
text it is reporting execution reaching address zero without any prior =
un-handled exceptions or other such that would stop it. A corrupted =
stack (pointer) so a bad return address or some such? I'd guess there =
are no explicit jumps to address zero so I expect that indirection is =
likely involved, with the content for the indirection messed up.

I really wish that I had a logic analyzer configuration for this. I've =
not found a way to make the failing context visible so far and the extra =
way of looking at things might have helped.




=3D=3D=3D
Mark Millard
markmi@dsl-only.net

On Sep 16, 2014, at 8:28 PM, Justin Hibbits <chmeeedalf@gmail.com> =
wrote:

Hi mark,

I see this on my G5, and I think it's due to the amount of RAM in the =
machine. More than 4gb seems to confuse open firmware when called by =
FreeBSD. There is some effort to remove the need of the callbacks but =
thus far it's not far along. The good news is that after it boots it's =
solid except when switching vtys, buy earlier this year or last year I =
added a sysctl hack to disable the call into open firmware on vty switch =
(don't recall offhand and not at my computer right now, but if you grep =
the sysctl output for reset and ofw you can find it).

-Justin

On Sep 16, 2014 8:01 PM, "Mark Millard" <markmi@dsl-only.net> wrote:
I've now spent time with rebooting and power-off/power-on for all 3 =
PowerMac G5's (one PowerMac7,2 and two PowerMac11,2's) and all 3 get the

> GDB: no debug ports present
> KDB: debugger backends: DDB
> KDB: current backend: DDB
> [ thread pid -1 tid 1006665719 ]
> Stopped at 0: illegal instruction 0
> db>

when they fail just before the Copyright notice would normally be =
displayed. None fail any earlier. At that spot none have failed any =
other way. It is the same SSD in all 3. (Happens with other SSD's as =
well.) Overall there is a mix of Radeon and NVIDIA display boards. =
Besides the SSD use and RAM upgrades the rest is stock equipment. scons =
used, not vt. (I've yet to try vt.)

Seeing a failure after the Copyright notice as been fairly rare in all =
my experiments from when I started last April or so. The ones that I've =
noted had Data Storage Interrupt reported. So far no examples of the =
above have been reported after the Copyright notice. So I'd guess that =
they are separate issues. Of course it seems that only in the last few =
days would I have seen the above sort of thing if it did happen after =
the Copyright notice: The prior history does not count for judgements =
about that.

=3D=3D=3D
Mark Millard
markmi at dsl-only.net

On Sep 16, 2014, at 8:15 AM, Mark Millard <markmi@dsl-only.net> wrote:

Using 10.1-BETA1 I added "options DDB" and "options GDB" to powerpc64's =
GENERIC64. (I also used WITH_DEBUG_FILES=3D, WITHOUT_CLANG=3D, and =
WITH_DEBUG=3D in /etc/make.conf.) So buildworld, kernel was basically =
just set up to have more of a debugging context around (including for =
any ports builds).

The result was new information about the PowerMac G5 boot hangups: The =
screen is no longer blank when the G5 is hung up without there being a =
Copyright notice yet. It says...

> GDB: no debug ports present
> KDB: debugger backends: DDB
> KDB: current backend: DDB
> [ thread pid -1 tid 1006665719 ]
> Stopped at 0: illegal instruction 0
> db>

(I had no ability to input at that point.) Normally the Copyright notice =
would have displayed instead of "[...]" and what follows. (I do not =
claim to have all the spacing, capitalization, and such correct above.)

That text is constant from hang to hang when it hangs just before it =
would normally output the Copyright notice: The numbers do not vary, =
much less the other text. It has never failed until after the two KDB =
messages are present. So far I've only tested one PowerMac G5, booting =
over and over for a few hours.



(I do not claim to be set up for remote kernel debugging. I just decided =
to let GDB go along for the ride when I added DDB.)

=3D=3D=3D
Mark Millard
markmi at dsl-only.net






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6D729F43-662A-429E-9503-0148EC3250B1>