Commit 610bba8b9372597967aefdc8d90661d2ab248802

Authored by Alasdair G Kergon
1 parent f722406faa

dm thin: fix metadata dev resize detection

Fix detection of the need to resize the dm thin metadata device.

The code incorrectly tried to extend the metadata device when it
didn't need to due to a merging error with patch 24347e9 ("dm thin:
detect metadata device resizing").

  device-mapper: transaction manager: couldn't open metadata space map
  device-mapper: thin metadata: tm_open_with_sm failed
  device-mapper: thin: aborting transaction failed
  device-mapper: thin: switching pool to failure mode

Signed-off-by: Alasdair G Kergon <agk@redhat.com>

Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff

drivers/md/dm-thin.c
... ... @@ -2188,7 +2188,7 @@
2188 2188  
2189 2189 *need_commit = false;
2190 2190  
2191   - metadata_dev_size = get_metadata_dev_size(pool->md_dev);
  2191 + metadata_dev_size = get_metadata_dev_size_in_blocks(pool->md_dev);
2192 2192  
2193 2193 r = dm_pool_get_metadata_dev_size(pool->pmd, &sb_metadata_dev_size);
2194 2194 if (r) {
... ... @@ -2197,7 +2197,7 @@
2197 2197 }
2198 2198  
2199 2199 if (metadata_dev_size < sb_metadata_dev_size) {
2200   - DMERR("metadata device (%llu sectors) too small: expected %llu",
  2200 + DMERR("metadata device (%llu blocks) too small: expected %llu",
2201 2201 metadata_dev_size, sb_metadata_dev_size);
2202 2202 return -EINVAL;
2203 2203