qemu/tests/qemu-iotests/236.out
John Snow 14da540f2a iotests: add iotest 236 for testing bitmap merge
New interface, new smoke test.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20181221093529.23855-12-jsnow@redhat.com>
[eblake: fix last-minute change to echo text]
Signed-off-by: Eric Blake <eblake@redhat.com>
2019-01-14 10:09:46 -06:00

352 lines
6.3 KiB
Plaintext

--- Preparing image & VM ---
--- Adding preliminary bitmaps A & B ---
{"execute": "block-dirty-bitmap-add", "arguments": {"granularity": 65536, "name": "bitmapA", "node": "drive0"}}
{"return": {}}
{"execute": "block-dirty-bitmap-add", "arguments": {"granularity": 65536, "name": "bitmapB", "node": "drive0"}}
{"return": {}}
--- Emulating writes ---
write -P0x5d 0 64k
{"return": ""}
write -P0xd5 1M 64k
{"return": ""}
write -P0xdc 32M 64k
{"return": ""}
write -P0xcd 0x3ff0000 64k
{"return": ""}
{
"bitmaps": {
"drive0": [
{
"count": 262144,
"granularity": 65536,
"name": "bitmapB",
"status": "active"
},
{
"count": 262144,
"granularity": 65536,
"name": "bitmapA",
"status": "active"
}
]
}
}
--- Submitting & Aborting Transaction ---
{
"execute": "transaction",
"arguments": {
"actions": [
{
"data": {
"node": "drive0",
"name": "bitmapB"
},
"type": "block-dirty-bitmap-disable"
},
{
"data": {
"node": "drive0",
"name": "bitmapC",
"granularity": 65536
},
"type": "block-dirty-bitmap-add"
},
{
"data": {
"node": "drive0",
"name": "bitmapA"
},
"type": "block-dirty-bitmap-clear"
},
{
"data": {},
"type": "abort"
}
]
}
}
{
"error": {
"class": "GenericError",
"desc": "Transaction aborted using Abort action"
}
}
{
"bitmaps": {
"drive0": [
{
"count": 262144,
"granularity": 65536,
"name": "bitmapB",
"status": "active"
},
{
"count": 262144,
"granularity": 65536,
"name": "bitmapA",
"status": "active"
}
]
}
}
--- Disabling B & Adding C ---
{
"execute": "transaction",
"arguments": {
"actions": [
{
"data": {
"node": "drive0",
"name": "bitmapB"
},
"type": "block-dirty-bitmap-disable"
},
{
"data": {
"node": "drive0",
"name": "bitmapC",
"granularity": 65536
},
"type": "block-dirty-bitmap-add"
},
{
"data": {
"node": "drive0",
"name": "bitmapC"
},
"type": "block-dirty-bitmap-disable"
},
{
"data": {
"node": "drive0",
"name": "bitmapC"
},
"type": "block-dirty-bitmap-enable"
}
]
}
}
{
"return": {}
}
--- Emulating further writes ---
write -P0xab 0 64k
{"return": ""}
write -P0xad 0x00f8000 64k
{"return": ""}
write -P0x1d 0x2008000 64k
{"return": ""}
write -P0xea 0x3fe0000 64k
{"return": ""}
--- Disabling A & C ---
{
"execute": "transaction",
"arguments": {
"actions": [
{
"data": {
"node": "drive0",
"name": "bitmapA"
},
"type": "block-dirty-bitmap-disable"
},
{
"data": {
"node": "drive0",
"name": "bitmapC"
},
"type": "block-dirty-bitmap-disable"
}
]
}
}
{
"return": {}
}
{
"bitmaps": {
"drive0": [
{
"count": 393216,
"granularity": 65536,
"name": "bitmapC",
"status": "disabled"
},
{
"count": 262144,
"granularity": 65536,
"name": "bitmapB",
"status": "disabled"
},
{
"count": 458752,
"granularity": 65536,
"name": "bitmapA",
"status": "disabled"
}
]
}
}
--- Submitting & Aborting Merge Transaction ---
{
"execute": "transaction",
"arguments": {
"actions": [
{
"data": {
"node": "drive0",
"disabled": true,
"name": "bitmapD",
"granularity": 65536
},
"type": "block-dirty-bitmap-add"
},
{
"data": {
"node": "drive0",
"target": "bitmapD",
"bitmaps": [
"bitmapB",
"bitmapC"
]
},
"type": "block-dirty-bitmap-merge"
},
{
"data": {},
"type": "abort"
}
]
}
}
{
"error": {
"class": "GenericError",
"desc": "Transaction aborted using Abort action"
}
}
{
"bitmaps": {
"drive0": [
{
"count": 393216,
"granularity": 65536,
"name": "bitmapC",
"status": "disabled"
},
{
"count": 262144,
"granularity": 65536,
"name": "bitmapB",
"status": "disabled"
},
{
"count": 458752,
"granularity": 65536,
"name": "bitmapA",
"status": "disabled"
}
]
}
}
--- Creating D as a merge of B & C ---
{
"execute": "transaction",
"arguments": {
"actions": [
{
"data": {
"node": "drive0",
"disabled": true,
"name": "bitmapD",
"granularity": 65536
},
"type": "block-dirty-bitmap-add"
},
{
"data": {
"node": "drive0",
"target": "bitmapD",
"bitmaps": [
"bitmapB",
"bitmapC"
]
},
"type": "block-dirty-bitmap-merge"
}
]
}
}
{
"return": {}
}
{
"bitmaps": {
"drive0": [
{
"count": 458752,
"granularity": 65536,
"name": "bitmapD",
"status": "disabled"
},
{
"count": 393216,
"granularity": 65536,
"name": "bitmapC",
"status": "disabled"
},
{
"count": 262144,
"granularity": 65536,
"name": "bitmapB",
"status": "disabled"
},
{
"count": 458752,
"granularity": 65536,
"name": "bitmapA",
"status": "disabled"
}
]
}
}
--- Removing bitmaps A, B, C, and D ---
{"execute": "block-dirty-bitmap-remove", "arguments": {"name": "bitmapA", "node": "drive0"}}
{"return": {}}
{"execute": "block-dirty-bitmap-remove", "arguments": {"name": "bitmapB", "node": "drive0"}}
{"return": {}}
{"execute": "block-dirty-bitmap-remove", "arguments": {"name": "bitmapC", "node": "drive0"}}
{"return": {}}
{"execute": "block-dirty-bitmap-remove", "arguments": {"name": "bitmapD", "node": "drive0"}}
{"return": {}}
--- Final Query ---
{
"bitmaps": {
"drive0": []
}
}
--- Done ---