mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-03 20:01:16 +00:00
0175dc6ea0
Remove the complex and unreliable code which inferred the node name hierarchy only from data returned by 'query-named-block-nodes'. It turns out that query-blockstats contain the full hierarchy of nodes as perceived by qemu so the inference code is not necessary. In query blockstats, the 'parent' object corresponds to the storage behind a storage volume and 'backing' corresponds to the lower level of backing chain. Since all have node names this data can be really easily used to detect node names. In addition to the code refactoring the one remaining test case needed to be fixed along. Reviewed-by: Eric Blake <eblake@redhat.com>
167 lines
4.8 KiB
JSON
167 lines
4.8 KiB
JSON
[
|
|
{
|
|
"device": "drive-virtio-disk0",
|
|
"parent": {
|
|
"stats": {
|
|
"flush_total_time_ns": 0,
|
|
"wr_highest_offset": 32899072,
|
|
"wr_total_time_ns": 0,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 0,
|
|
"wr_bytes": 0,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": false,
|
|
"rd_total_time_ns": 0,
|
|
"flush_operations": 0,
|
|
"wr_operations": 0,
|
|
"rd_merged": 0,
|
|
"rd_bytes": 0,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": false,
|
|
"rd_operations": 0,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"node-name": "#block033"
|
|
},
|
|
"stats": {
|
|
"flush_total_time_ns": 452246313,
|
|
"wr_highest_offset": 8072282112,
|
|
"wr_total_time_ns": 4803102521,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 8,
|
|
"wr_bytes": 6517248,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": true,
|
|
"rd_total_time_ns": 11065169148,
|
|
"flush_operations": 10,
|
|
"wr_operations": 129,
|
|
"rd_merged": 77,
|
|
"rd_bytes": 76399104,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": true,
|
|
"idle_time_ns": 22663656304,
|
|
"rd_operations": 4038,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"backing": {
|
|
"parent": {
|
|
"stats": {
|
|
"flush_total_time_ns": 0,
|
|
"wr_highest_offset": 0,
|
|
"wr_total_time_ns": 0,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 0,
|
|
"wr_bytes": 0,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": false,
|
|
"rd_total_time_ns": 0,
|
|
"flush_operations": 0,
|
|
"wr_operations": 0,
|
|
"rd_merged": 0,
|
|
"rd_bytes": 0,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": false,
|
|
"rd_operations": 0,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"node-name": "#block220"
|
|
},
|
|
"stats": {
|
|
"flush_total_time_ns": 0,
|
|
"wr_highest_offset": 0,
|
|
"wr_total_time_ns": 0,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 0,
|
|
"wr_bytes": 0,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": false,
|
|
"rd_total_time_ns": 0,
|
|
"flush_operations": 0,
|
|
"wr_operations": 0,
|
|
"rd_merged": 0,
|
|
"rd_bytes": 0,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": false,
|
|
"rd_operations": 0,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"backing": {
|
|
"parent": {
|
|
"stats": {
|
|
"flush_total_time_ns": 0,
|
|
"wr_highest_offset": 0,
|
|
"wr_total_time_ns": 0,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 0,
|
|
"wr_bytes": 0,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": false,
|
|
"rd_total_time_ns": 0,
|
|
"flush_operations": 0,
|
|
"wr_operations": 0,
|
|
"rd_merged": 0,
|
|
"rd_bytes": 0,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": false,
|
|
"rd_operations": 0,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"node-name": "#block481"
|
|
},
|
|
"stats": {
|
|
"flush_total_time_ns": 0,
|
|
"wr_highest_offset": 0,
|
|
"wr_total_time_ns": 0,
|
|
"failed_wr_operations": 0,
|
|
"failed_rd_operations": 0,
|
|
"wr_merged": 0,
|
|
"wr_bytes": 0,
|
|
"timed_stats": [
|
|
|
|
],
|
|
"failed_flush_operations": 0,
|
|
"account_invalid": false,
|
|
"rd_total_time_ns": 0,
|
|
"flush_operations": 0,
|
|
"wr_operations": 0,
|
|
"rd_merged": 0,
|
|
"rd_bytes": 0,
|
|
"invalid_flush_operations": 0,
|
|
"account_failed": false,
|
|
"rd_operations": 0,
|
|
"invalid_wr_operations": 0,
|
|
"invalid_rd_operations": 0
|
|
},
|
|
"node-name": "#block558"
|
|
},
|
|
"node-name": "#block306"
|
|
},
|
|
"node-name": "#block187"
|
|
}
|
|
]
|