head -r333897 (usefdt and old PowerMac) questions
Mark Millard
marklmi at yahoo.com
Mon Dec 10 09:48:17 UTC 2018
On 2018-Dec-10, at 00:52, Dennis Clarke <dclarke at blastwave.org> wrote:
> On 12/10/18 3:33 AM, Mark Millard wrote:
>> On 2018-Dec-9, at 22:07, Dennis Clarke <dclarke at blastwave.org> wrote:
>>> On 12/10/18 12:35 AM, Mark Millard via freebsd-ppc wrote:
>>>> On 2018-May-19, at 21:27, Mark Millard <marklmi26-fbsd at yahoo.com> wrote:
>>>>> On 2018-May-19, at 9:14 PM, Nathan Whitehorn <nwhitehorn at freebsd.org> wrote:
>>>>>> You need to wait for one more patch. With that, usefdt=1 is confirmed working on PowerMac 11,2 (like the quad core). You must use vt, not sc, but everything should work out of the box once that patch is in. The only caveat is that bge0 and bge1 may swap numbers.
>>>>>> -Nathan
>>>>>
>>>>> Good to know. Thanks.
>>>>>
>>>>> "You must use vt, not sc": does this mean changing to not
>>>>> include sc in the kernel at all? Or will /boot/loader.conf
>>>>> having:
>>>>>
>>>>> kern.vty=vt
>>> I feel a bit out of the loop here. I don't know what that "kern.vty=sc"
>>> is for at all. Perhaps kernel video tty = sugar coated? Just a guess.
>> See: https://wiki.freebsd.org/Newcons
>>
>
> Will do.
>
>>>
>>> I can tell you that 341705 requires kern.smp.disabled=1 and usefdt=1 in
>>> order to boot without a strange freeze or panic. I will check out 341781
>>> now and see what new stability has arrived but 341705 requires hand
>>> holding and small prayers at boot time.
>> You are working with builds based on
>> /usr/src/sys/powerpc/include/vmparam.h having been updated. I am not.
>> The contexts are not the same and mine is a variation on the official
>> version, not the official version.
>
> I don't know what you mean by 'official'. I merely checkout head and
> build from there.
I used an odd mix of -r341766 and an older vmparam.h by content.
The combination likely has never been built by an official FreeBSD
build machine for public access, not even potentially for the
continuous integration builds.
Another difference may sometimes be that I normally build with kernel
debugging disabled for things like witness (but symbols not stripped).
This is not the default for head/ based builds.
There are other source differences as well:
# svnlite status /usr/src/ | sort
? /usr/src/sys/amd64/conf/GENERIC-DBG
? /usr/src/sys/amd64/conf/GENERIC-NODBG
? /usr/src/sys/arm/conf/GENERIC-DBG
? /usr/src/sys/arm/conf/GENERIC-NODBG
? /usr/src/sys/arm64/conf/GENERIC-DBG
? /usr/src/sys/arm64/conf/GENERIC-NODBG
? /usr/src/sys/powerpc/conf/GENERIC64vtsc-DBG
? /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG
? /usr/src/sys/powerpc/conf/GENERICvtsc-DBG
? /usr/src/sys/powerpc/conf/GENERICvtsc-NODBG
M /usr/src/Makefile.inc1
M /usr/src/Makefile.libcompat
M /usr/src/contrib/gcc/unwind-dw2.c
M /usr/src/contrib/gcc/unwind-dw2.h
M /usr/src/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
M /usr/src/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp
M /usr/src/crypto/openssl/crypto/armcap.c
M /usr/src/lib/libkvm/kvm_powerpc.c
M /usr/src/lib/libkvm/kvm_private.c
M /usr/src/release/Makefile.vm
M /usr/src/release/scripts/mk-vmimage.sh
M /usr/src/release/tools/vmimage.subr
M /usr/src/secure/lib/libcrypto/Makefile
M /usr/src/stand/defs.mk
M /usr/src/stand/powerpc/boot1.chrp/Makefile
M /usr/src/stand/powerpc/kboot/Makefile
M /usr/src/sys/arm/allwinner/aw_mmc.c
M /usr/src/sys/arm64/arm64/identcpu.c
M /usr/src/sys/conf/kmod.mk
M /usr/src/sys/conf/ldscript.powerpc
M /usr/src/sys/ddb/db_main.c
M /usr/src/sys/ddb/db_script.c
M /usr/src/sys/dev/mmc/mmc.c
M /usr/src/sys/dev/mmc/mmcreg.h
M /usr/src/sys/dev/mmc/mmcsd.c
M /usr/src/sys/gnu/dts/arm/sun8i-h3-orangepi-pc.dts
M /usr/src/sys/kern/subr_pcpu.c
M /usr/src/sys/powerpc/aim/mmu_oea64.c
M /usr/src/sys/powerpc/include/vmparam.h
M /usr/src/sys/powerpc/ofw/ofw_machdep.c
M /usr/src/sys/powerpc/powerpc/interrupt.c
M /usr/src/sys/powerpc/powerpc/mp_machdep.c
M /usr/src/sys/powerpc/powerpc/trap.c
M /usr/src/sys/sys/buf.h
M /usr/src/sys/vm/swap_pager.c
M /usr/src/sys/vm/vm_page.c
M /usr/src/sys/vm/vm_pageout.c
M /usr/src/usr.bin/top/machine.c
But most of this that applies to powerpc has been in place
in my context well before /usr/src/sys/powerpc/include/vmparam.h
was updated for the macro in question, i.e., before I needed
to do the revert of the vmparam.h content.
Some of the above is from trying to get evidence for some
past problems that I ran into instead of being intended
functional changes.
My GENERIC*'s include the official one and then make
changes. To avoid problems for clang-based kernel
builds, I do build-in a coupe of things that would
normally be dynamically loaded.
There are a few of the above that I only use for self-hosted
builds on powerpc64. The rest I use the same source for all
the TARGET_ARCH's that I build for (cross and self hosted).
Of course some files only contribute for a specific range of
TARGET_ARCH's.
>> I'm not sure when I will next do anything remotely interesting with the
>> G5. There might not be much to follow for a while.
>
> Minor note here is that 341781 boots just fine without any smp issues :
Was that via just usefdt=1 ? Both ways of booting?
> dclarke at eris$ uname -aU
> FreeBSD eris 13.0-CURRENT FreeBSD 13.0-CURRENT r341781 GENERIC powerpc 1200086
>
> . . .
>
> Built from https://svn.freebsd.org/base/head/ which should be 'official'.
>
I'm the one more likely to be doing builds based on odd vintage
mixes and other source modifications if I understand right. I was
expecting your builds to be (closer to) matching an official build
on an official server. I count continuous integration builds
seen via ci.freebsd.org as official and publicly accessible.
Since the continuous integration builds take as long as they do,
some check-ins to not get a build without later check-ins also
being involved. This ends up with more of an as-if comparison
for judging "close to official" status.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-ppc
mailing list