NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
port-i386/56956: i386/pxeboot: cannot load netbsd kernel larger than 32 MiB with TFTP
>Number: 56956
>Category: port-i386
>Synopsis: i386/pxeboot: cannot load netbsd kernel larger than 32 MiB with TFTP
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: port-i386-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Aug 07 05:10:00 +0000 2022
>Originator: Wataru Ashihara
>Release: 9.2 (http://ftp.jaist.ac.jp/pub/NetBSD/NetBSD-9.2/i386/installation/misc/pxeboot_ia32.bin)
>Organization:
>Environment:
>Description:
In PXE boot, TFTP-loading "netbsd" binary fails with the following error:
>> NetBSD/x86 PXE boot, Revision 5.1 (Wed May 12 13:15:55 UTC 2021) (from NetBSD
9.2)
>> Memory: 625/2094828 k
Press return to boot now, any other key for boot menu
booting netbsd - starting in 0 seconds.
PXE BIOS Version 2.1
Using PCI device at bus 0 device 3 function 0
Ethernet address 52:54:00:ff:08:00
28306576+1562064+535088read section headers: Unknown error: code 60
boot: Input/output error
Boot fai
This happens when x86 machine receives TFTP data block 65536. Instead of
replying the ack, the machine shows the error above.
x86 machine TFTP server
<-- Data packet, Block: 65533
--> Acknowlegement, Block: 65533
<-- Data packet, Block: 65534
--> Acknowlegement, Block: 65534
<-- Data packet, Block: 65535
--> Acknowlegement, Block: 65535
<-- Data packet, Block: 65536
(no ack, showing error above)
And this happens when "netbsd" is larger than 512 B * 65536 = 32 MiB, when
compiling kernel without optimization (-O0).
QEMU with gdb told me the error occurs at here:
https://github.com/NetBSD/src/blob/0caacf7bc9bb96e96c948dd08a8dab0542c0220b/sys/lib/libsa/tftp.c#L121
>How-To-Repeat:
>Fix:
Use NFS as a workaround.
Home |
Main Index |
Thread Index |
Old Index