From stevez@utopia71.West.Sun.COM Mon Nov 9 10:46:33 1998 Date: Mon, 9 Nov 1998 10:47:48 -0800 (PST) From: Steve Z. To: psarc@sac.eng.sun.com Subject: 1998/327: PCI Hot-plug -- opinion for PSARC review Content-Length: 13350 PostScript is available in the case directory. Please send comments by Friday, 11/13. I've shortened the review period by a weekend because I would like to file this opinion before leaving for a three week vacation on 11/21. If you object to the shortened review period, please let me know. NOTE TO PSARC: At the request of the DDI group (via Frits Vanderlinden), and with the concurrence of the case submitter (Prasad Singamsetty), I have changed the commitment level of the devctl_ap*, ioctls, and the ndi_ interface to Project Private (from Evolving, Sun Private, and Sun Private, respectively). The DDI group wants to be conservative in the commitment level for now, and since this is the only project that will use them right away, would prefer reducing the commitment level. They intend to bring fast-tracks to raise the commitment level when other projects need the interfaces. See section 4.5 of the opinion. SteveZ sun microsystems Systems Architecture Committee _________________________________________________________________ Subject: PCI Hot-Plug Support Submitted by: Prasad Singamsetty File: PSARC/1998/327/opinion.ms Date: November 4th, 1998 PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. Committee: Steve Z., Joseph Kowalski, David R., Brian W. Steering Committee: Foundation Steering Committee sfsc-opinion@scs.eng 1. Summary This project provides support within Solaris for hot- plugging PCI devices based on the PCI Hot-Plug Specification [2]. The project delivers the framework changes, the com- ponents common to all Solaris platforms, and platform- specific components for some Intel (x86) platforms. It sup- ports Hot Expansion and Hot Removal, but not the Like-for- Like Replacement feature, of the PCI Hot-Plug technology. 2. Decision & Precedence Information The project is approved as specified in reference [1]. The project introduces no incompatible changes and may be delivered in a minor release of Solaris. The project depends on the following project and may not be delivered before it: PSARC/1998/471 add-drv extensions 3. Interfaces The project exports the following interfaces. ______________________________________________________________________________ | Libdevice.so.1 Interfaces Exported (user level) | |_____________________|_________________|____________________________________| |Interface | Classification | Comments | |_____________________|_________________|____________________________________| |devctl_ap_acquire | Project Private| Acquire access to attachment point| |devctl_ap_connect | Project Private| CONNECT on attachment point | |devctl_ap_disconnect | Project Private| DISCONNECT on attachment point | |devctl_ap_configure | Project Private| CONFIGURE on attachment point | |devctl_ap_unconfigure| Project Private| UNCONFIGURE on attachment point | |devctl_ap_insert | Project Private| INSERT on attachment point | |devctl_ap_remove | Project Private| REMOVE on attachment point | |devctl_ap_getstate | Project Private| GETSTATE of attachment point | |devctl_ap_state_t | Project Private| State describing attachment point | |_____________________|_________________|____________________________________| PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 2 - _________________________________________________________________________ | Bus Nexus IOCTL Interfaces Exported | |_____________________|_________________|_______________________________| |Interface | Classification | Comments | |_____________________|_________________|_______________________________| |DEVCTL_AP_ACQUIRE | Project Private| ACQUIRE attachment point | |DEVCTL_AP_CONNECT | Project Private| CONNECT attachment point. | |DEVCTL_AP_DISCONNECT | Project Private| DISCONNECT attachment point | |DEVCTL_AP_INSERT | Project Private| INSERT attachment point | |DEVCTL_AP_REMOVE | Project Private| REMOVE attachment point | |DEVCTL_AP_CONFIGURE | Project Private| CONFIGURE attachment point | |DEVCTL_AP_UNCONFIGURE| Project Private| UNCONFIGURE attachment point | |DEVCTL_AP_GETSTATE | Project Private| Get state of attachment point| |DEVCTL_AP_CONTROL | Project Private| HPC specific control commands| |_____________________|_________________|_______________________________| ________________________________________________________________________ | NDI Interfaces Exported | |___________________|_________________|________________________________| |Interface | Classification | Comments | |___________________|_________________|________________________________| |ndi_dc_return_state| Project Private| Copy the attachment state info| |___________________|_________________|________________________________| _______________________________________________________________________________ | Hot-Plug Controller (HPCI) Interfaces Exported | |_________________________|_________________|_________________________________| |Interface | Classification | Comments | |_________________________|_________________|_________________________________| |hpc_register_bus | Project Private| Register the pci bus node | |hpc_unregister_bus | Project Private| Unregister the pci bus node | |hpc_install_event_handler| Project Private| Install an event handler | |hpc_remove_event_handler | Project Private| Remove an event handler | |hpc_connect | Project Private| Connect slot to bus | |hpc_disconnect | Project Private| Disconnect slot from bus | |hpc_insert | Project Private| Prepare slot for card insertion| |hpc_remove | Project Private| Prepare slot for card removal. | |hpc_control | Project Private| HW specific control operations | |hpc_register_slot | Project Private| Register the hot-plug slot | |hpc_unregister_slot | Project Private| Unregister the hot-plug slot | |hpc_event_notify | Project Private| Notify the event occurrence | |hpc_alloc_slot_ops | Project Private| Allocate slot_ops structure | |hpc_free_slot_ops | Project Private| Free slot_ops structure | |hpc_slot_ops_t | Project Private| HPC ops structure | |hpc_slot_info_t | Project Private| Slot info type | |hpc_pci_slotinfo_t | Project Private| PCI slot information structure | |_________________________|_________________|_________________________________| PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 3 - _____________________________________________________________________________________ | PCI Resource Allocator and Configurator (PRAC) Interfaces Exported | |_____________________|_________________|___________________________________________| |Interface | Classification | Comments | |_____________________|_________________|___________________________________________| |prac_setup | Project Private| Setup allocator for bus instance | |prac_teardown | Project Private| Teardown allocator for bus instance | |prac_configure | Project Private| Create devinfo tree and configure devices| |prac_unconfigure | Project Private| Remove the devinfo subtree | |prac_alloc_space | Project Private| Allocate space from I/O or memory | |prac_free_space | Project Private| Free space to I/O or memory | |prac_alloc_bus_number| Project Private| Allocate new bus number | |prac_free_bus_number | Project Private| Free bus back to pool | |prac_handle_t | Project Private| PRA handle for the bus | |_____________________|_________________|___________________________________________| The project imports the following interfaces. ____________________________________________________ | Interfaces Imported | |_________________|________________|_______________| |Interface | Classification| Comments | |_________________|________________|_______________| |PCI Hot-Plug Spec| Standard | Reference [2]| |_________________|________________|_______________| 4. Opinion No issues of any substance were raised by the committee. Most of the discussion was related to issues posed by the team in section 3.10 of [1] and, in the days following the review, by the DDI team. 4.1. Loading of the HPS module and the HPC driver module The team noted that, since no application directly accesses the hot-plug controller (HPC) device, some means must be provided for causing the HPC driver module to be loaded. It was agreed that the mechanism would be specified by another case. That case, PSARC/1998/471, add-drv extensions, has been filed and is listed as a dependency for this case. 4.2. Need for PROM devinfo nodes for hot-plugged devices The team pointed out that the prtconf utility does not show PROM-defined properties, so programs that parse its output may not work as expected if the PROM devinfo tree is not updated for hot-plugged devices. This observation led, after some discussion, to the advisory to the Steering Committee (below) that boot and kernel devinfo nodes should be treated uniformly. PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 4 - 4.3. Association of hot-plug slot with bus nexus node The association between a hot-plug slot, the device that controls the slot, and the bus nexus driver that is the parent of the device in the hot-plug slot is platform depen- dent. The team noted that this requires platform-specific means of associating these components, and that this case cannot provide a standard solution to this problem. One means, which will be used for some Intel platforms, is to put the required information in properties in the configura- tion (.conf) file for the hot-plug controller (HPC) device. On SPARC platforms, this information could be provided directly by firmware-generated properties. 4.4. Support for partial configure/unconfigure operation The team noted that some PCI cards (``multi-function'') con- tain multiple independent devices (e.g., a SCSI controller and an ethernet controller). While such devices are hot- plugged ``together'', they are otherwise logically indepen- dent. The committee agreed with the team's assertion that, although some work is needed to provide interfaces for con- figuring and unconfiguring individual device functions on an attachment point, this work need not be a part of this pro- ject. Existing projects (PSARC/1998/423, cfgadm extensions, and PSARC/1998/451, devctl(1M)) will provide the required interfaces, but this project is not directly dependent on them. 4.5. Commitment Levels When the case was approved at the inception review, the com- mitment level of the devctl_ap interfaces was Evolving, and that of the ioctls and the ndi interfaces was Sun Private. Subsequent to the review, the DDI group asked that the com- mitment level be lowered to Project Private, so long as the PCI Hot-plug project is the only one using the interfaces, with the intent upgrade the commitment level later. 5. Minority Opinion(s) None 6. Advisory Information With the advent of hot-plugging, the distinction between the parts of the device tree provided by the ``PROM'' (the firmware on SPARC or the booting system on Intel platforms) and the parts discovered by the kernel becomes somewhat artificial. As a result, the already confusing difference in output provided by the prtconf utility for boot vs. ker- nel nodes (e.g., some properties are not copied from the boot nodes into the kernel tree) is exacerbated. The Steer- ing Committee is advised to sponsor a project to bring PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 5 - uniformity to the treatment of boot and kernel nodes. 7. Appendices 7.1. Appendix A: Technical Changes Required None. 7.2. Appendix B: Technical Changes Advised None. 7.3. Appendix C: Reference Material Unless stated otherwise, path names are relative to the case directory, PSARC/1998/327. 1. Project Specification File: incept.materials/project.overview 2. PCI Hot-Plug Specification, Revision 1.0 File: incept.materials/Pcihp10.ps 3. Project One-Pager File: incept.materials/1pager 4. Response to PSARC 20 Questions File: incept.materials/20questions PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. From stevez@utopia71.West.Sun.COM Fri Nov 13 17:17:12 1998 Date: Fri, 13 Nov 1998 17:18:32 -0800 (PST) From: Steve Z. To: sac-review@sac.eng.sun.com Subject: PSARC/1998/327 - PCI Hot-Plug: opinion for SAC review Content-Length: 13404 Please review by 11/20/98. Postscript is available in the case directory. SteveZ ------ sun microsystems Systems Architecture Committee _________________________________________________________________ Subject: PCI Hot-Plug Support Submitted by: Prasad Singamsetty File: PSARC/1998/327/opinion.ms Date: November 4th, 1998 Committee: Steve Z., Joseph Kowalski, David R., son, Brian W. Steering Committee: Foundation Steering Committee sfsc-opinion@scs.eng 1. Summary This project provides support within Solaris for hot- plugging PCI devices based on the PCI Hot-Plug Specification [2]. The project delivers the framework changes, the com- ponents common to all Solaris platforms, and platform- specific components for some Intel (x86) platforms. It sup- ports Hot Expansion and Hot Removal, but not the Like-for- Like Replacement feature, of the PCI Hot-Plug technology. 2. Decision & Precedence Information The project is approved as specified in reference [1]. The project introduces no incompatible changes and may be delivered in a minor release of Solaris. The project depends on the following project and may not be delivered before it: PSARC/1998/471 add-drv extensions 3. Interfaces The project exports the following interfaces. ______________________________________________________________________________ | Libdevice.so.1 Interfaces Exported (user level) | |_____________________|_________________|____________________________________| |Interface | Classification | Comments | |_____________________|_________________|____________________________________| |devctl_ap_acquire | Project Private| Acquire access to attachment point| |devctl_ap_connect | Project Private| CONNECT on attachment point | |devctl_ap_disconnect | Project Private| DISCONNECT on attachment point | |_____________________|_________________|____________________________________| PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 2 - ______________________________________________________________________________ | Libdevice.so.1 Interfaces Exported (user level) | |_____________________|_________________|____________________________________| |Interface | Classification | Comments | |_____________________|_________________|____________________________________| |devctl_ap_configure | Project Private| CONFIGURE on attachment point | |devctl_ap_unconfigure| Project Private| UNCONFIGURE on attachment point | |devctl_ap_insert | Project Private| INSERT on attachment point | |devctl_ap_remove | Project Private| REMOVE on attachment point | |devctl_ap_getstate | Project Private| GETSTATE of attachment point | |devctl_ap_state_t | Project Private| State describing attachment point | |_____________________|_________________|____________________________________| _________________________________________________________________________ | Bus Nexus IOCTL Interfaces Exported | |_____________________|_________________|_______________________________| |Interface | Classification | Comments | |_____________________|_________________|_______________________________| |DEVCTL_AP_ACQUIRE | Project Private| ACQUIRE attachment point | |DEVCTL_AP_CONNECT | Project Private| CONNECT attachment point. | |DEVCTL_AP_DISCONNECT | Project Private| DISCONNECT attachment point | |DEVCTL_AP_INSERT | Project Private| INSERT attachment point | |DEVCTL_AP_REMOVE | Project Private| REMOVE attachment point | |DEVCTL_AP_CONFIGURE | Project Private| CONFIGURE attachment point | |DEVCTL_AP_UNCONFIGURE| Project Private| UNCONFIGURE attachment point | |DEVCTL_AP_GETSTATE | Project Private| Get state of attachment point| |DEVCTL_AP_CONTROL | Project Private| HPC specific control commands| |_____________________|_________________|_______________________________| ________________________________________________________________________ | NDI Interfaces Exported | |___________________|_________________|________________________________| |Interface | Classification | Comments | |___________________|_________________|________________________________| |ndi_dc_return_state| Project Private| Copy the attachment state info| |___________________|_________________|________________________________| _______________________________________________________________________________ | Hot-Plug Controller (HPCI) Interfaces Exported | |_________________________|_________________|_________________________________| |Interface | Classification | Comments | |_________________________|_________________|_________________________________| |hpc_register_bus | Project Private| Register the pci bus node | |hpc_unregister_bus | Project Private| Unregister the pci bus node | |hpc_install_event_handler| Project Private| Install an event handler | |hpc_remove_event_handler | Project Private| Remove an event handler | |hpc_connect | Project Private| Connect slot to bus | |hpc_disconnect | Project Private| Disconnect slot from bus | |_________________________|_________________|_________________________________| PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 3 - _______________________________________________________________________________ | Hot-Plug Controller (HPCI) Interfaces Exported | |_________________________|_________________|_________________________________| |Interface | Classification | Comments | |_________________________|_________________|_________________________________| |hpc_insert | Project Private| Prepare slot for card insertion| |hpc_remove | Project Private| Prepare slot for card removal. | |hpc_control | Project Private| HW specific control operations | |hpc_register_slot | Project Private| Register the hot-plug slot | |hpc_unregister_slot | Project Private| Unregister the hot-plug slot | |hpc_event_notify | Project Private| Notify the event occurrence | |hpc_alloc_slot_ops | Project Private| Allocate slot_ops structure | |hpc_free_slot_ops | Project Private| Free slot_ops structure | |hpc_slot_ops_t | Project Private| HPC ops structure | |hpc_slot_info_t | Project Private| Slot info type | |hpc_pci_slotinfo_t | Project Private| PCI slot information structure | |_________________________|_________________|_________________________________| _____________________________________________________________________________________ | PCI Resource Allocator and Configurator (PRAC) Interfaces Exported | |_____________________|_________________|___________________________________________| |Interface | Classification | Comments | |_____________________|_________________|___________________________________________| |prac_setup | Project Private| Setup allocator for bus instance | |prac_teardown | Project Private| Teardown allocator for bus instance | |prac_configure | Project Private| Create devinfo tree and configure devices| |prac_unconfigure | Project Private| Remove the devinfo subtree | |prac_alloc_space | Project Private| Allocate space from I/O or memory | |prac_free_space | Project Private| Free space to I/O or memory | |prac_alloc_bus_number| Project Private| Allocate new bus number | |prac_free_bus_number | Project Private| Free bus back to pool | |prac_handle_t | Project Private| PRA handle for the bus | |_____________________|_________________|___________________________________________| The project imports the following interfaces. ____________________________________________________ | Interfaces Imported | |_________________|________________|_______________| |Interface | Classification| Comments | |_________________|________________|_______________| |PCI Hot-Plug Spec| Standard | Reference [2]| |_________________|________________|_______________| 4. Opinion No issues of any substance were raised by the committee. Most of the discussion was related to issues posed by the team in section 3.10 of [1] and, in the days following the review, by the DDI team. PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 4 - 4.1. Loading of the HPS module and the HPC driver module The team noted that, since no application directly accesses the hot-plug controller (HPC) device, some means must be provided for causing the HPC driver module to be loaded. It was agreed that the mechanism would be specified by another case. That case, PSARC/1998/471, add-drv extensions, has been filed and is listed as a dependency for this case. 4.2. Need for PROM devinfo nodes for hot-plugged devices The team pointed out that the prtconf utility does not show PROM-defined properties, so programs that parse its output may not work as expected if the PROM devinfo tree is not updated for hot-plugged devices. This observation led, after some discussion, to the advisory to the Steering Committee (below) that boot and kernel devinfo nodes should be treated uniformly. 4.3. Association of hot-plug slot with bus nexus node The association between a hot-plug slot, the device that controls the slot, and the bus nexus driver that is the parent of the device in the hot-plug slot is platform depen- dent. The team noted that this requires platform-specific means of associating these components, and that this case cannot provide a standard solution to this problem. One means, which will be used for some Intel platforms, is to put the required information in properties in the configura- tion (.conf) file for the hot-plug controller (HPC) device. On SPARC platforms, this information could be provided directly by firmware-generated properties. 4.4. Support for partial configure/unconfigure operation The team noted that some PCI cards (``multi-function'') con- tain multiple independent devices (e.g., a SCSI controller and an ethernet controller). While such devices are hot- plugged ``together'', they are otherwise logically indepen- dent. The committee agreed with the team's assertion that, although some work is needed to provide interfaces for con- figuring and unconfiguring individual device functions on an attachment point, this work need not be a part of this pro- ject. Existing projects (PSARC/1998/423, cfgadm extensions, and PSARC/1998/451, devctl(1M)) will provide the required interfaces, but this project is not directly dependent on them. 4.5. Commitment Levels When the case was approved at the inception review, the com- mitment level of the devctl_ap interfaces was Evolving, and that of the ioctls and the ndi interfaces was Sun Private. Subsequent to the review, the DDI group asked that the PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. - 5 - commitment level be lowered to Project Private, so long as the PCI Hot-plug project is the only one using the inter- faces, with the intent upgrade the commitment level later. 5. Minority Opinion(s) None 6. Advisory Information With the advent of hot-plugging, the distinction between the parts of the device tree provided by the ``PROM'' (the firmware on SPARC or the booting system on Intel platforms) and the parts discovered by the kernel becomes somewhat artificial. As a result, the already confusing difference in output provided by the prtconf utility for boot vs. ker- nel nodes (e.g., some properties are not copied from the boot nodes into the kernel tree) is exacerbated. The Steer- ing Committee is advised to sponsor a project to bring uni- formity to the treatment of boot and kernel nodes. 7. Appendices 7.1. Appendix A: Technical Changes Required None. 7.2. Appendix B: Technical Changes Advised None. 7.3. Appendix C: Reference Material Unless stated otherwise, path names are relative to the case directory, PSARC/1998/327. 1. Project Specification File: incept.materials/project.overview 2. PCI Hot-Plug Specification, Revision 1.0 File: incept.materials/Pcihp10.ps 3. Project One-Pager File: incept.materials/1pager 4. Response to PSARC 20 Questions File: incept.materials/20questions PSARC/1998/327 Copyright 1998 Sun Microsystems, Inc. From r.@jetsun.eng.sun.com Tue Oct 19 20:00:49 1999 Date: Tue, 19 Oct 1999 20:01:10 -0700 (PDT) From: David R. To: Ralph.P.@eng.sun.com, Marty.H.@eng.sun.com Subject: Re: S8 bld22 PCI Hot-Plug Support -- ARC approval ? ? ? ? (PSARC/1998/327) Cc: mike.p.@jurassic.eng.sun.com, jon.c.@jurassic.eng.sun.com, jaya.c.@jurassic.eng.sun.com, psarc-record@sac.eng.sun.com, stevez@west.sun.com, jhd@end.eng.sun.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Length: 7715 I have checked with all interested parties on this case and come to the following conclusions: 1) The intent of the dependency on PSARC/1998/471 was met by the project team using an existing approved interface, even though the exact requirement was not met to the letter. 2) The project team should have filed a fast-track or had the opinion revised when an acceptable alternative was found in order to maintain accurate records. 3) The project should not held up. 4) This message is being sent to psarc-record@sac for archival. -David > > Marty, > > > > Please look at the messages below. Does this represent the right > > process, or is it a circumvention of the ARC process? > > > > /Ralph > > Ralph: > > You were on the right track when you asked about where the "add-drv > extensions" had been ARC-approved. I think that that remains an open > issue since they seem to be claiming both that it will not be implemented, > *and* that it was implemented and integrated into Solaris 7 11/99. > (Or were they talking about *this* project, "PCI Hot-Plug Support" > in "Background:" of Prasad's mail?) > > In any event, the key phrase here is this one: > > > This ['add-drv extensions'] was dropped from the dependecies and instead another solution was > > implemented within the hoptlug framework which fixes the driver loading > > problem. > > Was the referenced alternative solution taken up with the PSARC? > It must be determined _by PSARC_ if the (dependent) alternative solution > is acceptable. (And that solution should probably have been an ARC case, > I'd bet.) > > If so, was the case amended to reflect this (approved) change? (Or was a > fattrack project done to effect this change?) > > > The C team was aware of this and the solution was reviewed by > > C team and I/O group. The add-drv extensions may be considred for > > future Solaris release. > > This is all irrelevent to the ARC point that a dependent project *must* > be delivered with or prior to this project. > > So in answer to your question, yes, this appears to be deviation from the > ARC process, possibly due to a misunderstanding on someone's behalf that > the project deliver "something like add-drv extensions" with this project, > rather than specifically the "add-drv extensions" project. > > In reality it's up to the ARC (in this case PSARC) to make the determination > as to whether the intent of the dependency requirement in the PCI Hotplug > case has been met by the alternative to 'add-drv extensions.' > > David R. (PSARC Chair) might know if such a discussion was ever had > at a PSARC meeting (or if a FastTrack case came through PSARC.) > > Marty > > > ------------- Begin Forwarded Message ------------- > > > > From: Prasad Singamsetty > > Subject: Re: S8 bld22 -- ARC approval ? ? ? ? > > To: kristin.m.@jurassic.eng.sun.com, Ralph.P.@eng.sun.com > > Cc: prasad.singamsetty@West.Sunest.Sun.COM, jerry.gilliam@jurassic.eng.sun.com, > > p.@jurassic.eng.sun.com, john.d.@eng.sun.com > > Mime-Version: 1.0 > > Content-Md5: LX2/SwmiLjBs3YTA3YjNCw== > > > > > > > From: Ralph P. > > > > > > Your checklist for S8 build 22 shows "PCI Hot-Plug" as "PRA-ready". > > > However its (approved) ARC case (PSARC/1998/327) states that it is > > > not to be integrated prior to integration of "add-drv extensions". > > > > This was dropped from the dependecies and instead another solution was > > implemented within the hoptlug framework which fixes the driver loading > > problem. The C team was aware of this and the solution was reviewed by > > C team and I/O group. The add-drv extensions may be considred for > > future Solaris release. > > > > Background: > > > > The I/O group re-evaluated the requirements for add-drv extensions > > and felt that it is risky to make changes to the release at that > > stage. Also, the project was integrated into 2.7 11/99 so the > > risk of changing add-drv was not acceptable. The solution was > > to use a simple rcS script to make HPC driver loaded into the > > system. > > > > Thanks. > > --prasad > > > > > Was "add-drv extensions" integrated before or with PCI Hot-Plug? > > > I have not found any record of this. > > > > > > /Ralph > > > > > > > > > > > > | Extract from > > > | http://sac.eng.sun.com/shared/sac/PSARC/1998/327/opinion.txt | > > > +-----------------------------------------------------------------+ > > > | | > > > | Subject: PCI Hot-Plug Support | > > > | | > > > | Submitted by: Prasad Singamsetty | > > > | | > > > | File: PSARC/1998/327/opinion.ms | > > > | | > > > | Date: November 4th, 1998 | > > > | | > > > | Committee: Steve Z., Joseph Kowalski, David R., | > > > | Brian W. | > > > | | > > > | Steering Committee: | > > > | Foundation Steering Committee | > > > | sfsc-opinion@scs.eng | > > > | | > > > | 1. Summary | > > > | | > > > | This project provides support within Solaris for hot- | > > > | plugging PCI devices based on the PCI Hot-Plug Specification | > > > | [2]. The project delivers the framework changes, the com- | > > > | ponents common to all Solaris platforms, and platform- | > > > | specific components for some Intel (x86) platforms. It sup- | > > > | ports Hot Expansion and Hot Removal, but not the Like-for- | > > > | Like Replacement feature, of the PCI Hot-Plug technology. | > > > | | > > > | 2. Decision & Precedence Information | > > > | | > > > | The project is approved as specified in reference [1]. | > > > | | > > > | The project introduces no incompatible changes and may be | > > > | delivered in a minor release of Solaris. | > > > | | > > > | The project depends on the following project and may not be | > > > | delivered before it: | > > > | PSARC/1998/471 add-drv extensions | > > > > > > > > > > > > -------------------------------------------------- > > > Ralph P., Solaris Software Quality Office > > > Sun Microsystems Inc., Menlo Park, CA > > > x8-5580 / 650-786-5580 > > > > > > > > > ------------- End Forwarded Message ------------- > > > > > > > > -------------------------------------------------- > > Ralph P., Solaris Software Quality Office > > Sun Microsystems Inc., Menlo Park, CA > > x8-5580 / 650-786-5580 > > > From Ralph.P.@eng.sun.com Wed Oct 20 06:28:16 1999 Date: Wed, 20 Oct 1999 06:28:35 -0700 (PDT) From: Ralph P. Subject: Re: S8 bld22 PCI Hot-Plug Support -- ARC approval ? ? ? ? (PSARC/1998/327) To: Ralph.P.@eng.sun.com, Marty.H.@eng.sun.com, David.R.@eng.sun.com Cc: mike.p.@jurassic.eng.sun.com, jon.c.@jurassic.eng.sun.com, jaya.c.@jurassic.eng.sun.com, psarc-record@sac.eng.sun.com, stevez@west.sun.com, jhd@end.eng.sun.com MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii Content-MD5: 9lRyPwVPzHNOgAdPBYJLnw== Content-Length: 8366 David, Thanks for your prompt action on this and for resolving the question. /Ralph >Date: Tue, 19 Oct 1999 20:01:10 -0700 (PDT) >From: David R. >To: Ralph.P.@eng.sun.com, Marty.H.@eng.sun.com >Subject: Re: S8 bld22 PCI Hot-Plug Support -- ARC approval ? ? ? ? (PSARC/1998/327) >Cc: mike.p.@jurassic.eng.sun.com, jon.c.@jurassic.eng.sun.com, > jaya.c.@jurassic.eng.sun.com, psarc-record@sac.eng.sun.com, > stevez@west.sun.com, jhd@end.eng.sun.com > >I have checked with all interested parties on this case and come to >the following conclusions: > > 1) The intent of the dependency on PSARC/1998/471 was met by > the project team using an existing approved interface, > even though the exact requirement was not met to the letter. > > 2) The project team should have filed a fast-track or had the > opinion revised when an acceptable alternative was found > in order to maintain accurate records. > > 3) The project should not held up. > > 4) This message is being sent to psarc-record@sac for archival. > > -David > >> > Marty, >> > >> > Please look at the messages below. Does this represent the right >> > process, or is it a circumvention of the ARC process? >> > >> > /Ralph >> >> Ralph: >> >> You were on the right track when you asked about where the "add-drv >> extensions" had been ARC-approved. I think that that remains an open >> issue since they seem to be claiming both that it will not be implemented, >> *and* that it was implemented and integrated into Solaris 7 11/99. >> (Or were they talking about *this* project, "PCI Hot-Plug Support" >> in "Background:" of Prasad's mail?) >> >> In any event, the key phrase here is this one: >> >> > This ['add-drv extensions'] was dropped from the dependecies and instead another solution was >> > implemented within the hoptlug framework which fixes the driver loading >> > problem. >> >> Was the referenced alternative solution taken up with the PSARC? >> It must be determined _by PSARC_ if the (dependent) alternative solution >> is acceptable. (And that solution should probably have been an ARC case, >> I'd bet.) >> >> If so, was the case amended to reflect this (approved) change? (Or was a >> fattrack project done to effect this change?) >> >> > The C team was aware of this and the solution was reviewed by >> > C team and I/O group. The add-drv extensions may be considred for >> > future Solaris release. >> >> This is all irrelevent to the ARC point that a dependent project *must* >> be delivered with or prior to this project. >> >> So in answer to your question, yes, this appears to be deviation from the >> ARC process, possibly due to a misunderstanding on someone's behalf that >> the project deliver "something like add-drv extensions" with this project, >> rather than specifically the "add-drv extensions" project. >> >> In reality it's up to the ARC (in this case PSARC) to make the determination >> as to whether the intent of the dependency requirement in the PCI Hotplug >> case has been met by the alternative to 'add-drv extensions.' >> >> David R. (PSARC Chair) might know if such a discussion was ever had >> at a PSARC meeting (or if a FastTrack case came through PSARC.) >> >> Marty >> >> > ------------- Begin Forwarded Message ------------- >> > >> > From: Prasad Singamsetty >> > Subject: Re: S8 bld22 -- ARC approval ? ? ? ? >> > To: kristin.m.@jurassic.eng.sun.com, Ralph.P.@eng.sun.com >> > Cc: prasad.singamsetty@West.Sunest.Sun.COM, jerry.gilliam@jurassic.eng.sun.com, >> > p.@jurassic.eng.sun.com, john.d.@eng.sun.com >> > Mime-Version: 1.0 >> > Content-Md5: LX2/SwmiLjBs3YTA3YjNCw== >> > >> > >> > > From: Ralph P. >> > > >> > > Your checklist for S8 build 22 shows "PCI Hot-Plug" as "PRA-ready". >> > > However its (approved) ARC case (PSARC/1998/327) states that it is >> > > not to be integrated prior to integration of "add-drv extensions". >> > >> > This was dropped from the dependecies and instead another solution was >> > implemented within the hoptlug framework which fixes the driver loading >> > problem. The C team was aware of this and the solution was reviewed by >> > C team and I/O group. The add-drv extensions may be considred for >> > future Solaris release. >> > >> > Background: >> > >> > The I/O group re-evaluated the requirements for add-drv extensions >> > and felt that it is risky to make changes to the release at that >> > stage. Also, the project was integrated into 2.7 11/99 so the >> > risk of changing add-drv was not acceptable. The solution was >> > to use a simple rcS script to make HPC driver loaded into the >> > system. >> > >> > Thanks. >> > --prasad >> > >> > > Was "add-drv extensions" integrated before or with PCI Hot-Plug? >> > > I have not found any record of this. >> > > >> > > /Ralph >> > > >> > > >> > > >> > > | Extract from >> > > | http://sac.eng.sun.com/shared/sac/PSARC/1998/327/opinion.txt | >> > > +-----------------------------------------------------------------+ >> > > | | >> > > | Subject: PCI Hot-Plug Support | >> > > | | >> > > | Submitted by: Prasad Singamsetty | >> > > | | >> > > | File: PSARC/1998/327/opinion.ms | >> > > | | >> > > | Date: November 4th, 1998 | >> > > | | >> > > | Committee: Steve Z., Joseph Kowalski, David R., | >> > > | Brian W. | >> > > | | >> > > | Steering Committee: | >> > > | Foundation Steering Committee | >> > > | sfsc-opinion@scs.eng | >> > > | | >> > > | 1. Summary | >> > > | | >> > > | This project provides support within Solaris for hot- | >> > > | plugging PCI devices based on the PCI Hot-Plug Specification | >> > > | [2]. The project delivers the framework changes, the com- | >> > > | ponents common to all Solaris platforms, and platform- | >> > > | specific components for some Intel (x86) platforms. It sup- | >> > > | ports Hot Expansion and Hot Removal, but not the Like-for- | >> > > | Like Replacement feature, of the PCI Hot-Plug technology. | >> > > | | >> > > | 2. Decision & Precedence Information | >> > > | | >> > > | The project is approved as specified in reference [1]. | >> > > | | >> > > | The project introduces no incompatible changes and may be | >> > > | delivered in a minor release of Solaris. | >> > > | | >> > > | The project depends on the following project and may not be | >> > > | delivered before it: | >> > > | PSARC/1998/471 add-drv extensions | >> > > >> > > >> > > >> > > -------------------------------------------------- >> > > Ralph P., Solaris Software Quality Office >> > > Sun Microsystems Inc., Menlo Park, CA >> > > x8-5580 / 650-786-5580 >> > > >> > >> > >> > ------------- End Forwarded Message ------------- >> > -------------------------------------------------- Ralph P., Solaris Software Quality Office Sun Microsystems Inc., Menlo Park, CA x8-5580 / 650-786-5580