# HG changeset patch # User Adin Scannell # Date 1316086167 14400 # Node ID 2a5e57e2a3d212e7cc888b87301e5b888f9514d1 # Parent 28e1a8b6c93432d80c1166faf2c5429489bf16f2 Exposing number of shared pages through libxl and xl list. diff -r 28e1a8b6c934 -r 2a5e57e2a3d2 tools/libxl/libxl.c --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -337,6 +337,7 @@ static void xcinfo2xlinfo(const xc_domai xlinfo->shutdown_reason = ~0; xlinfo->current_memkb = PAGE_TO_MEMKB(xcinfo->tot_pages); + xlinfo->shared_memkb = PAGE_TO_MEMKB(xcinfo->shr_pages); xlinfo->max_memkb = PAGE_TO_MEMKB(xcinfo->max_pages); xlinfo->cpu_time = xcinfo->cpu_time; xlinfo->vcpu_max_id = xcinfo->max_vcpu_id; diff -r 28e1a8b6c934 -r 2a5e57e2a3d2 tools/libxl/libxl.idl --- a/tools/libxl/libxl.idl +++ b/tools/libxl/libxl.idl @@ -40,6 +40,7 @@ libxl_dominfo = Struct("dominfo",[ Otherwise set to a value guaranteed not to clash with any valid SHUTDOWN_* constant."""), ("current_memkb", uint64), + ("shared_memkb", uint64), ("max_memkb", uint64), ("cpu_time", uint64), ("vcpu_max_id", uint32), diff -r 28e1a8b6c934 -r 2a5e57e2a3d2 tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -2309,7 +2309,7 @@ static void list_domains(int verbose, co int i; static const char shutdown_reason_letters[]= "-rscw"; - printf("Name ID Mem VCPUs\tState\tTime(s)"); + printf("Name ID Mem Shr VCPUs State Time(s)"); if (verbose) printf(" UUID Reason-Code"); printf("\n"); for (i = 0; i < nb_domain; i++) { @@ -2317,10 +2317,11 @@ static void list_domains(int verbose, co unsigned shutdown_reason; domname = libxl_domid_to_name(&ctx, info[i].domid); shutdown_reason = info[i].shutdown ? info[i].shutdown_reason : 0; - printf("%-40s %5d %5lu %5d %c%c%c%c%c%c %8.1f", + printf("%-40s %5d %5lu %5lu %5d %c%c%c%c%c%c %8.1f", domname, info[i].domid, (unsigned long) (info[i].current_memkb / 1024), + (unsigned long) (info[i].shared_memkb / 1024), info[i].vcpu_online, info[i].running ? 'r' : '-', info[i].blocked ? 'b' : '-',