I am sponsoring this fasttrack for Michael Christensen.
The project team is requesting a patch/micro release binding.
The 3 manpages (ldminfo.1m, libldom.3lib &
ldoms_capabilities.3ldoms) and the libldoms.h include
file are placed in the case directory.

The timer is set to expire on 1/14/10.

-------

1. Introduction

1.1 Project/Component Working Name

        Logical Domains Information API and ldminfo program

1.2 Name of Document Author/Supplier

        Michael Christensen

1.3 Date of This Document

        18-DEC-2009

1.4 Name of Major Document Customer(s)/Consumer(s)

        1.4.1 The PAC or CPT you expect to review your project

        1.4.2 The ARC(s) you expect to review your project

                PSARC

        1.4.3 The Director/VP who is sponsoring this project

                jerriann.meyer at sun.com

        1.4.4 The Name of Your Business Unit

                Solaris Core OS

1.5 Email Aliases

        1.5.1 Responsible Manager:      jay.jayachandran at sun.com

        1.5.2 Responsible Engineer:     michael.christensen at sun.com

        1.5.3 Marketing Manager:        duncan.hardie at sun.com

        1.5.4 Interest List:            ldoms-internal at sun.com

2. Project Summary

2.1 Project Description

        This project will implement Logical Domains Information API
        and ldminfo program on Solaris.  The API and ldminfo
        program will provide information about the currently running
        domain. Among the items that may be provided are:

        - Domain type (control, guest, I/O, service, root)
        - LDom Manager's LDom name for this domain (Domain name)
        - Domain Universally Unique ID (UUID)
        - Domain's control domain network nodename
        - Chassis Serial Number the domain is running on.

        None of the above items are currently easily obtainable from
        within a guest domain.  As an example, many customers have
        expressed a desire to run LDom manager scripts on the
        control domain initiated from a guest domain.  However, there
        is no easy way to either identify the network nodename of the
        control domain or to identify the LDom Manager's name for the
        current domain, which would be required for LDom Manager
        commands.  Further, many customers have requested a means of
        uniquely identifying each domain and also identifying the
        hardware platform that the domain is running on for
        accounting or resourcing.

        On the Solaris operating system, the Logical Domains Information
        API will be implemented as a library (libldoms) using
        information from the Guest Domain's Machine Description provided
        by FWARC 2005/115 (sun4v machine description), the sun4v MD
        uuid property from FWARC 2009/680 (Domain UUID property), the
        libds library provided by PSARC 2008/568 (Logical Domain's Domain
        Services) and using domain services provided by the logical
        domain agent daemon provided by PSARC 2009/459 (Logical Domains
        Agents on Solaris) and FWARC 2009/426 (Logical Domains Agents).
        The ldminfo program will utilize the libldoms library to display
        the various items of information provided.

2.2 Risks and Assumptions

        None.

3. Business Summary

3.1 Problem Area

        In an LDoms system, a user program or user has no easy way
        to identify what type of domain the program is being run
        on (e.g. control domain, guest domain, I/O domain, service
        domain).  Also a guest domain has no easy way to identify the
        network nodename of its control domain, what name the LDoms
        Manager running on the control domain uses to identify this
        domain, what is the domain's Universally Unique Identifier that
        The LDoms Manager uses to identify this domain or what the
        Chassis Serial Number of the platform it is currently running
        on.

3.2 Market/Requestor

        See FWARC 2005/633.

3.3 Business Justification

        See FWARC 2005/633.

3.4 Competitive Analysis

        The problems listed in 3.1 have been the subject of bug
        reports from customers.  Virtualization solutions provided by
        competitors have equivalent functionality.

3.5 Opportunity Window/Exposure

        See FWARC 2005/663.

3.6 How will you know when you are done?

        The work will be completed when the final code changes to
        implement Logical Domains Information API and ldminfo program
        are integrated into the Solaris Nevada gate and Solaris 10
        Update gates.

4. Technical Description

4.1 Overview

        On the Solaris operating system, Logical Domains Information
        API will be implemented as a user library "libldoms.so.1" and
        a user program "ldminfo" will be provided to display this
        information.  This information will be provided either via
        the sun4v Machine Description (FWARC/2005/115 and
        FWARC 2009/680) or via a domain service (FWARC/2009/426)
        provided by the logical domains agent daemon (PSARC/2009/459)
        on the control domain.

4.2 Bug/RFE Number(s)

        6680702 - Want a mechanism for Solaris to know if it is an LDOM
                and if so what type

        6873151 - RFE: unique ID for LDOMs to facillitate asset tracking

        6712763 - Need information about control domain from within a
                guest domain

4.3 Scope

        Not Applicable.

4.4 Out of Scope

        Not Applicable.

4.5 Interfaces

        4.5.1 Interfaces

        4.5.2 Imported Interfaces

             Interface              Classification            Comments
             =================================================================

             Domain Services API   Consolidation Private    PSARC/2008/568
             (libds.so.1)

             Logical Domains       Sun Private              PSARC/2009/459
             Agents on Solaris

             Logical Domains       Sun Private              FWARC/2009/426
             Agents

             Machine Description   Sun Private              FWARC/2005/115
             Device (/dev/mdesc)

             Domain UUID property  Consolidation Private    FWARC/2009/680

             UUID library API      Evolving                 PSARC/2002/094
             (libuuid.so.1)


       4.5.3 Exported Interfaces

       Interface               Classification  Comments
       ================================================================

       /usr/sbin/ldminfo              Committed   See ldminfo(1M)
       /usr/lib/libldoms.so           Committed   32-bit library
       /usr/lib/sparcv9/libldoms.so   Committed   64-bit library
       /usr/include/libldoms.h        Committed   Header file

       ldoms_capabilities()           Committed
       ldoms_domain_roles()           Committed
       ldoms_domain_name()            Committed
       ldoms_domain_uuid()            Committed
       ldoms_control_domain()         Committed
       ldoms_platform_serialno()      Committed

       LDMCAP_SUPPORTED               Committed
       LDMCAP_ENABLED                 Committed
       LDMROLE_CONTROL                Committed
       LDMROLE_IO                     Committed
       LDMROLE_SERVICE                Committed
       LDMROLE_ROOT                   Committed

   4.6 Doc Impact

       Man pages for ldminfo (1M), libldoms (3LIB),
       ldoms_capabilities(3LDOMS), ldoms_domain_roles(3LDOMS),
       ldoms_domain_name(3LDOMS), ldoms_domain_uuid(3LDOMS),
       ldoms_control_domain(3LDOMS), ldoms_platform_serialno(3LDOMS)

   4.7 Admin/Config Impact

       None.

   4.8 HA Impact

       None.

   4.9 I18N/L10N

        Not affected.

   4.10 Packaging & Delivery

        The Logical Domains Information API library libldoms and
        ldminfo program will be delivered as part of the existing
        Solaris packages SUNWcsl (Solaris 32bit libraries), SUNWcslx
        (Solaris 64bit libraries), SUNWcsu (Solaris User Core),
        SUNWhea (Solaris headers) on Sparc platforms only.

   4.11 Security Impact

        None.

   4.12 Dependencies

        None.

5. Reference Documents

        PSARC 2008/568 Logical Domain's Domain Services
        PSARC 2009/459 Logical Domain's Agents on Solaris
        FWARC 2005/115 sun4v machine description
        FWARC 2009/680 Domain UUID property

6. Resources and Schedule

   6.1 Projected Availability

       Q4FY10 (S10U9)

   6.2 Cost of Effort

       1 person month

   6.3 Cost of Capital Resources

   6.4 Product Approval Committee requested information

       6.4.1 Consolidation Or Component Name

             OS-Networking (ON)

       6.4.3 Type of CPT Approval Expected

             FastTrack

       6.4.4 Project Boundary Conditions

       6.4.5 Is this a necessary project for OEM agreements:

             No.

      6.4.6 Notes

      6.4.7 Target RTI Date/Release

            February 2010

      6.4.8 Target Code Design Review Date:

      6.4.9 Update approval addition:

            Not applicable

   6.5 ARC review type

        FastTrack

   6.6 ARC Exposure

        open

7. Prototype Availability:

    7.1 Prototype Availability

        A prototype is already available.

    7.2 Prototype Cost:

        A prototype is already available.

Reply via email to