[PATCH] tools/helpers: fix snprintf argument in init-dom0less.c

Luca Fancellu posted 1 patch 1 year, 9 months ago
Test gitlab-ci failed
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/20220629124938.26498-1-luca.fancellu@arm.com
tools/helpers/init-dom0less.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
[PATCH] tools/helpers: fix snprintf argument in init-dom0less.c
Posted by Luca Fancellu 1 year, 9 months ago
Fix snprintf argument in init-dom0less.c because two instances of
the function are using libxl_dominfo struct members that are uint64_t
types, so change "%lu" to "%"PRIu64 to handle it properly when
building on arm32 and arm64.

Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
---
 tools/helpers/init-dom0less.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-dom0less.c
index 4c90dd6a0c8f..fee93459c4b9 100644
--- a/tools/helpers/init-dom0less.c
+++ b/tools/helpers/init-dom0less.c
@@ -5,6 +5,7 @@
 #include <stdlib.h>
 #include <sys/mman.h>
 #include <sys/time.h>
+#include <inttypes.h>
 #include <xenstore.h>
 #include <xenctrl.h>
 #include <xenguest.h>
@@ -138,10 +139,10 @@ static int create_xenstore(struct xs_handle *xsh,
                   "vm/" LIBXL_UUID_FMT, LIBXL_UUID_BYTES(uuid));
     if (rc < 0 || rc >= STR_MAX_LENGTH)
         return rc;
-    rc = snprintf(max_memkb_str, STR_MAX_LENGTH, "%lu", info->max_memkb);
+    rc = snprintf(max_memkb_str, STR_MAX_LENGTH, "%"PRIu64, info->max_memkb);
     if (rc < 0 || rc >= STR_MAX_LENGTH)
         return rc;
-    rc = snprintf(target_memkb_str, STR_MAX_LENGTH, "%lu", info->current_memkb);
+    rc = snprintf(target_memkb_str, STR_MAX_LENGTH, "%"PRIu64, info->current_memkb);
     if (rc < 0 || rc >= STR_MAX_LENGTH)
         return rc;
     rc = snprintf(ring_ref_str, STR_MAX_LENGTH, "%lld",
-- 
2.17.1
Re: [PATCH] tools/helpers: fix snprintf argument in init-dom0less.c
Posted by Bertrand Marquis 1 year, 9 months ago
Hi Luca,

> On 29 Jun 2022, at 13:49, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
> 
> Fix snprintf argument in init-dom0less.c because two instances of
> the function are using libxl_dominfo struct members that are uint64_t
> types, so change "%lu" to "%"PRIu64 to handle it properly when
> building on arm32 and arm64.
> 
> Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Cheers
Bertrand

> ---
> tools/helpers/init-dom0less.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-dom0less.c
> index 4c90dd6a0c8f..fee93459c4b9 100644
> --- a/tools/helpers/init-dom0less.c
> +++ b/tools/helpers/init-dom0less.c
> @@ -5,6 +5,7 @@
> #include <stdlib.h>
> #include <sys/mman.h>
> #include <sys/time.h>
> +#include <inttypes.h>
> #include <xenstore.h>
> #include <xenctrl.h>
> #include <xenguest.h>
> @@ -138,10 +139,10 @@ static int create_xenstore(struct xs_handle *xsh,
>                   "vm/" LIBXL_UUID_FMT, LIBXL_UUID_BYTES(uuid));
>     if (rc < 0 || rc >= STR_MAX_LENGTH)
>         return rc;
> -    rc = snprintf(max_memkb_str, STR_MAX_LENGTH, "%lu", info->max_memkb);
> +    rc = snprintf(max_memkb_str, STR_MAX_LENGTH, "%"PRIu64, info->max_memkb);
>     if (rc < 0 || rc >= STR_MAX_LENGTH)
>         return rc;
> -    rc = snprintf(target_memkb_str, STR_MAX_LENGTH, "%lu", info->current_memkb);
> +    rc = snprintf(target_memkb_str, STR_MAX_LENGTH, "%"PRIu64, info->current_memkb);
>     if (rc < 0 || rc >= STR_MAX_LENGTH)
>         return rc;
>     rc = snprintf(ring_ref_str, STR_MAX_LENGTH, "%lld",
> -- 
> 2.17.1
> 
Re: [PATCH] tools/helpers: fix snprintf argument in init-dom0less.c
Posted by Anthony PERARD 1 year, 9 months ago
On Mon, Jul 04, 2022 at 03:32:08PM +0000, Bertrand Marquis wrote:
> Hi Luca,
> 
> > On 29 Jun 2022, at 13:49, Luca Fancellu <Luca.Fancellu@arm.com> wrote:
> > 
> > Fix snprintf argument in init-dom0less.c because two instances of
> > the function are using libxl_dominfo struct members that are uint64_t
> > types, so change "%lu" to "%"PRIu64 to handle it properly when
> > building on arm32 and arm64.
> > 
> > Signed-off-by: Luca Fancellu <luca.fancellu@arm.com>
> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,

-- 
Anthony PERARD