A computer system comprising: a client computer (110a-110c) configured to send read and write requests over a network; a data storage subsystem coupled to the network configured to receive the read and write requests, wherein the data storage subsystem comprises a plurality of data storage locations on a plurality of storage devices (176a-176m); wherein the data storage subsystem further comprises a storage controller configured, to receive read and write requests from the client computer (110a-110c) over the network, to: select, from the plurality of storage devices (176a-176m) of the data storage subsystem that includes the storage controller, a first subset of the storage devices for use in a first redundant array of independent disks "RAID" layout, the first RAID layout including a first set of redundant data; and write a stripe (250a-250c) to the first subset according to the first RAID layout including in response to detecting a change in reliability for a first device of the first subset, storing a different amount of intra-device redundancy data for the RAID stripe (250a-250c) on the first device than a second device of the first subset; configure a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data; configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout; wherein in response to receiving a given read request directed to a particular storage device of either the first RAID layout or the second RAID layout, the controller is configured to initiate a reconstruct read corresponding to the given read request in response to determining the particular storage device is exhibiting a non-error related relatively slow read response. a client computer (110a-110c) configured to send read and write requests over a network; a data storage subsystem coupled to the network configured to receive the read and write requests, wherein the data storage subsystem comprises a plurality of data storage locations on a plurality of storage devices (176a-176m); wherein the data storage subsystem further comprises a storage controller configured, to receive read and write requests from the client computer (110a-110c) over the network, to: select, from the plurality of storage devices (176a-176m) of the data storage subsystem that includes the storage controller, a first subset of the storage devices for use in a first redundant array of independent disks "RAID" layout, the first RAID layout including a first set of redundant data; and write a stripe (250a-250c) to the first subset according to the first RAID layout including in response to detecting a change in reliability for a first device of the first subset, storing a different amount of intra-device redundancy data for the RAID stripe (250a-250c) on the first device than a second device of the first subset; configure a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data; configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout; wherein in response to receiving a given read request directed to a particular storage device of either the first RAID layout or the second RAID layout, the controller is configured to initiate a reconstruct read corresponding to the given read request in response to determining the particular storage device is exhibiting a non-error related relatively slow read response. select, from the plurality of storage devices (176a-176m) of the data storage subsystem that includes the storage controller, a first subset of the storage devices for use in a first redundant array of independent disks "RAID" layout, the first RAID layout including a first set of redundant data; and write a stripe (250a-250c) to the first subset according to the first RAID layout including in response to detecting a change in reliability for a first device of the first subset, storing a different amount of intra-device redundancy data for the RAID stripe (250a-250c) on the first device than a second device of the first subset; configure a second subset of the storage devices for use in a second RAID layout, the second RAID layout including a second set of redundant data; configure an additional device not included in either the first subset or the second subset to store redundant data for both the first RAID layout and the second RAID layout; wherein in response to receiving a given read request directed to a particular storage device of either the first RAID layout or the second RAID layout, the controller is configured to initiate a reconstruct read corresponding to the given read request in response to determining the particular storage device is exhibiting a non-error related relatively slow read response.