I'm sponsoring the following fast-track on behalf of Michael Corcoron with time-out set to 10/19/2009. The project requests minor binding only.
Introduction =========== Future Intel high-end server platforms support IOH/CPU/memory hot plug. To enable ACPI based IOH/CPU/memory hot plug, an ACPI hot plug daemon (acpihpd) is needed to handle events generated by the ACPI subsystem and maintain state changes. Release Binding =============== minor Dependency =========== The acpihpd daemon has dependency on syseventd daemon to relay hot plug events. It also has dependency on cfgadm framework and sbd plugin to handle hot plug events. Acpihpd receives hot plug events from syseventd and invokes cfgadm library to handle these events. Technical Detail ================ The acpihpd daemon registers for DR request events and handles them when they arrive. The acpihpd daemon would subscribe to EC_DR/ESC_DR_REQ sysevents (defined in PSARC/2000/189). When IOH/CPU/memory hot plug events arrive, the acpihpd parses the DR request and calls into the cfgadm library to add/remove devices from the system. DR requests are handled by cfgadm framework. The events that the acpihpd is interested in are published by ACPI virtual nexus driver (acpinex). ACPI BIOS generates ACPI system notifications when user initiates a device insertion/removal. These notifications will be forwarded to acpinex driver by the acpica driver. When acpinex driver gets notifications, it translates the device into Attachment Point and generates EC_DR/ESC_DR_REQ events. When EC_DR/ESC_DR_REQ events are relayed to acpihpd daemon, it invokes cfgadm library to handle the events. It also takes the responsibility to udpate other components as part of the DR operation, for example, notify power management by executing pmconfig command. The acpihpd is started and stopped using the standard Solaris service management facility. The acpihpd is an smf service, and will only be enabled on the platforms which supports IOH/CPU/memory hot plug. The proposed package for the acpihpd and its smf configuration files is SUNWacpihpd. This package name has not been registered yet. Interface table and Stability ============================= Interface Classification Comments ---------------------------------------------------------------------------- /usr/platform/i86pc/lib/acpihpd Project Private ACPI HP daemon /usr/platform/i86pc/lib/amd64/acpihpd Project Private ACPI HP daemon /lib/svc/method/acpihp Project Private acpihp service /var/svc/manifest/platform/i86pc/ Project Private acpihp manifest acpihpd.xml System Administration Commands acpihpd(1M) NAME acpihpd - ACPI hot plug daemon SYNOPSIS /usr/platform/i86pc/lib/acpihpd DESCRIPTION The ACPI hot plug daemon is a daemon process that runs on x86 platforms. The daemon is started by the service management facility. It communicates with the syseventd and cfgadm sub-systems to handle ACPI events from hotpluggable devices. The service FMRI for acpihpd is: svc:/platform/i86pc/acpihpd:default OPTIONS The acpihpd does not support any options. ERRORS acpihpd uses syslog(3C) to report status and error messages. All of the messages are logged with the LOG_DAEMON facility. Error messages are logged with the LOG_ERR and LOG_NOTICE priorities, and informational messages are logged with the LOG_DEBUG priority. The default entries in the /etc/syslog.conf file log all of the DCS error messages to the /var/adm/messages log. ATTRIBUTES See attributes(5) for descriptions of the following attri- butes: ____________________________________________________________ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | |_____________________________|_____________________________| | Availability | SUNWacpihpd | |_____________________________|_____________________________| SEE ALSO svcs(1), inetadm(1M), svcadm(1M), syslog(3C), syslog.conf(4), attributes(5) NOTES The acpihpd service is managed by the service management facil- ity, smf(5), under the service identifier: svc:/platform/sun4u/acpihpd:default