From: Keir Fraser <keir.fraser@eu.citrix.com>
To: Yang Hongyang <yanghy@cn.fujitsu.com>,
"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: [PATCH]xl: Some small fixes to xl
Date: Fri, 21 May 2010 15:26:08 +0100 [thread overview]
Message-ID: <C81C5690.14E00%keir.fraser@eu.citrix.com> (raw)
In-Reply-To: <4BF62FB9.40008@cn.fujitsu.com>
Please provide a signed-off-by line.
K.
On 21/05/2010 08:01, "Yang Hongyang" <yanghy@cn.fujitsu.com> wrote:
> The patch fixes following problems:
> -When use mem-set, I got suspicious error output:
> # xl mem-set 1 256g
> setting domid 1 memory to : 268435456
> [0] libxl.c:2535:libxl_set_memory_target: memory_dynamic_max must be less
> than or equal to memory_static_max
> : Success
> -parse_mem_size_kb() returns type int64_t
> -String generated by strdup() should be freed
> -When using 'xl help', mem-max and mem-set's output is not as intend, and it's
> also
> breaks bash completion, fix it.
>
> diff -r 840f269d95fb tools/libxl/libxl.c
> --- a/tools/libxl/libxl.c Wed May 19 22:59:52 2010 +0100
> +++ b/tools/libxl/libxl.c Fri May 21 22:56:02 2010 +0800
> @@ -2531,7 +2531,7 @@
> }
>
> if (target_memkb > memorykb) {
> - XL_LOG_ERRNO(ctx, XL_LOG_ERROR,
> + XL_LOG(ctx, XL_LOG_ERROR,
> "memory_dynamic_max must be less than or equal to
> memory_static_max\n");
> return 1;
> }
> diff -r 840f269d95fb tools/libxl/xl_cmdimpl.c
> --- a/tools/libxl/xl_cmdimpl.c Wed May 19 22:59:52 2010 +0100
> +++ b/tools/libxl/xl_cmdimpl.c Fri May 21 22:56:02 2010 +0800
> @@ -1300,7 +1300,7 @@
>
> void set_memory_target(char *p, char *mem)
> {
> - long long int memorykb;
> + int64_t memorykb;
>
> find_domain(p);
>
> @@ -1310,7 +1310,7 @@
> exit(3);
> }
>
> - printf("setting domid %d memory to : %lld\n", domid, memorykb);
> + printf("setting domid %d memory to : %ld\n", domid, memorykb);
> libxl_set_memory_target(&ctx, domid, memorykb, /* enforce */ 1);
> }
>
> @@ -3644,7 +3644,8 @@
> int fd;
> char buf[512];
> uint32_t uptime = 0;
> - char *uptime_str = 0;
> + char *uptime_str = NULL;
> + char *now_str = NULL;
>
> fd = open("/proc/uptime", O_RDONLY);
> if (fd == -1)
> @@ -3661,9 +3662,10 @@
>
> if (short_mode)
> {
> + now_str = current_time_to_string(now);
> uptime_str = uptime_to_string(uptime, 1);
> - printf(" %s up %s, %s (%d)\n", current_time_to_string(now),
> - uptime_str, libxl_domid_to_name(&ctx, 0), 0);
> + printf(" %s up %s, %s (%d)\n", now_str, uptime_str,
> + libxl_domid_to_name(&ctx, 0), 0);
> }
> else
> {
> @@ -3672,6 +3674,8 @@
> 0, uptime_str);
> }
>
> + if (now_str)
> + free(now_str);
> if (uptime_str)
> free(uptime_str);
> return;
> @@ -3684,7 +3688,8 @@
> {
> uint32_t s_time = 0;
> uint32_t uptime = 0;
> - char *uptime_str = 0;
> + char *uptime_str = NULL;
> + char *now_str = NULL;
>
> s_time = libxl_vm_get_start_time(&ctx, domuid);
> if (s_time == -1)
> @@ -3692,9 +3697,10 @@
> uptime = now - s_time;
> if (short_mode)
> {
> + now_str = current_time_to_string(now);
> uptime_str = uptime_to_string(uptime, 1);
> - printf(" %s up %s, %s (%d)\n", current_time_to_string(now),
> - uptime_str, libxl_domid_to_name(&ctx, domuid), domuid);
> + printf(" %s up %s, %s (%d)\n", now_str, uptime_str,
> + libxl_domid_to_name(&ctx, domuid), domuid);
> }
> else
> {
> @@ -3703,6 +3709,8 @@
> domuid, uptime_str);
> }
>
> + if (now_str)
> + free(now_str);
> if (uptime_str)
> free(uptime_str);
> return;
> diff -r 840f269d95fb tools/libxl/xl_cmdtable.c
> --- a/tools/libxl/xl_cmdtable.c Wed May 19 22:59:52 2010 +0100
> +++ b/tools/libxl/xl_cmdtable.c Fri May 21 22:56:02 2010 +0800
> @@ -110,17 +110,13 @@
> },
> { "mem-max",
> &main_memmax,
> - "Set the maximum amount reservation for a domain.\n"
> - "Units default to kilobytes, but can be suffixed with\n"
> - "'b' (bytes), 'k' (KB), 'm' (MB), 'g' (GB) or 't' (TB)",
> - "<Domain> <MemKB>",
> + "Set the maximum amount reservation for a domain",
> + "<Domain> <MemKB['b'[bytes]|'k'[KB]|'m'[MB]|'g'[GB]|'t'[TB]]>",
> },
> { "mem-set",
> &main_memset,
> - "Set the current memory usage for a domain.\n"
> - "Units default to kilobytes, but can be suffixed with\n"
> - "'b' (bytes), 'k' (KB), 'm' (MB), 'g' (GB) or 't' (TB)",
> - "<Domain> <MemKB>",
> + "Set the current memory usage for a domain",
> + "<Domain> <MemKB['b'[bytes]|'k'[KB]|'m'[MB]|'g'[GB]|'t'[TB]]>",
> },
> { "button-press",
> &main_button_press,
next prev parent reply other threads:[~2010-05-21 14:26 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-21 7:01 [PATCH]xl: Some small fixes to xl Yang Hongyang
2010-05-21 14:26 ` Keir Fraser [this message]
2010-05-26 0:55 ` Yang Hongyang
2010-05-21 19:25 ` Jeremy Fitzhardinge
2010-05-24 0:48 ` Yang Hongyang
2010-05-24 9:16 ` Stefano Stabellini
2010-05-24 10:24 ` Ian Jackson
2010-05-24 10:31 ` Stefano Stabellini
2010-05-24 17:32 ` Jeremy Fitzhardinge
2010-05-26 1:02 ` Yang Hongyang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=C81C5690.14E00%keir.fraser@eu.citrix.com \
--to=keir.fraser@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
--cc=yanghy@cn.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).