Ifcpu.c32

From Syslinux Wiki
Jump to: navigation, search

ifcpu.c32 is a comboot module for Syslinux that checks some CPU flags and loads the appropriate label in a Syslinux configuration file.

This module is available in Syslinux 3.84 or later. Some options were added in later versions.

Requirements

  • working Syslinux environment
  • two booting entries (labels)

Syntax

ifcpu.c32 <options> <cpu_features> -- first_label -- second_label

When ifcpu.c32 is used with no additional parameters, the usage help is printed.

If the cpu_features match the current host, then first_label is loaded, else let's boot second_label.

The use of "--" is required!

Options

debug
display some debugging messages
dry-run
just do the detection, don't boot

CPU Features

64
CPU has to be x86_64 compatible
hvm
Processor must have hardware virtualization (hvm or svm)
hypervisor
Processor is running under an hypervisor
multicore
Processor must be multi-core
pae
Processor features Physical Address Extension (PAE)
smp
System has to be SMP

If you want to match several cpu features, just separate them with a single space.

Example

label test
 com32 ifcpu.c32
 append 64 hvm multicore -- boot_entry_1 -- boot_entry_2
label boot_entry_1
 kernel vmlinuz_64
 append ...
label boot_entry_2
 kernel vmlinuz
 append ...

See Also