From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <2e44aa9ac8b270827a30c09349cc4a35@collyer.net> Date: Tue, 17 Aug 2004 01:04:13 -0700 From: geoff@collyer.net To: 9fans@cse.psu.edu, geoff@collyer.net MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Cc: Subject: [9fans] booting & igbe Topicbox-Message-UUID: d4acca6a-eacd-11e9-9e20-41e7f4b1d025 (9fans is constipated tonight, so my messages will probably all arrive at once.) The builtin-PXE booting on the Intel gigabit Ethernet cards is nice. Unfortunately, it currently has to load 9pxeload in order to get plan9.ini parsed and then load the kernel itself, which requires a bootstrap igbe driver, which I think I have *this close* to working. I know jmk's away until the end of the month; anybody else who's familiar with the card (82540EM Intel PRO/1000 MT) who thinks this sounds familiar, please let me know: 9(pxe)load sends broadcast BOOTP requests, get a BOOTP reply, prints the IP & server name, sends a TFTP request, which is never seen by the server (verified with snoopy and prints in tftpd). It's going at 1Gb/s, full-duplex through an SMC 8508T gigabit switch, which otherwise has been working fine. The cpu server is also connected via igbe to the SMC switch at full duplex, 1Gb/s. Sending multiple BOOTP requests works as expected, drawing multiple replies. prints in the boot driver suggest that the packets are getting into the transmit ring buffer and that the card is draining the buffer. The bits are set to pad short packets, which shouldn't be necessary anyway since we're running full duplex. openbsd with an i82557 card can tftp from the same cpu server through the same SMC switch. Ether & IP addresses all look right. I've run out of theories of what could be going wrong, short of nasty bugs or deliberate malice somewhere. I'm trying to load fs kernels (i.e., small kernels that PXE can handle) currently, so it's tempting to just stick 1K of (possibly preprocessed plan9.ini) on the front of the kernel being loaded and let PXE load the whole mess and avoid 9pxeload completely.