summary refs log tree commit diff stats
path: root/results/classifier/accel-gemma3:12b/vmm/1459
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/accel-gemma3:12b/vmm/1459')
-rw-r--r--results/classifier/accel-gemma3:12b/vmm/145936
1 files changed, 36 insertions, 0 deletions
diff --git a/results/classifier/accel-gemma3:12b/vmm/1459 b/results/classifier/accel-gemma3:12b/vmm/1459
new file mode 100644
index 000000000..092eaef1f
--- /dev/null
+++ b/results/classifier/accel-gemma3:12b/vmm/1459
@@ -0,0 +1,36 @@
+
+analyze-migration.py doesn't account for saved blocks
+Description of problem:
+
+Steps to reproduce:
+1. Make a migration snapshot that includes incremental block device (from HMP: `migrate -i "exec: cat > snap"`)
+2. Load the snapshot: `scripts/analyze-migration.py -f snap` 
+
+
+```
+Traceback (most recent call last):
+  File "scripts/analyze-migration.py", line 605, in <module>
+    dump.read(dump_memory = args.memory)
+  File "scripts/analyze-migration.py", line 539, in read
+    classdesc = self.section_classes[section_key]
+KeyError: ('block', 0)
+```
+Additional information:
+Here's pseudocode derived from `block_load` in `migration/block.c`:
+
+```
+N blocks of the following:
+
+  read 64 bits: sector number and flags
+    (blk->sector << BDRV_SECTOR_BITS) | flags
+
+  if flags & BLK_MIG_FLAG_EOS:
+    break
+  if flags & BLK_MIG_FLAG_PROGRESS
+    continue
+  if flags & BLK_MIG_FLAG_DEVICE_BLOCK
+    byte: name length
+    length bytes: device name string
+    if not flags & BLK_MIG_FLAG_ZERO_BLOCK:
+      read (1 << 20) bytes 
+```