Re: Can't boot new kernel

Rin Okuyama <[email protected]>
Newsgroups gmane.os.netbsd.ports.macppc
Message-ID <[email protected]>
On 2020/10/16 4:01, Martin Husemann wrote:
> On Thu, Oct 15, 2020 at 07:48:47PM +0200, Martin Husemann wrote:
>> I can not boot a new kernel:
> [..]
>> Dies like this:
>>
>> loading XCOFF
>>
>> tsize=f160 dsize=260 bsize=2750 entry=e00000
>> SECTIONS:
>> .text    00e00000 00e00000 0000f160 00000130
>> .data    00e10000 00e10000 00000260 0000f290
>> .bss     00e10260 00e10260 00002750 00000000
>> .gnu.att 00000000 00000000 00000014 0000f4f0
>> .ident   00000000 00000000 00000076 0000f504
>> loading .text, done..
>> loading .data, done..
>> clearing .bss, done..
>>
>>>> NetBSD/macppc OpenFirmware Boot, Revision 1.12
>> 12932396+167480 [467712+464269/
>> DEFAULT CATCH!, code=900 at   %SRR0: 00000000   %SRR1: 00083030
>>   ok
> 
> Seems to be gcc 9 fallout. Rin, anything special needed? You probably tested
> GENERIC only, this kernel has options DIAGNOSTIC.

Oh, yes, I'd forgotten it. GENERIC boots, but GENERIC+DIAGNOSTIC
does not.

This seems due to kernel size growth in GCC9; GCC9 adds more unwind
tables than GCC8. You can remove the most (all?) of them by adding
-fno-asynchronous-unwind-tables and -fno-unwind-tables options.
Then, DIAGNOSTIC kernel boots again.

Alternatively, by removing unnecessary features/drivers from config
file, DIAGNOSTIC kernel also boots. Therefore, I consider this is
just a problem of kernel size.

GENERIC+DIAGNOSTIC kernel exceeds some ``soft limit''. I haven't
figured out what is this limit exactly, but it is smaller than
``hard limit'' reported in PR port-macppc/54916.

Thanks,
rin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.