Description of problem: Resize of thin pool's metada is supported only when thin pool is online. Add support for metadata resize of inactive pool. This may require multiple steps together with execution of thin util. Version-Release number of selected component (if applicable): 2.02.106 How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Thinking about the issue - we most likely will need to update metadata to add temporary backup metadata into pool metadata structure (and probably using sendfile() to copy data - since we may at most copy ~16GB which should be rather quick operation) Then we resize the original metadata volume - and run thin_repair to recreate 'backup' metadata into the original metadata space. And finally free 'backup' metadata as the last step (in case the new resized metadata would be wrong - there is always chance to 'swap' back the old ones in recovery path...) This method seems to have the advantage we preserve policy and allocation position of original pool's metadata and in every step we have always unmodified metadata available. While 'backup' metadata are attached - we do not allow activation of thin pool. To recover/repair activation 'backup' needs to be removed (lvconvert --repair).