This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2013-253525, filed on Dec. 6, 2013, the entire contents of which are incorporated herein by reference.
The embodiment discussed herein is directed to a storage controller, a storage apparatus, and a computer-readable storage medium storing a storage control program.
A storage apparatus includes a controller enclosure that houses a controller for controlling the storage apparatus, and a plurality of disk enclosures that house storage media.
The controller enclosure 91 is cable-connected to one disk enclosure 92, and the disk enclosure 92 cable-connected to the controller enclosure 91 is cable-connected to other disk enclosures 92 in cascade. The cable connection is duplexed.
At the time when the storage apparatus 90 is turned on or at other times, the controller checks whether the cable connection is properly established. For example, the controller acquires device information from the disk enclosures 92 in connection order via each of the duplexed cable connections. The controller then checks whether or not the connection order of the disk enclosures 92 obtained via one cable connection is identical to the connection order of the disk enclosures 92 obtained via the other cable connection. When two connection orders are different from each other, the controller determines that there is an incorrect cable connection (see, for example, Japanese Laid-open Patent Publication No. 2009-181317).
For example, one controller, out of two controllers, acquires device information from the respective disk enclosures 92 via one cable connection and registers the device information in a shared memory. Then, the other controller, out of two controllers, acquires device information from the respective disk enclosures 92 via the other cable connection, and collates the acquired device information with the information in the shared memory, so as to check incorrect cable connection (see, for example, Japanese Laid-open Patent Publication No. 2006-146489).
However, the method of collating the connection orders in the duplexed cable connections and detecting incorrect connection has a problem in which it is difficult to correctly detect the incorrect connection. For example, when both the duplexed cable connections are incorrectly connected, the incorrect connection is not detected by collation of these connections.
According to an aspect of an embodiment, a storage controller controlling a plurality of enclosures connected in cascade includes a memory that stores information that defines the enclosures; and a processor that acquires information on the connected enclosures from the enclosures, identifies connected storage devices on the basis of the acquired information and the information stored in the memory, and determines whether or not the identified enclosures are correctly connected on the basis of a connection order of the enclosures.
A preferred embodiment of the present invention will be explained with reference to accompanying drawings. It is to be noted that the embodiment is not intended to limit the disclosed technology.
First, the configuration of a storage apparatus according to an embodiment will be described.
The CE 1 is connected to one DE 2 via a serial attached SCSI (SAS) cable, and the DE 2, which is cable-connected to the CE 1, is connected to other DEs 2 in cascade via the SAS cable. The SAS cable supports a 4-wide link (4WL) made up of four physical links used as one logical link.
The SAS cable connection is duplexed to provide two cable connections of 0 system and 1 system. The 0 system provides straight connection, while the 1 system provides reverse connection. For example, when 13 DEs from DE#01 to DE#13 are connected in order of CE1→DE#01→DE#02→ . . . →DE#13, this connection is referred to as a straight connection, while the connection in order of CE1→DE#13→DE#12→ . . . →DE#01 is referred to as a reverse connection.
The CE 1 includes a controller module (CM) 10 that controls the storage apparatus 3, and a bootup and utility device (BUD) 20 that stores configuration information on components, such as the DEs 2 included in the storage apparatus 3. The CM 10 is duplexed into two CMs 10, which are connected through a PCI express (PCIe).
Each of the CMs 10 includes two channel adapters (CAs) 11, an input output controller (IOC) 12, an expander (EXP) 13, a control unit 30, and a storage unit 30a. The CA 11 is an interface with a host, such as a server which uses the storage apparatus 3. The IOC 12 controls the DEs 2 via the EXP 13. The EXP 13 is a SAS interface to connect between the CM 10 and the DEs 2. The control unit 30 controls the CA 11, the IOC 12, and the EXP 13 to control the storage apparatus 3. The storage unit 30a stores programs and data used by the control unit 30.
The DE 2 is a storage device that houses 60 disk devices. The DE 2 has two input output modules (IOMs) 21 in the enclosure. The IOM 21 is an input/output interface used for connection with the CE 1 or other DEs 2. One of two IOMs 21 is used for connection in the 0 system, while the other is used for connection in the 1 system. Although a description will be given of the DE 2 that houses 60 disk devices here, a DE 2 that houses an arbitrary number of disk devices may also be employed.
As illustrated in
In the 1 system, the output port 14 of the CE 1 is cable-connected to the input port 22 of the IOM 21 included in the DE#04, and the output port 23 of the IOM 21 included in the DE#04 is cable-connected to the input port 22 of the IOM 21 included in the DE#03. The output port 23 of the IOM 21 included in the DE#03 is also cable-connected to the input port 22 of the IOM 21 included in the DE#02, and the output port 23 of the IOM 21 included in the DE#02 is cable-connected to the input port 22 of the IOM 21 included in the DE#01.
The disk device 24 is a storage device that stores data. The disk device 24 has information, such as a world wide name (WWN) that identifies the device, and a capacity, as device information. The VPD storage unit 25 stores information on the DE 2, such as a WWN and a device type.
The IOM 21 includes an EXP chip control unit 26, a memory 27, and an EXP 28. The EXP chip control unit 26 controls the EXP 28. The EXP chip control unit 26 acquires information, such as the WWN, from the disk device 24 or the VPD storage unit 25 on the basis of a request from the CE 1, and transmits the acquired information to the CE 1. The memory 27 stores information such as the WWN, which has been acquired from the disk device 24 or the VPD storage unit 25 by the EXP chip control unit 26. The EXP 13 is a SAS interface.
Next, the configuration of the control unit 30 and the storage unit 30a illustrated in
The storage unit 30a stores various programs, management information, and the like. The storage unit 30a includes a table region (CMT) that stores configuration information and the like read out from the BUD 20, and a table region (ENCMAP) that stores information on the DEs 2 and the disk devices 24 connected to the CE 1.
The subsystem mode TBL 31a is a table region which stores information such as an apparatus model and type of the storage apparatus 3. The subsystem mode TBL 31a is also a table region which stores information on cable connection configuration.
The connection configuration I is adopted in the case where the 0 system and the 1 system have straight cable connection. In this case, “00” is stored in hexadecimal in the SubsysMode#21. An expression “0x” indicates a hexadecimal value. The connection configuration II is adopted in the case where the 0 system has straight cable connection and the 1 system has reverse cable connection. In this case, “01” is stored in hexadecimal in the SubsysMode#21. The connection configuration III is adopted in the case where the 0 system has reverse cable connection and the 1 system has straight cable connection. In this case, “02” is stored in hexadecimal in the SubsysMode#21. The connection configuration IV is adopted in the case where the 0 system and the 1 system have reverse cable connection. In this case, “03” is stored in hexadecimal in the SubsysMode#21.
Referring again to
As illustrated in
The DISK information indicates WWNs of 60 disk devices 24. For example, the DE 2 with an identification number “01” has a WWN of “A,” and its 1st disk device 24 has a WWN of “a,” and its 60th disk device 24 has a WWN of “b.”
As illustrated in
Referring again to
The acquisition unit 33 acquires the information on the DEs 2 and the disk devices 24 which are connected to the CE 1, from the DEs 2 in connection order, and stores the information in a ENCMAP 34. Once a DE 2 receives an information acquiring request from the acquisition unit 33, the EXP chip control unit 26 of the IOM 21 reads out information on the DE 2 and the disk devices 24 from the memory 27, and transmits the information to the CE 1.
The ENCMAP 34 is a table region that stores the information on the DEs 2 and the disk devices 24 acquired by the acquisition unit 33 in order of acquisition.
As illustrated in
As illustrated in
When the acquisition unit 33 acquires information from the connected DEs 2, the presence of connection, the DE information, and the DISK information are stored in the ENCMAP 34. In
The member notification unit 35 searches the DE-DISK-TBL 31b by using as a search key the information on the disk devices 24 included in each DE 2 stored in the ENCMAP 34, and notifies the integration unit 37 of the DE-Nos of the DEs 2, which are matched with the search key, as a search result. Here, the information on the disk devices 24 included in each DE 2 is specifically the WWNs of all the disk devices 24 included in each DE 2, and the search key is a plurality of WWNs.
The class notification unit 36 searches the DE-DISK-TBL 31b by using as a search key the information on each DE 2 stored in the ENCMAP 34, i.e., the WWW and the type of each DE 2, and notifies the integration unit 37 of the DE-Nos of the DEs 2 which are matched with the search key, as a search result.
The integration unit 37 determines the DE-No of each DE 2 stored in the ENCMAP 34 on the basis of the DE-Nos notified from the member notification unit 35 and the DE-Nos notified from the class notification unit 36. FIG. 10 illustrates DE-No determination patterns. In
As illustrated in
As illustrated in
In the pattern 2, the first-definition DE-No and the second-definition DE-No are notified, and their values are different from each other. Accordingly, the integration unit 37 needs to select one of the values, so that the value by the first-definition DE-No notification is determined as the DE-No. In other words, the integration unit 37 gives priority to the first-definition DE-No notification over the second-definition DE-No notification. This is because the disk devices 24 store important data of a user, and unapproved replacement and/or movement of the disk devices 24 without going through formal procedures is never performed. While unapproved replacement and/or movement of the DEs 2 without going through formal procedures is also never performed, the DEs 2 are merely outer frame boxes for mounting the disk devices 24. Therefore, if unapproved replacement and/or movement of the DEs 2 is conducted, it does not pose a major problem unless replacement and/or movement of the disk devices 24 is involved. For example, when the DE-No notified by the first-definition DE-No notification is “0x02” and the DE-No notified by the second-definition DE-No notification is “0x01,” the DE-No is determined to be “0x02.”
In the pattern 3, the DE-No is present in the first-definition DE-No notification but the DE-No in the second-definition DE-No notification is indefinite. Accordingly, the integration unit 37 determines the value by the first-definition DE-No notification as the DE-No. For example, when the DE-No notified by the first-definition DE-No notification is “0x01” and the DE-No notified by the second-definition DE-No notification is “0xff,” the DE-No is determined to be “0x01.” Here, the notified DE-No “0xff” indicates that the DE-No is not retrieved and is indefinite. Examples of the case where the second-definition DE-No is not notified include the case when the WWN of a DE 2 in the DE-DISK-TBL 31b is not registered, the case where a DE 2 is replaced, and the case where inactive DE 2 increase is performed.
In the pattern 4, the first-definition DE-No is not notified and the second-definition DE-No is notified. Accordingly, the integration unit 37 determines the value by the second-definition DE-No notification as the DE-No. For example, when the DE-No notified by the first-definition DE-No notification is “0xff” and the DE-No notified by the second-definition DE-No notification is “0x01,” the DE-No is determined to be “0x01.” Examples of the case where the first-definition DE-No is not notified include the case when the WWNs of the disk devices 24 are not registered in the DE-DISK-TBL 31b, the case where no disk device 24 is mounted on the DE 2, and the case where disk devices 24 in the DE 2 are replaced or moved.
In the pattern 5, both the first-definition DE-No and the second-definition DE-No are not notified and so the pertinent DE 2 is undefined. Accordingly, the integration unit 37 sends a message through a man machine interface (MMI) to prompt an administrator to define the DE 2. For example, when the DE-No notified by the first-definition DE-No notification and the DE-No notified by the second-definition DE-No notification are “0xff,” the DE-No is determined according to the connection order. Examples of the case where both the first-definition DE-No and the second-definition DE-No are not notified include the case where the storage apparatus 3 is started up for the first time and power is supplied to the storage apparatus 3 while the DE 2 and the disk devices 24 are mounted thereon, and the case where the DE 2 and the disk devices 24 are mounted without using the MMI.
As illustrated in
Referring again to
The check unit 38 checks the order of DE-Nos of the respective DEs 2 in the ENCMAP 34 and stores the checking result in the DE-Status of the ENCMAP 34 as the status of the DEs 2. As the status of the DE 2, there are “ONLINE” representing a normal state, “WRONG_DE” representing incorrect connection, “LINK_DOWN” representing DE 2 disconnection, and “--” representing undefined DE 2 connection.
As illustrated in
In the patterns 1 to 5 in
In the pattern 3 of
The pattern 4 of
In the patterns 1 to 5 of
In the pattern 2 of
In the pattern 4 of
Referring again to
In the pattern 2 of
In the pattern 4 of
When the status of the storage apparatus 3 is “NRDY16” or “Ready (with error),” the determination unit 39 identifies an IOM 21 to be separated, and separates the identified IOM 21.
A description will now be given of a flow of apparatus status determination processing performed by the control unit 30.
Then, the acquisition unit 33 acquires information on connected DEs 2, and stores the information in the ENCMAP 34 (step S2). Then, by using information on the disk devices 24 of the DEs 2 whose information was stored in the ENCMAP 34, the member notification unit 35 searches the DE-DISK-TBL 31b to acquire DE-Nos (step S3), and notifies the integration unit 37 of the acquired DE-Nos. By using information of the DEs 2 whose information was stored in the ENCMAP 34, the class notification unit 36 searches the DE-DISK-TBL 31b to acquire DE-Nos (step S4), and notifies the integration unit 37 of the acquired DE-Nos.
On the basis of the DE-Nos notified by the member notification unit 35 and the DE-Nos notified by the class notification unit 36, the integration unit 37 determines the DE-No of each connected DE 2 (step S5). Then, the check unit 38 checks the connection order of the DEs 2 on the basis of the order of DE-Nos, and determines whether there is an incorrect connection (step S6). Then, the determination unit 39 determines the status of the storage apparatus 3 on the basis of the presence of incorrect connection (step S7). When there is a connection problem, the determination unit 39 identifies an IOM 21 to be separated, and separates the identified IOM 21 (step S8). By execution of these processing steps, the control unit 30 completes the turning-on.
Thus, since the control unit 30 checks the connection order of the DEs 2 on the basis of the configuration information stored in the DE-DISK-TBL 31b, it becomes possible to correctly determine incorrect cable connection. The control unit 30 performs processing in steps S2 to S6 for the 0 system and the 1 system.
Next, the details of the processing in steps S2 to S5 illustrated in
As illustrated in
Specifically, by using information on the disk devices 24 of a DE 2, the member notification unit 35 searches the DE-DISK-TBL 31b to acquire the DE-No (step S13), and notifies the integration unit 37 of the acquired DE-No. By using DE 2 information, the class notification unit 36 searches the DE-DISK-TBL 31b to acquire the DE-No (step S14), and notifies the integration unit 37 of the acquired DE-No.
On the basis of the DE-No notified by the member notification unit 35 and the DE-No notified by the class notification unit 36, the integration unit 37 determines a DE-No determination pattern (step S15).
When the DE-NO determination pattern is within the patterns 1 to 3, the integration unit 37 sets the DE-No of the ENCMAP 34 for each of the 0 system and 1 system with the DE-No retrieved by using the information on the disk devices 24 (step S16).
When the DE-NO determination pattern is the pattern 4, the integration unit 37 sets the DE-No of the ENCMAP 34 for each of the 0 system and 1 system with the DE-No retrieved by using the DE 2 information (step S17).
When the DE-NO determination pattern is the pattern 5, the integration unit 37 sets the DE-No in the ENCMAP 34 for each of the 0 system and 1 system in the connection order (step S18).
Thus, since the integration unit 37 sets the DE-Nos of the ENCMAP 34 on the basis of the DE-Nos notified by the member notification unit 35 and the DE-Nos notified by the class notification unit 36, it becomes possible to correctly set the DE-Nos of the ENCMAP 34.
Now, a flow of processing to acquire a DE-No from the information on the disk devices 24 will be described.
As illustrated in
If the configuration information is present, the member notification unit 35 determines whether or not a DE 2, whose WWN and type are matched with specified WWN and type, is present in the DE-DISK-TBL 31b (step S23). When the DE 2 is present, the member notification unit 35 sets the DE-No of the DE 2, whose WWN and type are matched, as a temporary DE-No (step S24). Then, the member notification unit 35 determines whether or not WWNs of all the disk devices 24 in the DE 2, whose DE-No is set as the temporary DE-No, are matched with all the WWNs specified as a search key (step S25).
As a result, when all the WWNs are matched, the member notification unit 35 notifies the integration unit 37 of the temporary DE-No (step S26). When the WWNs are partially matched, the member notification unit 35 determines whether or not mismatched disk WWNs are present in the DEs 2 other than the DE 2 whose DE-No is the temporary DE-No (step S27). Here, the disk WWNs refer to the WWNs of the disk devices 24. As a result, when the disk WWNs are present in another DE 2, the member notification unit 35 notifies the integration unit 37 of 0xff which indicates that the DE-No is indefinite (step S28). When the disk WWNs are not present in other DEs 2, the member notification unit 35 notifies the integration unit 37 of the temporary DE-No (step S29).
When the matched WWN is not present or when the DE 2 whose WWN and type are matched is not present in the DE-DISK-TBL 31b, the member notification unit 35 determines whether or not WWNs that are matched with all the disk WWNs are present in the DE-DISK-TBL 31b (step S30). As a result, when all the WWNs of disk devices 24 in one DE 2 are matched, the member notification unit 35 notifies the integration unit 37 of the pertinent DE-No (step S31). More specifically, the member notification unit 35 notifies the integration unit 37 of the DE-No of the DE 2 which houses the disk devices 24 whose WWNs are matched with all the WWNs.
When the WWNs are partially matched with WWNs of the disk devices 24 in a certain DE 2, the member notification unit 35 determines whether or not mismatched disk WWNs are present in other DEs 2 (step S32). As a result, when the disk WWNs are present in other DEs 2, the member notification unit 35 notifies the integration unit 37 of 0xff that indicates that the DE-No is indefinite (step S33). When the disk WWNs are not present in other DEs 2, the member notification unit 35 notifies the integration unit 37 of the pertinent DE-No (step S34). More specifically, the member notification unit 35 notifies the integration unit 37 of the DE-No of the DE 2 which houses the disk devices 24 whose WWNs are partially matched. When no WWN in the DE-DISK-TBL 31b is matched, the member notification unit 35 notifies the integration unit 37 of 0xff that indicates that the DE-No is indefinite (step S35).
Thus, the member notification unit 35 can acquire the DE-No by searching the DE-DISK-TBL 31b with use of the disk WWNs.
Next, a flow of processing to acquire a DE-No from the DE 2 information will be described.
If the configuration information is present, the class notification unit 36 determines whether or not the DE 2, whose WWN and type are matched with the WWN and type specified by a search key, is present in the DE-DISK-TBL 31b (step S42). As a result, when the DE 2 is present, the class notification unit 36 notifies the integration unit 37 of the DE-No of the DE 2 whose WWN and type are matched with the specified WWN and type (step S43). When the DE 2 is not present, the class notification unit 36 notifies the integration unit 37 of 0xff which indicates that the DE-No is indefinite (step S44).
Thus, the class notification unit 36 can acquire the DE-No by searching the DE-DISK-TBL 31b by using the WWN and type of the DE 2.
Next, a flow of connection check processing will be described.
As illustrated in
As a result, when the DE-Nos are in ascending order, the check unit 38 compares the numbers of DEs in the CMT 31 and in the ENCMAP 34, and makes a determination according to the comparison result (step S53). Here, the number of DEs in the CMT 31 is the number of the DEs 2 stored in the DE-DISK-TBL 31b.
When the numbers of the DEs are identical, the check unit 38 determines that the connection is OK (step S54). When the number of DEs in the CMT 31 is larger than the number of DEs in the ENCMAP 34, the connection is determined to be OK, though an error is present (step S55). The number of DEs in the CMT 31 becomes larger than the number of DEs in the ENCMAP 34 when DE 2 information is not acquired by the acquisition unit 33 due to failures of the IOM 21, cable disconnection, and the like.
When the number of DEs in the CMT 31 is smaller than the number of DEs in the ENCMAP 34, the check unit 38 determines that connection is OK (step S56). The number of DEs in the CMT 31 becomes smaller than the number of DEs in the ENCMAP 34 when inactive DE 2 increase is performed. When the DE-Nos are not in ascending order, the check unit 38 determines that connection is incorrect (step S57).
In the case of reverse cable wiring, the check unit determines whether or not the DE-Nos in the ENCMAP 34 are in descending order as illustrated in
When the numbers of DEs are identical, the check unit 38 determines that connection is OK (step S61), whereas when the number of DEs in the CMT 31 is larger than the number of DEs in the ENCMAP 34, the check unit 38 determines that connection is OK though an error is present (step S62). When the number of DEs in the CMT 31 is smaller than the number of DEs in the ENCMAP 34, the check unit 38 determines that connection is OK (step S63). When the largest DE-No in the CMT 31 is not in the ENCMAP 34, the check unit 38 determines that connection is incorrect (step S64). When the DE-Nos are not in descending order, the check unit 38 determines that connection is incorrect (step S65).
Thus, the check unit 38 checks cable connection on the basis of the order of DE-Nos stored in the ENCMAP 34 by the integration unit 37, so that cable connection can correctly be checked.
Next, a flow of IOM 21 separation processing will be described.
Contrary to this, when the status of the apparatus is not Ready, i.e., when the status of the apparatus is Ready (with error) or NRDY16, the determination unit 39 determines whether or not the cable wiring is straight (step S72). As a result, when the cable wiring is straight, the determination unit 39 determines whether the incorrectly connected DE 2 (WRONG_DE) is at the top (step S73). When the incorrectly connected DE 2 is not at the top, the determination unit 39 determines whether or not the DE-Statuses of all the DEs 2 in front of the incorrectly connected DE 2 are ONLINE (step S74).
As a result, when any LINK_DOWN DE 2 is present in front of the incorrectly connected DE 2, the determination unit 39 separates the IOM 21 of a DE 2, which has the smallest DE-No among the DEs 2 detected to have LINK_DOWN (step S75). When the DE-Statuses of all the DEs 2 in front of the incorrectly connected DE 2 are ONLINE, or when the incorrectly connected DE 2 is at the top, the determination unit 39 separates the IOM 21 of the incorrectly connected DE 2 (step S76).
In the case of reverse cable wiring, the determination unit 39 determines whether or not the incorrectly connected DE 2 is at the end (step S77). When the incorrectly connected DE 2 is not at the end, the determination unit 39 determines whether or not the DE-Statuses of all the DEs 2 in back of the incorrectly connected DE 2 are ONLINE (step S78).
As a result, when any LINK_DOWN DE 2 is present in back of the incorrectly connected DE 2, the determination unit 39 separates the IOM 21 of a DE 2, which has the largest DE-No among the DEs 2 detected to have LINK_DOWN (step S79). When the DE-Statuses of all the DEs 2 in back of the incorrectly connected DE 2 are ONLINE, or when the incorrectly connected DE 2 is at the end, the determination unit 39 separates the IOM 21 of the incorrectly connected DE 2 (step S76).
Thus, since the determination unit 39 identifies the IOM 21 to be separated and separates the identified IOM 21, it becomes possible to prompt the administrator to perform correct wiring.
As described in the foregoing, in the embodiment, the DE-DISK-TBL 31b in the CMT 31 stores the configuration information on the storage apparatus 3, and the acquisition unit 33 acquires the information on the connected DEs 2 and disk devices 24, and stores the information in the ENCMAP 34. Then, the member notification unit 35 acquires DE-Nos from the DE-DISK-TBL 31b by using as a search key the information about the disk devices 24 stored in the ENCMAP 34. The class notification unit 36 acquires DE-Nos from the DE-DISK-TBL 31b by using as a search key the information on the DEs 2 stored in the ENCMAP 34. Then, the integration unit 37 determines the DE-Nos of the connected DEs 2 on the basis of the DE-Nos acquired by the member notification unit 35 and the class notification unit 36. The check unit 38 determines whether or not cable connection is incorrect on the basis of the DE-Nos determined by the integration unit 37. Therefore, the control unit 30 can correctly determine incorrect cable connection on the basis of the configuration information.
Moreover, in the embodiment, the subsystem mode TBL31a of the CMT 31 stores the information on the cable connection configuration, and the check unit 38 determines whether the cable connection is straight or reverse on the basis of the information in the subsystem mode TBL31a. Then, the check unit 38 determines incorrect cable connection on the basis of whether the cable connection is straight or reverse. Therefore, the control unit 30 can correctly determine incorrect connection also in the case of the reverse cable connection.
In the embodiment, a description has been given of the case where the control unit 30 checks incorrect cable connection when the storage apparatus 3 is turned on. However, the control unit 30 can also check incorrect cable connection when active DE 2 increase and decrease is performed. Accordingly, a flow of processing for active DE 2 increase and decrease will be described.
Then, by using information on the disk devices 24 of the DEs whose information was stored in the ENCMAP 34, the member notification unit 35 searches the DE-DISK-TBL 31b to acquire DE-Nos (step S83), and notifies the integration unit 37 of the acquired DE-Nos. By using information on the DEs 2 whose information was stored in the ENCMAP 34, the class notification unit 36 searches the DE-DISK-TBL 31b to acquire DE-Nos (step S84), and notifies the integration unit 37 of the acquired DE-Nos.
Then, on the basis of the DE-Nos notified by the member notification unit 35 and the DE-Nos notified by the class notification unit 36, the integration unit 37 determines the DE-No of each connected DE 2 (step S85). Then, the check unit 38 checks the connection order of the DEs 2 on the basis of the order of DE-Nos, and determines whether there is an incorrect connection (step S86). Then, the determination unit 39 determines success or failure of DE increase and decrease on the basis of the presence of incorrect connection (step S87). Then, the MMI unit reflects the result of the DE increase and decrease on the CMT 31 (step S88). Thus, active increase and decrease is completed.
As described in the foregoing, the control unit 30 can check incorrect cable connection also in the case of the active DE 2 increase and decrease.
The functions of the control unit 30 are implemented by firmware. Accordingly, a description is given of a hardware configuration of the storage control unit that executes the firmware.
The MPU 41 is a processing device that reads out a program from the RAM 43 and executes the program. The flash memory 42 is a nonvolatile memory that stores programs. A program stored in the flash memory 42 is temporarily written in the RAM 43, and the MPU 41 reads out the program from the RAM 43 and executes the program. The RAM 43 is a memory that stores programs, program intermediate results, and the like.
In the embodiment, a description has been given of the case where the DE-DISK-TBL 31b stores the information on the DEs 2 in connection order of the DEs 2 which are connected in ascending order. However, the present invention is not limited thereto, and the present invention is also applicable to the case where, for example, the DE-DISK-TBL 31b stores the information on the DEs 2 in other orders, such as in the case where the DEs 2 are connected in descending order. In that case, the check unit 38 determines incorrect cable connection not by checking whether the DE-Nos are in ascending order or the descending order, but by checking whether the order of DE-Nos is according to a storage order of the DEs 2 which are stored in the DE-DISK-TBL 31b.
In the embodiment, although a description has been given of the case where each of the DEs 2 houses the plurality of disk devices 24, the present invention is not limited thereto. The present invention is also applicable to the case where, for example, each of the DEs 2 houses other drive devices, such as solid state drives (SSDs).
According to one embodiment, it becomes possible to correctly detect incorrect cable connection.
All examples and conditional language recited herein are intended for pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2013-253525 | Dec 2013 | JP | national |