mirror of
https://github.com/clearlinux/docker.git
synced 2026-09-03 12:11:41 +00:00
devmapper: Move maxDeviceID check in loadMetadata
maxDeviceID is upper limit on device Id thin pool can support. Right now we have this check only during startup. It is a good idea to move this check in loadMetadata so that any time a device file is loaded and if it is corrupted and device Id is more than maxDevieceID, it will be detected right then and there. Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
This commit is contained in:
@@ -405,11 +405,6 @@ func (devices *DeviceSet) deviceFileWalkFunction(path string, finfo os.FileInfo)
|
||||
return fmt.Errorf("Error loading device metadata file %s", hash)
|
||||
}
|
||||
|
||||
if dinfo.DeviceID > maxDeviceID {
|
||||
logrus.Errorf("Ignoring Invalid DeviceID=%d", dinfo.DeviceID)
|
||||
return nil
|
||||
}
|
||||
|
||||
devices.Lock()
|
||||
devices.markDeviceIDUsed(dinfo.DeviceID)
|
||||
devices.Unlock()
|
||||
@@ -715,6 +710,11 @@ func (devices *DeviceSet) loadMetadata(hash string) *devInfo {
|
||||
return nil
|
||||
}
|
||||
|
||||
if info.DeviceID > maxDeviceID {
|
||||
logrus.Errorf("Ignoring Invalid DeviceId=%d", info.DeviceID)
|
||||
return nil
|
||||
}
|
||||
|
||||
return info
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user