このコンテンツは選択した言語では利用できません。
Chapter 13. Storage
/proc/diskstats
no longer becomes corrupted
Partitions are protected by read-copy-update (RCU) for performance reasons and are not properly protected against race conditions in two circumstances:
- When partitions are modified while there are in-flight requests.
- When partitions overlap, which is possible for DOS extended and logical partitions.
As a consequence, some fields of the
/proc/diskstats
file could become corrupted. This update fixes the problem by caching the partition lookup in the request structure. As a result, /proc/diskstats
no longer becomes corrupted in the described situations. (BZ#1273339)
multipathd
no longer reports success after a failed device resizing
If the
multipathd
service failed to resize a device, multipathd
did not reset the size back to the original value internally. As a consequence, on future attempts to resize a device, multipathd
reported a success even when multipathd
did not resize the device. If resizing fails, multipathd
now reverts the size of the device back to the original value internally. As a result, multipathd
now only reports success if a device is resized successfully. (BZ#1328077)
multipath no longer crashes due to libdevmapper
version mismatches
Previously, the multipath code was not linking to the correct libraries during a part of compilation. As a consequence, if
device-mapper-multipath
was used with a newer version of the libdevmapper
library than it was compiled with, multipath sometimes terminated unexpectedly. Now, multipath correctly links to the necessary libraries during compilation. As a result, multipath no longer crashes due to the library version mismatch. (BZ#1349376)
Failures on some devices no longer keep multipath from creating other devices
Previously, the
multipath
command sometimes failed to set up working devices because of failures on unrelated devices, as multipath quit early if it failed to get the information on any of the devices that multipath was trying to create. With this fix, multipath no longer quits early if it fails to get information on some of the devices and failures on some devices no longer keep multipath from creating others. (BZ#1343747)
multipath no longer modifies devices with a DM table type of multipath that were created by other programs
Previously, the multipath tools assumed that they were in charge of managing all Device Mapper (DM) devices with a multipath table. As a consequence, the
multipathd
service modified the tables of devices that were not created by the multipath tools. Now, multipath tools now only operate on devices with DM Universally Unique Identifiers (UUIDs) starting with mpath-
, which is the UUID prefix that multipath uses on all the devices it creates. As a result, multipath no longer modifies devices with a DM table type of multipath that were created by other programs. (BZ#1364879)
Change now takes effect immediately after using lvchange --zero n
against an active thin pool
Previously, when the
lvchange --zero n
command was used against an active thin pool, the change did not take effect until the next time the pool was deactivated. With this update, the change takes effect immediately. (BZ#1328245)
An incorrect exit status of mdadm -IRs
no longer causes error messages at boot time
Previously, the load_container() function was incorrectly trying to load a container from the member array. As a consequence, the
mdadm -IRs
command incorrectly returned the 1
exit status, which led to error messages at boot time. The load_container() function has been modified to prevent loading a container from a member array. As a result, error messages at boot time no longer occur. (BZ#1348925)
With IMSM, migrating two RAIDs in a container no longer causes both arrays to become degraded
The Intel Matrix Storage Manager (IMSM) does not allow a change to the RAID level of arrays in a container with two arrays. Previously, IMSM performed an array count check after disks were removed. As a consequence, changing, for example, RAID 1 to RAID 0 in a container with two RAIDs returned an error message, but a degraded RAID 1 was left. With this update, the array count check happens before the disk removal, and the described problem no longer occurs. (BZ#1413615)
The IMSM array is now correctly assembled and successfully started
Previously, the Intel Matrix Storage Manager (IMSM)
events
field was not set with a generation number. As a consequence, the mdadm utility sometimes re-assemblied a container with outdated metadata, and a failure occurred. With this update, the IMSM events
field is correctly set with the generation number. As a result, the IMSM array is correctly assembled and successfully started. (BZ#1413937)