Up to [local] / src / usr.sbin / ldomctl
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.43 / (download) - annotate - [select for diffs], Thu Oct 6 21:35:52 2022 UTC (20 months ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
OPENBSD_7_4_BASE,
OPENBSD_7_4,
OPENBSD_7_3_BASE,
OPENBSD_7_3,
HEAD
Changes since 1.42: +8 -7 lines
Diff to previous 1.42 (colored)
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 1.42 / (download) - annotate - [select for diffs], Sun Jan 31 05:14:24 2021 UTC (3 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1,
OPENBSD_7_0_BASE,
OPENBSD_7_0,
OPENBSD_6_9_BASE,
OPENBSD_6_9
Changes since 1.41: +2 -1 lines
Diff to previous 1.41 (colored)
last pieces of satisfying -fno-common
Revision 1.41 / (download) - annotate - [select for diffs], Mon Jun 29 18:25:26 2020 UTC (3 years, 11 months ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE,
OPENBSD_6_8
Changes since 1.40: +3 -1 lines
Diff to previous 1.40 (colored)
Fix "init-system" with multiple PCIe root complexes Contrary to other (single CPU) machines, the Oracle SPARC T4-2 machines come with two CPUs/two PCIe root complexes instead of one. ldomctl already accounts for this and interates over them but lacked a skip condition when iterating over subdevices to avoid linking devices in one complex to those in another. This fixes a NULL dereference in "init-system" on T4-2 machines and makes it produce working machine descriptions (.md files). Testing and confirmation on a T4-1 that single PCIe root complex machines still produce identical MDs with this from tracey, thanks! Reminded by a report on bugs@ from Kokuma who also confirmed this fix on their T4-2.
Revision 1.40 / (download) - annotate - [select for diffs], Sun May 24 22:08:54 2020 UTC (4 years ago) by kn
Branch: MAIN
Changes since 1.39: +1 -1 lines
Diff to previous 1.39 (colored)
Make "init-system -n" check vcpu and memory constraints Second attempt after config.c revision 1.37, this time merely delay the "-n" test until after constraint checks have been performed such that the PRI is still read, as required in order to get the total number of VCPUs and memory. OK kmos who also tested this
Revision 1.39 / (download) - annotate - [select for diffs], Sun May 24 22:00:45 2020 UTC (4 years ago) by kn
Branch: MAIN
Changes since 1.38: +4 -3 lines
Diff to previous 1.38 (colored)
msg
Revision 1.38 / (download) - annotate - [select for diffs], Fri May 22 21:54:20 2020 UTC (4 years ago) by kn
Branch: MAIN
Changes since 1.37: +13 -14 lines
Diff to previous 1.37 (colored)
Revert previous Total vcpu and memory are read from the PRI so constraint checks must not be done before that, noted by kettenis. The fact that "total_cpus" as a global variable (initialized with zero) is always smaller than the total number of configured vcpus and the fact that I only tested a negative example without a positive one made me jump the trigger, sorry.
Revision 1.37 / (download) - annotate - [select for diffs], Fri May 22 21:40:16 2020 UTC (4 years ago) by kn
Branch: MAIN
Changes since 1.36: +14 -13 lines
Diff to previous 1.36 (colored)
Make "init-system -n" check vcpu and memory constraints kmos noted that "-n" wouldn't bark at overallocation, only running without it would do so. Hoit setup code and delay the noaction bailout just after constraint checks such that they're always done. OK kmos
Revision 1.36 / (download) - annotate - [select for diffs], Tue Mar 17 21:24:22 2020 UTC (4 years, 2 months ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE,
OPENBSD_6_7
Changes since 1.35: +9 -2 lines
Diff to previous 1.35 (colored)
Print IO device names next to path with "list-io" Names help identify the right iodevice to be assigned in ldom.conf(5); they directly match the structure seen in the iLOM shell, and the output format is similar to Solaris "ldm list-io". OK kettenis
Revision 1.35 / (download) - annotate - [select for diffs], Sat Mar 7 18:51:06 2020 UTC (4 years, 3 months ago) by kn
Branch: MAIN
Changes since 1.34: +2 -2 lines
Diff to previous 1.34 (colored)
Initialise only the components list for "list-io" Nothing else is needed and pri_init() actually writes to the PRI file whereas pri_init_components() only reads (as expected in this code path). This allows listing IO devices from PRI files that are read-only; I noticed this by having the "factory-default" configuration protected with the system immutable flag "schg", see chflags(1).
Revision 1.34 / (download) - annotate - [select for diffs], Fri Feb 21 19:39:28 2020 UTC (4 years, 3 months ago) by kn
Branch: MAIN
Changes since 1.33: +5 -3 lines
Diff to previous 1.33 (colored)
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
Revision 1.33 / (download) - annotate - [select for diffs], Thu Feb 20 20:38:44 2020 UTC (4 years, 3 months ago) by kn
Branch: MAIN
Changes since 1.32: +7 -3 lines
Diff to previous 1.32 (colored)
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
Revision 1.32 / (download) - annotate - [select for diffs], Wed Jan 22 07:52:38 2020 UTC (4 years, 4 months ago) by deraadt
Branch: MAIN
Changes since 1.31: +3 -3 lines
Diff to previous 1.31 (colored)
delete wasteful ;; ok tedu
Revision 1.31 / (download) - annotate - [select for diffs], Sun Jan 5 19:54:05 2020 UTC (4 years, 5 months ago) by kn
Branch: MAIN
Changes since 1.30: +3 -5 lines
Diff to previous 1.30 (colored)
Zero initialize cpus and memory variables up front
Revision 1.30 / (download) - annotate - [select for diffs], Sat Jan 4 15:45:46 2020 UTC (4 years, 5 months ago) by kn
Branch: MAIN
Changes since 1.29: +4 -2 lines
Diff to previous 1.29 (colored)
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
Revision 1.29 / (download) - annotate - [select for diffs], Thu Nov 28 18:40:42 2019 UTC (4 years, 6 months ago) by kn
Branch: MAIN
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)
Use scan_scaled(3) for memory in ldom.conf Replace the hand-written routing with a proper library allowing even more formats. Since ldomctl's local util.h conflicts with the now used global util.h from libutil, rename it to ldom_util.h. Manual wording from amd64's vm.conf(5). OK kettenis
Revision 1.28 / (download) - annotate - [select for diffs], Wed Nov 27 19:54:10 2019 UTC (4 years, 6 months ago) by kn
Branch: MAIN
Changes since 1.27: +17 -1 lines
Diff to previous 1.27 (colored)
Add list-io command list-io lists available PCIe devices to be used with ldom.conf(5)'s iodevice parameter. OK kettenis
Revision 1.27 / (download) - annotate - [select for diffs], Mon Aug 5 19:27:47 2019 UTC (4 years, 10 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE,
OPENBSD_6_6
Changes since 1.26: +14 -5 lines
Diff to previous 1.26 (colored)
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.
Revision 1.26 / (download) - annotate - [select for diffs], Sun Jul 28 14:55:59 2019 UTC (4 years, 10 months ago) by kettenis
Branch: MAIN
Changes since 1.25: +4 -2 lines
Diff to previous 1.25 (colored)
Delete all CPUs from the primary and add back the number that we want to keep.
Revision 1.25 / (download) - annotate - [select for diffs], Sun Jul 28 14:51:07 2019 UTC (4 years, 10 months ago) by kettenis
Branch: MAIN
Changes since 1.24: +441 -4 lines
Diff to previous 1.24 (colored)
Add support for configuring static direct I/O.
Revision 1.24 / (download) - annotate - [select for diffs], Sun Sep 16 14:27:32 2018 UTC (5 years, 8 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE,
OPENBSD_6_5,
OPENBSD_6_4_BASE,
OPENBSD_6_4
Changes since 1.23: +31 -2 lines
Diff to previous 1.23 (colored)
Add support for setting NVRAM variables.
Revision 1.23 / (download) - annotate - [select for diffs], Sun Sep 16 12:17:05 2018 UTC (5 years, 8 months ago) by kettenis
Branch: MAIN
Changes since 1.22: +60 -30 lines
Diff to previous 1.22 (colored)
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 1.22 / (download) - annotate - [select for diffs], Tue Jan 17 22:10:55 2017 UTC (7 years, 4 months ago) by krw
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE,
OPENBSD_6_3,
OPENBSD_6_2_BASE,
OPENBSD_6_2,
OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)
Nuke some whitespace that keeps poking me in the eye as I try to steal code.
Revision 1.21 / (download) - annotate - [select for diffs], Sun Sep 28 18:42:50 2014 UTC (9 years, 8 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0,
OPENBSD_5_9_BASE,
OPENBSD_5_9,
OPENBSD_5_8_BASE,
OPENBSD_5_8,
OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.20: +4 -4 lines
Diff to previous 1.20 (colored)
Use TAILQ_FOREACH_SAFE when we might delete entries for the list.
Revision 1.20 / (download) - annotate - [select for diffs], Sat Sep 13 16:06:37 2014 UTC (9 years, 8 months ago) by doug
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)
Replace all queue *_END macro calls except CIRCLEQ_END with NULL. CIRCLEQ_* is deprecated and not called in the tree. The other queue types have *_END macros which were added for symmetry with CIRCLEQ_END. They are defined as NULL. There's no reason to keep the other *_END macro calls. ok millert@
Revision 1.19 / (download) - annotate - [select for diffs], Wed May 8 00:15:03 2013 UTC (11 years, 1 month ago) by gsoares
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6,
OPENBSD_5_5_BASE,
OPENBSD_5_5,
OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.18: +5 -1 lines
Diff to previous 1.18 (colored)
tweak hvmd_init_guest() to check if everything was OK in md_read(), otherwise print out an error string and exit. OK jasper@ kettenis@
Revision 1.18 / (download) - annotate - [select for diffs], Wed Apr 3 15:38:48 2013 UTC (11 years, 2 months ago) by kettenis
Branch: MAIN
Changes since 1.17: +19 -9 lines
Diff to previous 1.17 (colored)
Make it possible to explicitly specify the number of vcpus and the amount of memory for the primary domain. As a bonus this prevents people from shooting themselves in the foot by creating two domains names "primary".
Revision 1.17 / (download) - annotate - [select for diffs], Mon Apr 1 17:51:56 2013 UTC (11 years, 2 months ago) by kettenis
Branch: MAIN
Changes since 1.16: +24 -3 lines
Diff to previous 1.16 (colored)
Some firmware revisions on UltraSPARC T2 machines apparently insist on having "rngs" and "rng" nodes in the Hypervisor machine description.
Revision 1.16 / (download) - annotate - [select for diffs], Mon Mar 4 11:54:13 2013 UTC (11 years, 3 months ago) by otto
Branch: MAIN
Changes since 1.15: +3 -2 lines
Diff to previous 1.15 (colored)
- check parser's return value and exit if parsing failed - a duplicate domain name is a syntax error tweaked diff from @jasper; ok kettenis@ jasper@
Revision 1.15 / (download) - annotate - [select for diffs], Tue Feb 26 23:03:39 2013 UTC (11 years, 3 months ago) by kettenis
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3
Changes since 1.14: +10 -2 lines
Diff to previous 1.14 (colored)
Some firmware revisions provide a factory-default configuration that contains duplication arcs in the hvmd. Add a workaround for this problem. ok deraadt@
Revision 1.14 / (download) - annotate - [select for diffs], Sat Dec 8 18:45:26 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)
Fix previous.
Revision 1.13 / (download) - annotate - [select for diffs], Sat Dec 8 15:11:40 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.12: +16 -4 lines
Diff to previous 1.12 (colored)
Add a few missing properties to vnet-port devices to make Linux happy.
Revision 1.12 / (download) - annotate - [select for diffs], Sat Dec 1 14:35:41 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.11: +31 -2 lines
Diff to previous 1.11 (colored)
Add support for older firmware on UltraSPARC T1 machines.
Revision 1.11 / (download) - annotate - [select for diffs], Sat Dec 1 10:39:38 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.10: +59 -25 lines
Diff to previous 1.10 (colored)
Make it possible to share cores between domains.
Revision 1.10 / (download) - annotate - [select for diffs], Mon Nov 26 21:01:43 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.9: +1 -3 lines
Diff to previous 1.9 (colored)
We don't really need a "rngs" node in the Hypervisor MD.
Revision 1.9 / (download) - annotate - [select for diffs], Mon Nov 26 20:37:20 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.8: +5 -4 lines
Diff to previous 1.8 (colored)
Fix generation of "hvmd_mblock" node. Only add the "stick-frequency" property to the root node if the original Hypervisor MD had one to start with.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Nov 26 20:08:15 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.7: +235 -101 lines
Diff to previous 1.7 (colored)
Regeerate Hypervisor MD from scratch instead of modifying the existing one.
Revision 1.7 / (download) - annotate - [select for diffs], Sun Nov 25 21:45:37 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.6: +18 -2 lines
Diff to previous 1.6 (colored)
More changes to make this work on UltraSPARC T2 systems. Now there's enough functionality to create a configuration for a t5120 running System Firmware 7.1.x.
Revision 1.6 / (download) - annotate - [select for diffs], Sun Nov 25 18:23:02 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.5: +7 -2 lines
Diff to previous 1.5 (colored)
Use "id" property as physical ID for CPUs on UltraSPARC T2 and later.
Revision 1.5 / (download) - annotate - [select for diffs], Sun Nov 25 16:18:04 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.4: +63 -28 lines
Diff to previous 1.4 (colored)
Properly remove virtual device ports if we remove the associated channels.
Revision 1.4 / (download) - annotate - [select for diffs], Sun Nov 25 14:01:58 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.3: +94 -1 lines
Diff to previous 1.3 (colored)
Add support for building a new configuration based on a configuration that already has guest domains configured.
Revision 1.3 / (download) - annotate - [select for diffs], Sat Nov 24 22:54:02 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.2: +39 -13 lines
Diff to previous 1.2 (colored)
Delete "ncp" and "n2cp" virtual devices. Makes Solaris stop whining about not being able to configure crypto work queues.
Revision 1.2 / (download) - annotate - [select for diffs], Sat Nov 24 17:04:03 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
Changes since 1.1: +150 -43 lines
Diff to previous 1.1 (colored)
Get rid of some hard-coded constants. Improve memory allocation code.
Revision 1.1 / (download) - annotate - [select for diffs], Sat Nov 24 11:50:45 2012 UTC (11 years, 6 months ago) by kettenis
Branch: MAIN
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.