When a 64 bit RHEL3 guest is installed on an AMD host system, it will use the x86_64 RHEL3 kernel. If only a single vCPU is assigned to the guest, the uniprocessor (UP) kernel will be installed, which encounters a known issue with the UP-APIC support when running on KVM. This problem can be avoided by booting the guest with the "noapic" guest kernel parameter or by assigning multiple vCPUs to the guest for installation. This will result in the SMP guest kernel being installed, which does not have this issue.
Additionally, x86_64 RHEL3 kernels do not include software IOTLB support which results in problems with emulated or assigned IO devices when more than 3584MB of memory is assigned to the guest. To avoid this problem, the ia32e kernel can be used instead of the x86_64 kernel, which does include software IOTLB support. This kernel also avoids the UP-APIC issue as it's an SMP kernel.
The recommended procedure for installing a 64bit RHEL3 guest on an AMD host would then be:
1) Configure the guest with a single CPU and 3584MB (or less) memory.
2) Post-install, interrupt booting and modify the kernel command line to include the "noapic" option.
3) Boot the guest and install the ia32e kernel.
4) Power off the guest, reconfigure assigned memory and CPUs as desired.
The guest should then behave normally and not require any extra boot options.
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
New Contents:
When a 64 bit RHEL3 guest is installed on an AMD host system, it will use the x86_64 RHEL3 kernel. If only a single vCPU is assigned to the guest, the uniprocessor (UP) kernel will be installed, which encounters a known issue with the UP-APIC support when running on KVM. This problem can be avoided by booting the guest with the "noapic" guest kernel parameter or by assigning multiple vCPUs to the guest for installation. This will result in the SMP guest kernel being installed, which does not have this issue.
Additionally, x86_64 RHEL3 kernels do not include software IOTLB support which results in problems with emulated or assigned IO devices when more than 3584MB of memory is assigned to the guest. To avoid this problem, the ia32e kernel can be used instead of the x86_64 kernel, which does include software IOTLB support. This kernel also avoids the UP-APIC issue as it's an SMP kernel.
The recommended procedure for installing a 64bit RHEL3 guest on an AMD host would then be:
1) Configure the guest with a single CPU and 3584MB (or less) memory.
2) Post-install, interrupt booting and modify the kernel command line to include the "noapic" option.
3) Boot the guest and install the ia32e kernel.
4) Power off the guest, reconfigure assigned memory and CPUs as desired.
The guest should then behave normally and not require any extra boot options.