memory: Dump HPA and access type of ramblocks
It's convenient to dump HVA and RW/RO status of a ramblock in "info ramblock" for debug purpose. Before: Offset Used Total 0x0000000000000000 0x0000000400000000 0x0000000400000000 After: Offset Used Total HVA RO 0x0000000000000000 0x0000000400000000 0x0000000400000000 0x00007f12ebe00000 rw Signed-off-by: Ted Chen <znscnchen@gmail.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: David Hildenbrand <david@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20221205120712.269013-1-znscnchen@gmail.com> [PMD: Add uintptr_t cast for 32-bit hosts] Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
parent
9d9bc7db50
commit
dbc6ae9c3b
@ -1126,15 +1126,21 @@ GString *ram_block_format(void)
|
||||
GString *buf = g_string_new("");
|
||||
|
||||
RCU_READ_LOCK_GUARD();
|
||||
g_string_append_printf(buf, "%24s %8s %18s %18s %18s\n",
|
||||
"Block Name", "PSize", "Offset", "Used", "Total");
|
||||
g_string_append_printf(buf, "%24s %8s %18s %18s %18s %18s %3s\n",
|
||||
"Block Name", "PSize", "Offset", "Used", "Total",
|
||||
"HVA", "RO");
|
||||
|
||||
RAMBLOCK_FOREACH(block) {
|
||||
psize = size_to_str(block->page_size);
|
||||
g_string_append_printf(buf, "%24s %8s 0x%016" PRIx64 " 0x%016" PRIx64
|
||||
" 0x%016" PRIx64 "\n", block->idstr, psize,
|
||||
" 0x%016" PRIx64 " 0x%016" PRIx64 " %3s\n",
|
||||
block->idstr, psize,
|
||||
(uint64_t)block->offset,
|
||||
(uint64_t)block->used_length,
|
||||
(uint64_t)block->max_length);
|
||||
(uint64_t)block->max_length,
|
||||
(uint64_t)(uintptr_t)block->host,
|
||||
block->mr->readonly ? "ro" : "rw");
|
||||
|
||||
g_free(psize);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user