I'm sponsoring this case for Ryan Wang.  The requested release binding
is micro/patch.

This case requests to remove an argument from four functions which were
defined as project-private interfaces, the stability level will remain
unchanged.

Because the architectural impact is obvious enough for a self-review
case, I'm marking it as "closed approved automatic".


-Cecilia


------------------------------------------------------------------
1. Introduction
     1.1. Project/Component Working Name:
         raidctl hotspare adjustment
     1.2. Name of Document Author/Supplier:
         Author:  Ryan Wang
     1.3  Date of This Document:
         November 25th, 2008

4. Technical Description
1. Introduction
     1.1. Project/Component Working Name:
         raidctl hotspare adjustment
     1.2. Name of Document Author/Supplier:
         Author:  Ryan.Wang at Sun.COM
     1.3  Date of This Document:
         November 25th, 2008

4. Technical Description

4.1 Summary

     The raidctl utility is a RAID configuration tool for mpt controllers
     in Solaris; however, the interface still needs evolving for the
     hotspare set/unset actions. According to our survey, all the RAID
     controllers can only deal with one hot spare disk per time.

4.2 Proposal

     Presently raidctl software use the following API routines:
       int raidcfg_set_hsp(int num, struct raidcfg_hsp_relations_t 
*handles, char **err_str);
       int raidcfg_unset_hsp(int num, struct raidcfg_hsp_relations_t 
*handles, char **err_str);

     For the behavior controller can only deal with one hot spare disk
     per time, the interface needs to be changed by removing the first
     parameter 'num', which is the redundant parameter.

     The interface is project private. raidctl is the only consumer, and
     there will be no effect for other applications.

     At the same time, the following SPI routines:
       int rdcfg_hsp_bind(uint32_t controller_id, uint32_t num, 
hsp_relation_t *hsp_relations, char **err_ptr);
       int rdcfg_hsp_unbind(uint32_t controller_id, uint32_t num, 
hsp_relation_t *hsp_relations, char **err_ptr);

     are also needs to be changed for the same reason. The interface is
     also a project private interface, too.

4.3 Interface Summary

   . RaidCfg CLI interface:
     Un-touched.

   . RaidCfg API interface:
     Remains as project-private.
     The parameter of the hot spare number will be removed, and the
     following API routines will be changed to

       int raidcfg_set_hsp(raidcfg_hsp_relation_t *, char **);
       int raidcfg_unset_hsp(raidcfg_hsp_relation_t *, char **);

   . RaidCfg SPI interface:
     Remains as project-private.
     The parameter of the hot spare number will be removed, and the
     following SPI routines will be changed to

       int rdcfg_hsp_bind(uint32_t, hsp_relation_t *, char **);
       int rdcfg_hsp_unbind(uint32_t, hsp_relation_t *, char **);

4.4 References

     [1] PSARC/2005/204 RaidCfg project
     <http://sac.sfbay/PSARC/2005/204>

     [2] PSARC/2006/663 RaidCfg MPT adjustment
     <http://sac.sfbay/PSARC/2006/663>

     [3] PSARC/2007/667 RaidCfg disk_id adjustment
     <http://sac.sfbay/PSARC/2007/667>

     [4] PSARC/2008/458 RaidCfg GUID and volume activation support
     <http://sac.sfbay/PSARC/2008/458>

6. Resources and Schedule
     6.4. Steering Committee requested information
        6.4.1. Consolidation C-team Name:
                ON
     6.5. ARC review type: self-reviews
     6.6. ARC Exposure: open

Reply via email to