 81cbfd5088
			
		
	
	
		81cbfd5088
		
	
	
	
	
		
			
			The same information is available via the 'recording' and 'busy' fields. Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
		
			
				
	
	
		
			274 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			274 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| --- Preparing image & VM ---
 | |
| 
 | |
| --- 1st Boot (Establish Baseline Image) ---
 | |
| 
 | |
| 
 | |
| --- Adding bitmaps Small, Medium, Large, and Transient ---
 | |
| 
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"granularity": 32768, "name": "Small", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "Medium", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"granularity": 131072, "name": "Large", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "Transient", "node": "drive0", "persistent": false}}
 | |
| {"return": {}}
 | |
| --- Forcing flush of bitmaps to disk ---
 | |
| 
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": [
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Transient",
 | |
|         "persistent": false,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 131072,
 | |
|         "name": "Large",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Medium",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 32768,
 | |
|         "name": "Small",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       }
 | |
|     ]
 | |
|   }
 | |
| }
 | |
| --- 2nd Boot (Grow Image) ---
 | |
| 
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": [
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 32768,
 | |
|         "name": "Small",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Medium",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 131072,
 | |
|         "name": "Large",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       }
 | |
|     ]
 | |
|   }
 | |
| }
 | |
| --- Adding new bitmap, growing image, and adding 2nd new bitmap ---
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "New", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "human-monitor-command", "arguments": {"command-line": "block_resize drive0 70G"}}
 | |
| {"return": ""}
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "Newtwo", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": [
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Newtwo",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "New",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 32768,
 | |
|         "name": "Small",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Medium",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 131072,
 | |
|         "name": "Large",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       }
 | |
|     ]
 | |
|   }
 | |
| }
 | |
| --- Forcing flush of bitmaps to disk ---
 | |
| 
 | |
| --- 3rd Boot (Shrink Image) ---
 | |
| 
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": [
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "New",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Newtwo",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 32768,
 | |
|         "name": "Small",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Medium",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 131072,
 | |
|         "name": "Large",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       }
 | |
|     ]
 | |
|   }
 | |
| }
 | |
| --- Adding "NewB" bitmap, removing "New" bitmap ---
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "NewB", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "New", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| --- Truncating image ---
 | |
| 
 | |
| {"execute": "human-monitor-command", "arguments": {"command-line": "block_resize drive0 50G"}}
 | |
| {"return": ""}
 | |
| --- Adding "NewC" bitmap, removing "NewTwo" bitmap ---
 | |
| {"execute": "block-dirty-bitmap-add", "arguments": {"name": "NewC", "node": "drive0", "persistent": true}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "Newtwo", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| --- Forcing flush of bitmaps to disk ---
 | |
| 
 | |
| --- 4th Boot (Verification and Cleanup) ---
 | |
| 
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": [
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "NewB",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "NewC",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 32768,
 | |
|         "name": "Small",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 65536,
 | |
|         "name": "Medium",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       },
 | |
|       {
 | |
|         "busy": false,
 | |
|         "count": 0,
 | |
|         "granularity": 131072,
 | |
|         "name": "Large",
 | |
|         "persistent": true,
 | |
|         "recording": true
 | |
|       }
 | |
|     ]
 | |
|   }
 | |
| }
 | |
| --- Removing all Bitmaps ---
 | |
| 
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "Small", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "Medium", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "Large", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "NewB", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| {"execute": "block-dirty-bitmap-remove", "arguments": {"name": "NewC", "node": "drive0"}}
 | |
| {"return": {}}
 | |
| {
 | |
|   "bitmaps": {
 | |
|     "drive0": []
 | |
|   }
 | |
| }
 | |
| 
 | |
| --- Done ---
 |