History log of /openbsd-current/usr.sbin/ldomctl/ldomctl.h
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.16 06-Oct-2022 kn

accept iodevices as NACs as well

Assignable PCIe devices have a root complex path and a more descriptive
I/O slot path; example output from a T4-2:

# ldomctl list-io | head -n2
PATH NAME
/@400/@2/@0/@8 /SYS/MB/PCIE0

ldom.conf(5) `iodevice' currently accepts PATH values, which are cryptic and
completely hardware specific, whereas NAME values are obvious (partially
same across machines) and match physical slot labels ("0 PCIe2 x8") besides
information from ILOM:
/System/PCI_Devices/Add-on/Device_0 location = PCIE0 (PCIe Slot 0).

Make ldom.conf `iodevice' accept either value; internally nothing changes.

Rename struct iodev's path member to dev to clarify this further.

OK kettenis


Revision tags: OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.15 30-Jan-2021 kn

Move global domain declaration to parse.y

This is the only object that uses it; required for "-fno-common".
OK kettenis


Revision tags: OPENBSD_6_7_BASE OPENBSD_6_8_BASE
# 1.14 21-Feb-2020 kn

Support devaliases for vnet

vnet devalias=netboot

Creates a device alias to be used in OBP:

{ok} boot netboot

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.13 20-Feb-2020 kn

Support devaliases for vdisk

vdisk "/var/ldom/miniroot.fs" devalias=miniroot

Creates a device alias to be used in OBP:

{ok} devlias
miniroot /virutal-devices@100/...

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.12 04-Jan-2020 kn

Add -n to init-system for validation only

"ldomctl init-system -n ldom.conf" only parses the configuration file
and exits; it is usable as unprivileged user, no devices are opened.

OK kettenis


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.15 30-Jan-2021 kn

Move global domain declaration to parse.y

This is the only object that uses it; required for "-fno-common".
OK kettenis


Revision tags: OPENBSD_6_7_BASE OPENBSD_6_8_BASE
# 1.14 21-Feb-2020 kn

Support devaliases for vnet

vnet devalias=netboot

Creates a device alias to be used in OBP:

{ok} boot netboot

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.13 20-Feb-2020 kn

Support devaliases for vdisk

vdisk "/var/ldom/miniroot.fs" devalias=miniroot

Creates a device alias to be used in OBP:

{ok} devlias
miniroot /virutal-devices@100/...

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.12 04-Jan-2020 kn

Add -n to init-system for validation only

"ldomctl init-system -n ldom.conf" only parses the configuration file
and exits; it is usable as unprivileged user, no devices are opened.

OK kettenis


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.14 21-Feb-2020 kn

Support devaliases for vnet

vnet devalias=netboot

Creates a device alias to be used in OBP:

{ok} boot netboot

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.13 20-Feb-2020 kn

Support devaliases for vdisk

vdisk "/var/ldom/miniroot.fs" devalias=miniroot

Creates a device alias to be used in OBP:

{ok} devlias
miniroot /virutal-devices@100/...

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.12 04-Jan-2020 kn

Add -n to init-system for validation only

"ldomctl init-system -n ldom.conf" only parses the configuration file
and exits; it is usable as unprivileged user, no devices are opened.

OK kettenis


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.13 20-Feb-2020 kn

Support devaliases for vdisk

vdisk "/var/ldom/miniroot.fs" devalias=miniroot

Creates a device alias to be used in OBP:

{ok} devlias
miniroot /virutal-devices@100/...

This helps navigating inside guests without remembering
device paths or rather their order as specified in the config.

OK kettenis


# 1.12 04-Jan-2020 kn

Add -n to init-system for validation only

"ldomctl init-system -n ldom.conf" only parses the configuration file
and exits; it is usable as unprivileged user, no devices are opened.

OK kettenis


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.12 04-Jan-2020 kn

Add -n to init-system for validation only

"ldomctl init-system -n ldom.conf" only parses the configuration file
and exits; it is usable as unprivileged user, no devices are opened.

OK kettenis


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.11 28-Nov-2019 kn

Add console command

"ldomctl console guest01" executes cu(1) on the domain's console.
Now more device minor guessing or copying; behaviour is completely analogue
to vmctl(8) on amd64.

OK kettenis


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.10 27-Nov-2019 kn

Add list-io command

list-io lists available PCIe devices to be used with ldom.conf(5)'s
iodevice parameter.

OK kettenis


Revision tags: OPENBSD_6_6_BASE
# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.9 05-Aug-2019 kettenis

Allow an optional stride in the vcpu specification. This makes it possible
to allocate virtual CPUs but not assign them to domains. This way you
can give domains exclusive access to a core without assigning all threads
of that core to the domain.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.8 28-Jul-2019 kettenis

Add support for configuring static direct I/O.


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.


# 1.7 16-Sep-2018 kettenis

Add support for setting NVRAM variables.


# 1.6 16-Sep-2018 kettenis

Various improvements to generate logical domain configurations that are
accepted by more modern firmwares. In particular on SPARC T3 machines.

Tested on a t1k and t5120.


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.5 01-Dec-2012 kettenis

Make it possible to share cores between domains.


# 1.4 26-Nov-2012 kettenis

Regeerate Hypervisor MD from scratch instead of modifying the existing one.


# 1.3 24-Nov-2012 kettenis

Get rid of some hard-coded constants. Improve memory allocation code.


# 1.2 24-Nov-2012 kettenis

Add code to create new system configuration. Work in progress, but there's
enough functionality to create a configuration for a t1k or t2k running
System Firmware 6.7.x.


# 1.1 05-Nov-2012 kettenis

Better code to download configurations onto the SP.