mirror of
https://github.com/qemu/qemu.git
synced 2025-08-17 16:03:30 +00:00
hw/ppc: Avoid using Monitor in spapr_xive_end_pic_print_info()
Replace Monitor API by HumanReadableText one. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> Reviewed-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com> Message-Id: <20240610062105.49848-8-philmd@linaro.org>
This commit is contained in:
parent
ace6fcde9b
commit
950f1273ab
@ -133,7 +133,7 @@ static int spapr_xive_target_to_end(uint32_t target, uint8_t prio,
|
|||||||
* structure dumping only the information related to the OS EQ.
|
* structure dumping only the information related to the OS EQ.
|
||||||
*/
|
*/
|
||||||
static void spapr_xive_end_pic_print_info(SpaprXive *xive, XiveEND *end,
|
static void spapr_xive_end_pic_print_info(SpaprXive *xive, XiveEND *end,
|
||||||
Monitor *mon)
|
GString *buf)
|
||||||
{
|
{
|
||||||
uint64_t qaddr_base = xive_end_qaddr(end);
|
uint64_t qaddr_base = xive_end_qaddr(end);
|
||||||
uint32_t qindex = xive_get_field32(END_W1_PAGE_OFF, end->w1);
|
uint32_t qindex = xive_get_field32(END_W1_PAGE_OFF, end->w1);
|
||||||
@ -142,17 +142,12 @@ static void spapr_xive_end_pic_print_info(SpaprXive *xive, XiveEND *end,
|
|||||||
uint32_t qentries = 1 << (qsize + 10);
|
uint32_t qentries = 1 << (qsize + 10);
|
||||||
uint32_t nvt = xive_get_field32(END_W6_NVT_INDEX, end->w6);
|
uint32_t nvt = xive_get_field32(END_W6_NVT_INDEX, end->w6);
|
||||||
uint8_t priority = xive_get_field32(END_W7_F0_PRIORITY, end->w7);
|
uint8_t priority = xive_get_field32(END_W7_F0_PRIORITY, end->w7);
|
||||||
g_autoptr(GString) buf = g_string_new("");
|
|
||||||
g_autoptr(HumanReadableText) info = NULL;
|
|
||||||
|
|
||||||
monitor_printf(mon, "%3d/%d % 6d/%5d @%"PRIx64" ^%d",
|
g_string_append_printf(buf, "%3d/%d % 6d/%5d @%"PRIx64" ^%d",
|
||||||
spapr_xive_nvt_to_target(0, nvt),
|
spapr_xive_nvt_to_target(0, nvt),
|
||||||
priority, qindex, qentries, qaddr_base, qgen);
|
priority, qindex, qentries, qaddr_base, qgen);
|
||||||
|
|
||||||
xive_end_queue_pic_print_info(end, 6, buf);
|
xive_end_queue_pic_print_info(end, 6, buf);
|
||||||
|
|
||||||
info = human_readable_text_from_str(buf);
|
|
||||||
monitor_puts(mon, info->human_readable_text);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -198,13 +193,18 @@ static void spapr_xive_pic_print_info(SpaprXive *xive, Monitor *mon)
|
|||||||
if (!xive_eas_is_masked(eas)) {
|
if (!xive_eas_is_masked(eas)) {
|
||||||
uint32_t end_idx = xive_get_field64(EAS_END_INDEX, eas->w);
|
uint32_t end_idx = xive_get_field64(EAS_END_INDEX, eas->w);
|
||||||
XiveEND *end;
|
XiveEND *end;
|
||||||
|
g_autoptr(GString) buf = g_string_new("");
|
||||||
|
g_autoptr(HumanReadableText) info = NULL;
|
||||||
|
|
||||||
assert(end_idx < xive->nr_ends);
|
assert(end_idx < xive->nr_ends);
|
||||||
end = &xive->endt[end_idx];
|
end = &xive->endt[end_idx];
|
||||||
|
|
||||||
if (xive_end_is_valid(end)) {
|
if (xive_end_is_valid(end)) {
|
||||||
spapr_xive_end_pic_print_info(xive, end, mon);
|
spapr_xive_end_pic_print_info(xive, end, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
info = human_readable_text_from_str(buf);
|
||||||
|
monitor_puts(mon, info->human_readable_text);
|
||||||
}
|
}
|
||||||
monitor_printf(mon, "\n");
|
monitor_printf(mon, "\n");
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user