------------------------------------------------------
The Completely Unsupported, Unsponsored, Unsanctioned
and Poorly Maintained Compaq x86 Server/FreeBSD FAQ
1st Revision 02/29/00
Author: Anonymous
-----------------------------------------------------
This document describes some known issues which may be
encountered when running FreeBSD on Intel architecture-
based servers from Compaq Computer Corporation. Note
that *BSD is not supported by Compaq Computer Corporation
in any way whatsoever. This document is specific to
FreeBSD 3.4 and FreeBSD 4.0RC2 as made available from
http://www.freebsd.org. FreeBSD.org and Compaq Computer
Corporation are in no way responsible or liable for the
information found in this document or the future
maintenance of this document.
This FAQ is not anywhere close to being complete. It
is meant to be a starting point for others. Feel free
to adopt this FAQ as your own and modify it as you see
fit. The original author asks only that reasonable
dilligence be applied to keep the information as accurate
as possible.
"Take this FAQ... Please!" - the Author
-----------------
Table of Contents
-----------------
1. What Compaq hardware is known to work with FreeBSD?
1.1 Which Compaq servers has FreeBSD been installed on successfully?
1.1.1 What configuration did the author use when writing this FAQ?
1.2 Which Compaq Array Controllers work with FreeBSD?
1.3 Which Compaq Network Interface Controllers work with FreeBSD?
1.4 Which Compaq Graphics Controllers are known to work with FreeBSD?
2. How should the server hardware be configured before installing FreeBSD?
2.1 Which Operating System should I select when initially
configuring the server with the Compaq System Configuration
Utility?
2.1.1 Why did the tlan driver fail to initialize with the
message: "tl0: couldn't map interrupt"?
2.2 Should I install a Compaq System Partition?
2.3 Are there any particular PCI slots in which various adapter
cards should be installed?
2.4 Are there any particular IRQ settings which should be used
for various types of adapter cards?
2.5 How should the SMART Array controller be configured?
3. Are there any operating system installation issues that I should
be aware of?
3.1 Are there any installation considerations when using a
Compaq SMART Array Controller?
3.2 Are there any installation considerations when using a
Compaq NetFlex or Netelligent NIC?
4. The OS is installed. Is there anything else I should know?
4.1 How can I make the kernel use > 16MB RAM?
4.1.1 Why is my system running so slow?
4.1.2 Why is my disk thrashing so much?
4.1.3 Why is my system swapping all the time?
4.2 How do I configure a kernel with support for Compaq
Smart Array controllers?
4.2.1 Why wasn't my SMART Array Controller found by the
kernel?
4.2.2 My CD-ROM drive or IDE hard drive is missing.
What happened?
4.3 How can I enable multiprocessor support?
=============================================================================
1. What Compaq hardware is known to work with FreeBSD?
Unfortunately, this is a short list at this time. The author
of this FAQ feels that all modern Compaq x86 server platforms
and server peripherals will run FreeBSD without much fussing
about. Since FreeBSD is currently unsupported by Compaq, there
is no list of officially tested or certified Compaq hardware
available. The author of this FAQ can only speak of hardware
which he has tested personally. Use the information at your
own risk. Feel free to adopt the FAQ as your own and update
it with information gained from your own experiences.
1.1 On which Compaq servers has FreeBSD been successfully
installed?
Compaq Proliant 5500 PIII Xeon
1.1.1 What configuration did the author use when writing this FAQ?
Compaq Proliant 5500
(2) Pentium III Xeon 400/100MHz 512k Cache Microprocessors
128MB RAM
Integrated ATI RAGE IIC (1280x1024x8bpp) (ATI Mach64 X Server)
Integrated Symbios 53C875 SCSI Controller (NCR Driver)
SMART-2SL, SMART-2/P Array Controllers (IDA Driver)
Smart Array 221 Array Controller (IDA Driver)
Netelligent 10/100 TX UTP NIC (TI ThunderLAN Driver)
The server was configured with both FreeBSD 3.4 and
FreeBSD 4.0 Release Candidate 2. No issues other than
those addressed by this FAQ were discovered.
1.2 Which Compaq array controllers work with FreeBSD?
The source code for the IDA driver in FreeBSD 4.0
mentions the following Compaq controllers specifically:
Compaq SMART-2/P
Compaq SMART-2SL
Compaq Smart Array 3200
Compaq Smart Array 3100ES
Compaq Smart Array 221
1.3 Which Compaq Network Interface Controllers have been found
to work with FreeBSD?
The source code for the TLAN driver mentions the
following Compaq NICs specifically:
Compaq Netelligent 10
Compaq Netelligent 10/100
Compaq Netelligent 10/100 Proliant
Compaq Netelligent 10/100 Dual Port
Compaq Netelligent 10/100 TX Embedded UTP
Compaq Netelligent 10 T/2 PCI UTP/Coax
Compaq Netelligent 10/100 TX UTP
Compaq NetFlex 3/P
Compaq NetFlex 3/P w/BNC
1.4 Which Graphics controllers are known to work with FreeBSD?
Integrated ATI RAGE IIC
2. How should the server hardware be configured before installing
a FreeBSD operating system?
It's probably best to start a new OS installation with a "clean",
unconfigured server. To reset the server to its factory default
configuration, boot the server with a Compaq SmartStart CD and
run the "System Erase Utility." NOTE! THIS WILL ERASE ALL
CONFIGURATION INFORMATION AS WELL AS ALL DATA ON ALL ATTACHED
HARD DRIVES! YOU HAVE BEEN WARNED!!!
After running the System Erase Utility, it will be necessary
to reboot the server using the SmartStart CD and then follow
the prompts to configure the server. It will be necessary to
select the "Manual Configuration" Installation Path when the
options is presented. It will also be necessary to run the
Array Configuration Utility, if applicable, and install the
System Partition. SmartStart will automatically walk you
through these steps after the System Erase utility has been
run.
2.1 Which Operating System should I select when initially
configuring the server with the System Configuration
Utility?
It has been found that selecting SCO UnixWare 2.1 as
the intended operating system will configure the hardware
correctly for FreeBSD. Most importantly, the I/O APIC
mode will be set to Full Table Mapped. This is one of
the settings made automatically when selecting UnixWare 2.1
as the OS.
2.1.1 Why did the tlan driver fail to initialize with the
message: "tl0: couldn't map interrupt"?
Multiprocessor support has been enabled in the kernel,
but the wrong OS was configured with the System Configuration
Utility. The simplest way to fix this is to set the
operating system type to UnixWare 2.1.
2.2 Should I install a Compaq System Partition?
While not strictly necessary, future configuration changes
will be much faster when the System Configuration Utility
is run from the hard drive rather than from CD-ROM or floppy
diskettes. Obviously, you are not as likely to misplace
the hard drive. The Compaq System Partition is recognized
by FreeBSD as the "Compaq Diagnostic" partition and is
automatically accessible from the FreeBSD Boot Manager. It
will be clearly marked within the fdisk utility.
2.3 Are there any particular PCI slots in which various adapter
cards should be installed?
It may be necessary to determine whether or not the
server has multiple PCI buses. If it does, the array
controller should be installed in a slot on the primary
bus. It is a good idea to balance out I/O activity
across multiple buses if applicable. Information regarding
each server model's bus and slot implementation can be found
in the documentation that was delivered with the server.
2.4 Are there any particular IRQ settings which should be used
for various types of adapter cards?
The important thing to consider is how IRQ's are shared
between devices. Only devices of the same type should
be configured to share IRQ's. Changing a standard device's
IRQ (such as for the PS/2 mouse) may require some kernel
hacking. It would be especially prudent to check that
the System Configuration Utility chose IRQs wisely when
third party adapters have been installed.
2.5 How should the SMART Array controller be configured?
The installation kernel does not include the IDA driver,
which is the driver for Compaq SMART Array controllers.
Additionally, the IDA driver "steals" the major number
from the WD IDE driver. If the installation kernel were
to include the IDA driver, the IDE CD-ROM drive would not
be useable as an installation device. The simple thing to
do is configure the SMART Array controller as a secondary
controller and use a small SCSI drive as the boot device.
This is done by configuring the "Controller Order" field
within the System Configuration utility as "First" for the
integrated SCSI controller and "Second" for the SMART Array
controller.
It should be possible to create a kern.flp diskette with a
kernel that includes the IDA driver and then perform a
network installation or install the OS from a SCSI CD-ROM
drive.
Before drives attached to a SMART Array Controller can
be accessed, logical drives must be configured by using
the Compaq Array Configuration Utility. You did run the
System Erase Utility, right?
3. Are there any operating system installation issues that I should
be aware of?
Modern Compaq x86 architecture servers are configured with IDE
CD-ROM drives and Symbios SCSI controllers. In most cases, you
should be able to simply boot from the FreeBSD CD-ROM and install
the OS as usual. Be careful when partitioning the disk that the
"Compaq Diagnostic" partition is not changed or deleted.
3.1 Are there any operating system installation considerations
when using a Compaq SMART Array Controller?
The installation kernel does not contain support for Compaq
SMART Array controllers. Unless a custom boot diskette is
created, SMART controllers will not be accessible during the
OS installation. Additionally, the SMART/IDA driver "steals"
the major number assigned to the WD IDE driver, rendering the
IDE CD-ROM drive unuseable.
3.2 Are there any installation considerations when using a
Compaq NetFlex or Netelligent NIC?
When configuring the Network Interface, Compaq NICs based
on the Texas Instruments ThunderLAN chip will be listed
as such, not as Compaq NICs.
4. The OS is installed. Is there anything else I should know?
You will probably want to build a custom kernel. The steps
are as follows:
- Change the working directory to: /usr/src/sys/i386/conf
- Copy the configuration file GENERIC to a new file. In
this example, we use the name "LOCAL"
- Edit LOCAL and make the appropriate changes. (The file
LINT contains descriptions of all of the possible
settings that can be made.)
- Execute the command 'config LOCAL'
- Change the working directory to: ../../compile/LOCAL
- Execute the commands 'make depend', 'make' and 'make install'
NOTE: The original kernel is retained as kernel.GENERIC. If
the new kernel won't boot, it should be possible to boot by
specifying kernel.GENERIC at the boot prompt.
4.1 How can I make the kernel use > 16MB RAM?
4.1.1 Why is my system running so slow?
4.1.2 Why is my disk thrashing so much?
4.1.3 Why is my system swapping all the time?
FreeBSD release 3.4 and earlier may not detect more than 16MB
of system RAM. FreeBSD 4.0RC does not have this problem. The
older kernels can be configured to use more RAM by following
these steps:
Edit your local kernel configuration file as described in
section 4 and add the following line:
options "MAXMEM=(1024*amount_of_ram_in_MB)"
For example, if the server has 512MB or RAM, add this line:
options "MAXMEM=(1024*512)"
Compile and install the new kernel and reboot.
To make sure that it worked, the command "dmesg | grep memory"
will display the amount of memory that the kernel will use.
4.2 How do I configure a kernel with support for Compaq
Smart Array controllers?
Edit your local kernel configuration file as described in
section 4 and add the following lines:
For release 3.4:
controller ida0 at isa? bio irq ? vector idaintr
disk id0 at ida0 drive 0
For release 4.0RC2:
device ida
device id
Compile and install the new kernel and reboot.
4.2.1 Why wasn't my SMART Array Controller found by the
kernel?
Most likely you just need to create a custom kernel
with the IDA driver added in. See section 4.2 of
this FAQ.
4.2.2 My CD-ROM drive or IDE hard drive is missing.
What happened?
You probably reconfigured the kernel with support
for SMART Array Controllers. See section 3.1 of
this FAQ.
4.3 How can I enable multiprocessor support?
Edit your local kernel configuration file as described in
section 4 and uncomment the following two lines:
options SMP
options APIC_IO
Note: The other SMP options can (and probably should) remain
commented out.
Compile and install the new kernel and reboot.
               (
geocities.com/siliconvalley/platform)                   (
geocities.com/siliconvalley)