Subject: port-i386/25174: PXE boot not working with Soekris and NetBSD-current
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <jukka-netbsd@2004.salmi.ch>
List: netbsd-bugs
Date: 04/14/2004 00:52:11
>Number: 25174
>Category: port-i386
>Synopsis: PXE boot not working with Soekris and NetBSD-current
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: port-i386-maintainer
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Apr 13 22:53:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Jukka Salmi
>Release: NetBSD 2.0C
>Organization:
>Environment:
System: NetBSD himo.salmi.ch 2.0C NetBSD 2.0C (GENERIC) #0: Sat Apr 10 15:10:44 CEST 2004 build@himo.salmi.ch:/build/nbsdc/usr/src/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
There's a problem PXE booting Soekris[1] i386 systems (at least net4501,
net4521 and net4801) using NetBSD-current; it works fine with NetBSD 1.6.2
stable.
After the client has downloaded /usr/mdec/pxeboot_ia32_com0.bin (using TFTP),
it fetches the kernel (via NFS). After this is (successfully) done, nothing
happens, i.e. the kernel is not loaded.
However, replacing the current pxeboot_ia32_com0.bin with one from a stable
NetBSD system (tested with 1.6.2) solves the problem. Or rather works around
it...
[1] http://www.soekris.com/
>How-To-Repeat:
Set up a PXE netboot environment (NFS, DHCP, TFTP servers), and try booting
a Soekris box using PXE with /usr/mdec/pxeboot_ia32_com0.bin from a stable
and from a current NetBSD system. Booting with current pxeboot_ia32_com0.bin
looks like this:
================================================================================
comBIOS ver. 1.23a 20040211 Copyright (C) 2000-2003 Soekris Engineering.
net45xx
0064 Mbyte Memory CPU 80486 135 Mhz
Pri Mas SanDisk SDCFB-128 LBA 980-8-32 125 Mbyte
PXE-M00: BootManage UNDI, PXE-2.0 (build 082)
Slot Vend Dev ClassRev Cmd Stat CL LT HT Base1 Base2 Int
-------------------------------------------------------------------
0:00:0 1022 3000 06000000 0006 2280 00 00 00 00000000 00000000 00
0:18:0 100B 0020 02000000 0107 0290 00 3F 00 0000E001 A0000000 10
0:19:0 100B 0020 02000000 0107 0290 00 3F 00 0000E101 A0001000 11
0:20:0 100B 0020 02000000 0107 0290 00 3F 00 0000E201 A0002000 05
5 Seconds to automatic boot. Press Ctrl-P for entering Monitor.
comBIOS Monitor. Press ? for help.
> boot f0
BootManage UNDI, PXE-2.0 (build 082)
BootManage PXE-2.0 PROM 1.0, NATSEC 1.0, SDK 3.0/082 (OEM52)
Copyright (C) 1989,2000 bootix Technology GmbH, D-41466 Neuss.
PXE Software Copyright (C) 1997, 1998, 1999, 2000 Intel Corporation.
Licensed to National Semiconductor
CLIENT MAC ADDR: 00 00 24 C1 9A A8
CLIENT IP: 172.31.205.128 MASK: 255.255.255.0 DHCP IP: 172.31.205.1
GATEWAY IP: 172.31.205.1
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
>> NetBSD/i386 PXE Boot, Revision 1.1
>> (build@himo.salmi.ch, Sat Apr 10 16:36:11 CEST 2004)
>> Memory: 577/64512 k
Press return to boot now, any other key for boot menu
Starting in 0
PXE BIOS Version 2.1
Using PCI device at bus 0 device 18 function 0
Ethernet address 00:00:24:c1:9a:a8
net_open: client addr: 172.31.205.128
net_open: subnet mask: 255.255.255.0
net_open: net gateway: 172.31.205.1
net_open: server addr: 172.31.205.23
net_open: server path: /opt/diskless/net4501/root
1700676+39236+275344 [133616+113482]=0x2297fc
================================================================================
The system hangs here (where usually copyright information and $(uname -a)
is printed and the kernel is loaded).