From owner-freebsd-questions Tue Mar 4 5:39:47 2003 Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D957237B405 for ; Tue, 4 Mar 2003 05:39:37 -0800 (PST) Received: from antsrv1.ant.uni-bremen.de (antsrv1.ant.uni-bremen.de [134.102.176.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6A3A343F85 for ; Tue, 4 Mar 2003 05:39:36 -0800 (PST) (envelope-from rebehn@ant.uni-bremen.de) Received: from taipeh.ant.uni-bremen.de ([134.102.176.3] helo=ant.uni-bremen.de ident=rebehn) by antsrv1.ant.uni-bremen.de with esmtp (Exim 4.12) id 18qCdt-000Hen-00; Tue, 04 Mar 2003 14:39:37 +0100 Message-ID: <3E64AC55.8040406@ant.uni-bremen.de> Date: Tue, 04 Mar 2003 14:38:29 +0100 From: Heinrich Rebehn User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021130 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Heinrich Rebehn Cc: etherboot-users@lists.sourceforge.net Subject: Re: Cannot boot FreeBSD kernel with etherboot References: <3E648AF7.3080209@ant.uni-bremen.de> In-Reply-To: <3E648AF7.3080209@ant.uni-bremen.de> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Heinrich Rebehn wrote: > Hi list, > > trying to boot a FreeBSD kernel with etherboot 5.0.6 results in: > > ... > Loading 134.102.176.16:/tftpboot/bsd-diskless ...(ELF)... segment does > not fit in any memory region > > What does this mean? > > The kernel is 2390599 bytes. Did i hit a size limitation? > I am attaching the Etherboot Config file. I have found the solution myself, i forgot "-DIMAGE_FREEBSD", in fact i thought i set it at my 2nd try, but on the 2nd try, i had the floppy write protected, which i didn't notice.. :-( Now the kernel gets loaded, last output from etherboot is "........done" and then the system reboots.. :-( Heinrich > > Thanks for any hints > > Heinrich > > > ------------------------------------------------------------------------ > > # > # Config for Etherboot/32 > # > # Do not delete the tag OptionDescription and /OptionDescription > # It is used to automatically generate the documentation. > # > # > # User interaction options: > # > # -DASK_BOOT=n > # Ask "Boot from Network or from Local? " at startup, > # timeout after n seconds (0 = no timeout); this > # can be done in a more generic way by using the > # IMAGE_MENU, but it requires that the "bootp" > # server is accessible, even when booting locally. > # If unset, boot immediately using the default. > # -DANS_DEFAULT=ANS_NETWORK > # Assume Network to previous question > # (alternative: ANS_LOCAL) on timeout or Return key > # See etherboot.h for prompt and answer strings. > # -DBAR_PROGRESS > # Use rotating bar instead of sequential dots > # to indicate an IP packet transmitted. > # -DMOTD > # Display message of the day; read vendortags.html > # for further information. (Deprecated) > # -DIMAGE_MENU > # Allow to interactively chose between different > # bootimages; read vendortags.html for further > # information. (Deprecated) > # -DPASSWD > # Enable password protection for boot images; this > # requires -DIMAGE_MENU. (Deprecated) > # -DUSRPARMS > # Allow the user to interactively edit parameters > # that are passed to the booted kernel; you should > # probably enable -DPASSWD as well; this feature > # requires -DIMAGE_MENU. (Deprecated) > # -DANSIESC > # Evaluate a subset of common ANSI escape sequences > # when displaying the message of the day; this > # probably does not make sense unless you also > # define -DMOTD or at least -DIMAGE_MENU. It is > # possible to combine this option with -DCONSOLE_DUAL, > # but you have to be aware that the boot menu will > # no longer use ANSI escapes to be compatible with the > # serial console. Also be careful with your banners, as > # they may confuse your serial console. Generally you > # lose most of the ANSIESC functionality. (Deprecated) > # -DGFX > # Support extensions to the ANSI escape sequences for > # displaying graphics (icons or logos); this > # requires -DANSIESC. It probably does not make sense > # to use -DGFX if you have -DCONSOLE_DUAL, as the > # serial console normally cannot handle the GFX stuff. > # (Deprecated) > # -DSHOW_NUMERIC > # Display menu item labels as numbers. > # -DDELIMITERLINES > # Print a line of = characters at the start > # and also just before starting an image. > # -DSIZEINDICATOR > # Update a running total of the amount of code > # loaded so far, in kilobytes. > # > # Boot autoconfiguration protocol options: > # > # -DNO_DHCP_SUPPORT > # Use BOOTP instead of DHCP. > # -DRARP_NOT_BOOTP > # Use RARP instead of BOOTP/DHCP. > # -DREQUIRE_VCI_ETHERBOOT > # Require an encapsulated Vendor Class Identifier > # of "Etherboot" in the DHCP reply > # Requires DHCP support. > # -DALLOW_ONLY_ENCAPSULATED > # Ignore Etherboot-specific options that are not within > # the Etherboot encapsulated options field. This option > # should be enabled unless you have a legacy DHCP server > # configuration from the bad old days before the use of > # encapsulated Etherboot options. > # > # Boot tuning parameters: > # > # -DCONGESTED > # Turns on packet retransmission. Use it on a > # congested network, where the normal operation > # can't boot the image. > # -DBACKOFF_LIMIT > # Sets the maximum RFC951 backoff exponent to n. > # Do not set this unreasonably low, because on networks > # with many machines they can saturate the link > # (the delay corresponding to the exponent is a random > # time in the range 0..3.5*2^n seconds). Use 5 for a > # VERY small network (max. 2 minutes delay), 7 for a > # medium sized network (max. 7.5 minutes delay) or 10 > # for a really huge network with many clients, frequent > # congestions (max. 1 hour delay). On average the > # delay time will be half the maximum value. If in > # doubt about the consequences, use a larger value. > # Also keep in mind that the number of retransmissions > # is not changed by this setting, so the default of 20 > # may no longer be appropriate. You might need to set > # MAX_ARP_RETRIES, MAX_BOOTP_RETRIES, MAX_TFTP_RETRIES > # and MAX_RPC_RETRIES to a larger value. > # > # Boot device options: > # > # -DCAN_BOOT_DISK > # Can boot from floppy/hd if bootimage matches the > # pattern "/dev/[fhs]d*". > # -DTRY_FLOPPY_FIRST > # If > 0, tries that many times to read the boot > # sector from a floppy drive before booting from > # ROM. If successful, does a local boot. > # It assumes the floppy is bootable. > # Requires -DCAN_BOOT_DISK. > # -DEMERGENCYDISKBOOT > # If no BOOTP server can be found, then boot from > # local disk. The accessibility of the TFTP server > # has no effect, though! So configure your BOOTP > # server properly. You should probably reduce > # MAX_BOOTP_RETRIES to a small number like 3. > # > # Boot image options: > # > # -DTAGGED_IMAGE > # Add tagged image kernel boot support (Recommended). > # -DAOUT_IMAGE > # Add a.out kernel boot support (generic). > # -DELF_IMAGE > # Add generic ELF kernel boot support (Recommended). > # -DIMAGE_MULTIBOOT > # Add Multiboot image support (currently only > # for ELF images). > # Without this, generic ELF support is selected. > # -DIMAGE_FREEBSD > # Add FreeBSD image loading support (requires at least > # -DAOUT_IMAGE and/or -DELF_IMAGE). > # -DFREEBSD_KERNEL_ENV > # Pass in FreeBSD kernel environment > # -DAOUT_LYNX_KDI > # Add Lynx a.out KDI support > # > # -DDOWNLOAD_PROTO_TFTP > # If defined, boots by TFTP (Recommended). > # -DDOWNLOAD_PROTO_NFS > # If defined, boots from a NFS mount and disables > # TFTP loading. Default is DOWNLOAD_PROTO_TFTP > # if neither is defined. > # > # Console options: > # > # -DCONSOLE_CRT > # Set for CRT console (default if nothing else is set). > # -DCONSOLE_SERIAL > # Set for serial console. > # -DCONSOLE_DUAL > # Set for CRT and serial console, see comment at > # -DANSIESC and -DGFX. > # -DCOMCONSOLE > # Set port, e.g. 0x3F8. > # -DCONSPEED > # Set speed, e.g. 57600. > # -DCOMPARM > # Set Line Control Register value for data bits, stop > # bits and parity. See a National Semiconditor 8250/ > # 16450/16550 data sheet for bit meanings. > # If undefined, defaults to 0x03 = 8N1. > # -DCOMPRESERVE > # Ignore COMSPEED and COMPARAM and instead preserve > # the com port parameters from the previous user > # of the com port. Examples of previous user are a BIOS > # that implements console redirection, lilo and LinuxBIOS. > # This makes it trivial to keep the serial port > # speed setting in sync between multiple users. > # You set the speed in the first user and the > # rest follow along. > # > # BIOS interface options: > # > # -DPCBIOS > # Compile in support for the normal pcbios > # -DLINUXBIOS > # Compile in support for LinuxBIOS > # > # -DBBS_BUT_NOT_PNP_COMPLIANT > # Some BIOSes claim to be PNP but they don't conform > # to the BBS spec which specifies that ES:DI must > # point to the string $PnP on entry. This option > # works around those. This option must be added to > # LCONFIG. > # -DNO_DELAYED_INT > # Take control as soon as BIOS detects the ROM. > # Normally hooks onto INT18H or INT19H. Use only if you > # have a very non-conformant BIOS as it bypasses > # BIOS initialisation of devices. This only works for > # legacy ROMs, i.e. PCI_PNP_HEADER not defined. > # This option was formerly called NOINT19H. > # -DBOOT_INT18H > # Etherboot normally hooks onto INT19H for legacy ROMs. > # You can choose to hook onto INT18H (BASIC interpreter > # entry point) instead. This entry point is used when > # all boot devices have been exhausted. This option must > # be added to LCONFIG. > # -DCONFIG_PCI_DIRECT > # Define this for PCI BIOSes that do not implement > # BIOS32 or not correctly. Normally not needed. > # Only works for BIOSes of a certain era. > # -DCONFIG_TSC_CURRTICKS > # Uses the processor time stamp counter instead of reading > # the BIOS time counter. This allows Etherboot to work > # even without a BIOS. This only works on late model > # 486s and above. > # -DPXELOADER_KEEP_UNDI > # For implementation later with UNDI. > # -DIBM_L40 > # This option uses the 0x92 method of controlling > # A20 instead of the traditional method of using the > # keyboard controller. An explanation of A20 is here: > # http://www.win.tue.nl/~aeb/linux/kbd/A20.html > # This occurs on MCA, EISA and some embedded boards, > # and sometimes with the Fast Gate A20 option on some > # BIOSes. > # Enable this only if you are sure of what you are doing. > # > # Obscure options you probably don't need to touch: > # > # -DPOWERSAVE > # Halt the processor when waiting for keyboard input > # which saves power while waiting for user interaction. > # Good for compute clusters and VMware emulation. > # But may not work for all CPUs. > # -DT503_AUI > # Use AUI by default on 3c503 cards. > # -DMOVEROM > # If your motherboard does not cache adapter memory > # space, then this option can speed up loading of > # compressed BOOT-Prom images. It has no effect on > # uncompressed images. Unless you are very tight on > # free space, you will usually want to define this > # option. This option must be added to LCONFIG! > # (Recommended). > # -DUSE_LOWMEM_BUFFER > # Define to put some buffers below 0x10000 which > # may interfere with other programs (Deprecated). > # > > # These default settings compile Etherboot with a small number of options. > # You may wish to enable more of the features if the size of your ROM allows. > > # BIOS select don't change unless you know what you are doing > CFLAGS32+= -DPCBIOS > > # For prompting and default on timeout > CFLAGS32+= -DASK_BOOT=3 -DANS_DEFAULT=ANS_NETWORK > # If you prefer the old style rotating bar progress display > # CFLAGS32+= -DBAR_PROGRESS > # MOTD and Image Menu are no longer the default, use mk{elf,nbi}-menu instead > # CFLAGS32+= -DMOTD -DIMAGE_MENU > > # Enabling this makes the boot ROM require a Vendor Class Identifier > # of "Etherboot" in the Vendor Encapsulated Options > # This can be used to reject replies from servers other than the one > # we want to give out addresses to us, but it will prevent Etherboot > # from getting an IP lease until you have configured DHCPD correctly > # CFLAGS32+= -DREQUIRE_VCI_ETHERBOOT > > # Enabling this causes Etherboot to ignore Etherboot-specific options > # that are not within an Etherboot encapsulated options field. > # This option should be enabled unless you have a legacy DHCP server > # configuration from the bad old days before the use of > # encapsulated Etherboot options. > # CFLAGS32+= -DALLOW_ONLY_ENCAPSULATED > > # Limit the delay on packet loss/congestion to a more bearable value. See > # description above. If unset, do not limit the delay between resend. > CFLAGS32+= -DBACKOFF_LIMIT=7 -DCONGESTED > > # More optional features > # CFLAGS32+= -DANSIESC -DGFX > # CFLAGS32+= -DPASSWD -DUSRPARMS > # CFLAGS32+= -DCAN_BOOT_DISK -DTRY_FLOPPY_FIRST=4 > > # For a serial console, which can run in parallel with CRT console > # CFLAGS32+= -DCONSOLE_DUAL -DCOMCONSOLE=0x3F8 -DCONSPEED=9600 > > # Enable tagged image, generic ELF, Multiboot ELF > # or FreeBSD ELF/a.out boot image support > CFLAGS32+= -DTAGGED_IMAGE -DELF_IMAGE > # CFLAGS32+= -DAOUT_IMAGE -DIMAGE_MULTIBOOT -DIMAGE_FREEBSD > # CFLAGS32+= -DAOUT_IMAGE -DAOUT_LYNX_KDI > > # Change download protocol to NFS, default is TFTP > CFLAGS32+= -DDOWNLOAD_PROTO_NFS > > # Options to make a version of Etherboot that will work under linuxBIOS. > #CFLAGS32+= -DLINUXBIOS -DCONFIG_TSC_CURRTICKS -DCONSOLE_SERIAL -DCOMCONSOLE=0x3f8 -DCOMPRESERVE -DCONFIG_PCI_DIRECT -DELF_IMAGE > > # These options affect the loader that is prepended to the Etherboot image > LCONFIG+= -DMOVEROM > # LCONFIG+= -DBBS_BUT_NOT_PNP_COMPLIANT > # LCONFIG+= -DBOOT_INT18H > > # you should normally not need to change these > RM= rm -f > TOUCH= touch > CC32= gcc > AS32= as > LD32= ld > SIZE32= size > AR32= ar > RANLIB32= ranlib > > # If you use egcs or gcc-2.8, using -Os may help to reduce the code size. > # Otherwise use -O2 (under no circumstance use -O3 or above!). > CFLAGS32+= -Os -ffreestanding -fstrength-reduce -fomit-frame-pointer -mcpu=i386 > # Squeeze the code in as little space as possible. > CFLAGS32+= -malign-jumps=1 -malign-loops=1 -malign-functions=1 > CFLAGS32+= -Wall -W -Wno-format -Wno-unused > ASFLAGS32= > LDFLAGS32+= -N -Ttext $(RELOCADDR) -e _start > LDBINARY32= --oformat binary # flag for headerless binary > LIBC32= # not needed > > # Support for PXE emulation. Works only with FreeBSD to load the kernel > # via pxeboot, use only with DOWNLOAD_PROTO_NFS > #CFLAGS32+= -DFREEBSD_PXEEMU -- Heinrich Rebehn University of Bremen Physics / Electrical and Electronics Engineering - Department of Telecommunications - E-mail: mailto:rebehn@ant.uni-bremen.de Phone : +49/421/218-4664 Fax : -3341 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message