Bug #13674
Avoid re-writing old-format image header on resize
0%
Description
Race conditions are possible between snapshot creation and resize operations (especially if there are issues with watch/notify preventing a header re-read). For example, if a stale snapshot sequence is written to the header, the image will no longer be able to be opened:
librbd: image snap context is invalid!(5) Input/output error
Related issues
Associated revisions
librbd: resize should only update image size within header
Previously, the whole RBD image format 1 header struct was
re-written to disk on a resize operation.
Fixes: #13674
Backport: infernalis, hammer, firefly
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
librbd: resize should only update image size within header
Previously, the whole RBD image format 1 header struct was
re-written to disk on a resize operation.
Fixes: #13674
Backport: infernalis, hammer, firefly
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit d5be20b6d4646284571568ab28cbf45b0729390b)
librbd: resize should only update image size within header
Previously, the whole RBD image format 1 header struct was
re-written to disk on a resize operation.
Fixes: #13674
Backport: infernalis, hammer, firefly
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
(cherry picked from commit d5be20b6d4646284571568ab28cbf45b0729390b)
History
#1 Updated by Jason Dillaman over 8 years ago
- Backport set to infernalis,hammer,firefly
#2 Updated by Jason Dillaman over 8 years ago
- Status changed from In Progress to Fix Under Review
master PR: https://github.com/ceph/ceph/pull/6447
#3 Updated by Loïc Dachary over 8 years ago
- Copied to Backport #13752: Avoid re-writing old-format image header on resize added
#4 Updated by Loïc Dachary over 8 years ago
- Copied to Backport #13753: Avoid re-writing old-format image header on resize added
#5 Updated by Loïc Dachary over 8 years ago
- Copied to Backport #13754: Avoid re-writing old-format image header on resize added
#6 Updated by Loïc Dachary over 8 years ago
- Status changed from Fix Under Review to Pending Backport
#7 Updated by Loïc Dachary about 8 years ago
- Status changed from Pending Backport to Resolved