Re: head -r354701 seems to be why/when 32-bit powerpc FreeBSD stopped being able to boot PowerMac G5s (2 socket ones, anyway)

Brandon Bergren bdragon at imap.cc
Sat Jan 4 01:08:49 UTC 2020


I do have fixes for this (the offset computation was assuming generictrap was always generictrap) but there are still additional problems that I am trying to chase down.

I was banging my head on the bridge mode trap code for days and I still haven't isolated what's going wrong with memory.

I might just clean up and submit my fixes I have so far, even though they aren't sufficient to get things working fully again. I think we're also hitting a clang optimization issue. :-/

On Fri, Jan 3, 2020, at 3:18 AM, Mark Millard wrote:
> (NOTE: I only have access to 2-socket G5's, so I do not
> know the behavior for other kinds. I've access to both
> 2-cores-each and 1-core-each contexts.)
> 
> This analysis is based on installing
> artifact.ci.freebsd.org materials and testing
> if they boot the G5's or not. Other than
> a little /etc/fstab and /boot/loader.conf
> material, the artifact materials are unchanged.
> My builds are not involved.
> 
> -r354702 fails to boot. (Details later, below.)
> 
> -r354700 (the closest prior 32-bit powerpc
> artifcact) boots fine.
> 
> 
> -r354701 and -r354702 are:
> 
> 
> 
> Author: bdragon
> Date: Thu Nov 14 04:34:17 2019
> New Revision: 354701
> URL: 
> https://svnweb.freebsd.org/changeset/base/354701
> 
> 
> Log:
>   powerpc: Kernel fixes for ppc32 and powerpcspe w/ lld
>   
>   Fix wrong section ordering that was causing a ".got is not contiguous with
>   other relro sections" lld error. This also brings ldscript.powerpc and
>   ldscript.powerpcspe closer to ldscript.powerpc64.
>   
>   Also, remove unnecessary text relocs from the ppc32 AIM trap code.
> 
> 
> 
> Author: mav
> Date: Thu Nov 14 04:34:58 2019
> New Revision: 354702
> URL: 
> https://svnweb.freebsd.org/changeset/base/354702
> 
> 
> Log:
>   Make ntb(4) send bus_get_dma_tag() requests to parent buses passing real
>   bus' child pointers instead of grandchilds.
>   
>   DMAR does not like requests from devices not parented directly by PCI.
> 
> 
> 
> At this point I'm guessing -r354701 since it
> is powerpc specific.
> 
> 
> The following is based on typing from
> screen images . . .
> 
> Failure style #1:
> 
> . . .
> Trying to mount root from ufs:/dev/ada0s3 [rw,noatime]...
> SMP: 2 CPUs found; 2 CPUs usable; 1 CPUs woken
> WARNING: WITNESS option enabled, expect reduced performance.
> 
> (And that is all.)
> 
> Failure style #2:
> 
> . . .
> Trying to mount root from ufs:/dev/ada0s3 [rw,noatime]...
> SMP: 2 CPUs found; 2 CPUs usable; 1 CPUs woken
> WARNING: WITNESS option enabled, expect reduced performance.
> [ thread pid 1 tid 100002 ]
> Stopped at dsmisssize+0x68c: illegal instruction 0
> db> 
> 
> (So just 3 more lines showing up.)
> 
> 
> 
> NOTE: I do not claim that there are not more
> problems later in head's history that fail
> even earlier in the boot, thus hiding what is
> reported here. There is one that I've not yet
> isolated the first artifact version for. Thus,
> testing for what I'm reporting here may require
> using older vintages of FreeBSD, unless other
> problems are dealt with first.
> 
> 
> ===
> Mark Millard
> marklmi at yahoo.com
> ( dsl-only.net went
> away in early 2018-Mar)
> 
>

-- 
  Brandon Bergren
  bdragon at imap.cc


More information about the freebsd-ppc mailing list