Patent ID: 8117376

Claim:
A storage system providing a storage extent for reading and writing data from and to a host system, comprising: a plurality of memory modules each including one or more nonvolatile memory chips for respectively providing the storage extent, and a memory controller to control reading and writing data from and to each of one or more of the nonvolatile memory chips of a corresponding of the memory modules, wherein each of the plurality of memory modules is configured to be freely attached to and detached from a baseboard main body as a unit of replacement; and a storage controller configured to control reading and writing data from and to each of the plurality of memory modules, wherein at least one of the plurality of memory modules is configured to determine, when a failure occurs in any one of one or more of the nonvolatile memory chips of the one of the plurality of memory modules, another nonvolatile memory chip in the rest of one or more nonvolatile memory chips of the one of the plurality of modules as a copy destination of data stored in the failed nonvolatile memory chip, and copy the data stored in the failed nonvolatile memory chip to the another nonvolatile memory chip of the one of the plurality of memory modules determined as the copy destination, wherein the memory controller in the one of the plurality of memory modules is configured to detect an error occurrence at each of the nonvolatile memory chips of the one of the plurality of memory modules, and is further configured to enable selection of, based on whether data stored in the failed nonvolatile memory chip is restorable or not, and whether there is a spare nonvolatile memory chip in the one of the plurality of memory modules or not, one processing to request a copy correction, in which a memory controller in the one of the plurality of memory modules including the failed nonvolatile memory chip requests to a memory controller in a spare memory module, which belongs to a same group as the one of the plurality of memory modules, to restore and copy data stored in the failed nonvolatile memory chip to a nonvolatile memory chip of the spare memory module, or another processing to request a dynamic sparing, in which the memory controller in a one of the plurality of memory modules including the failed nonvolatile memory chip requests, to a memory controller in the spare memory module, the spare memory module to write data stored in the failed nonvolatile memory chip to non-failed nonvolatile memory chip in the one of the plurality of memory modules, with the data being restored.