[PATCH] hw/misc/macio/cuda: Simplify using the ldst API

Philippe Mathieu-Daudé via posted 1 patch 2 years, 3 months ago
Test checkpatch failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20220124231355.48210-1-f4bug@amsat.org
hw/misc/macio/cuda.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
[PATCH] hw/misc/macio/cuda: Simplify using the ldst API
Posted by Philippe Mathieu-Daudé via 2 years, 3 months ago
This code is easier to review using the load/store API.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/misc/macio/cuda.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
index e917a6a095..f1186671bf 100644
--- a/hw/misc/macio/cuda.c
+++ b/hw/misc/macio/cuda.c
@@ -36,6 +36,7 @@
 #include "sysemu/runstate.h"
 #include "qapi/error.h"
 #include "qemu/cutils.h"
+#include "qemu/bswap.h"
 #include "qemu/log.h"
 #include "qemu/module.h"
 #include "trace.h"
@@ -345,10 +346,7 @@ static bool cuda_cmd_get_time(CUDAState *s,
 
     ti = s->tick_offset + (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)
                            / NANOSECONDS_PER_SECOND);
-    out_data[0] = ti >> 24;
-    out_data[1] = ti >> 16;
-    out_data[2] = ti >> 8;
-    out_data[3] = ti;
+    stl_be_p(out_data, ti);
     *out_len = 4;
     return true;
 }
@@ -363,8 +361,7 @@ static bool cuda_cmd_set_time(CUDAState *s,
         return false;
     }
 
-    ti = (((uint32_t)in_data[0]) << 24) + (((uint32_t)in_data[1]) << 16)
-         + (((uint32_t)in_data[2]) << 8) + in_data[3];
+    ti = ldl_be_p(in_data);
     s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)
                            / NANOSECONDS_PER_SECOND);
     return true;
-- 
2.34.1


Re: [PATCH] hw/misc/macio/cuda: Simplify using the ldst API
Posted by Matheus K. Ferst 2 years, 3 months ago
On 24/01/2022 20:13, Philippe Mathieu-Daudé via wrote:
> This code is easier to review using the load/store API.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   hw/misc/macio/cuda.c | 9 +++------
>   1 file changed, 3 insertions(+), 6 deletions(-)

Reviewed-by: Matheus Ferst <matheus.ferst@eldorado.org.br>

-- 
Matheus K. Ferst
Instituto de Pesquisas ELDORADO <http://www.eldorado.org.br/>
Analista de Software
Aviso Legal - Disclaimer <https://www.eldorado.org.br/disclaimer.html>

Re: [PATCH] hw/misc/macio/cuda: Simplify using the ldst API
Posted by Mark Cave-Ayland 2 years, 3 months ago
On 24/01/2022 23:13, Philippe Mathieu-Daudé via wrote:

> This code is easier to review using the load/store API.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   hw/misc/macio/cuda.c | 9 +++------
>   1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
> index e917a6a095..f1186671bf 100644
> --- a/hw/misc/macio/cuda.c
> +++ b/hw/misc/macio/cuda.c
> @@ -36,6 +36,7 @@
>   #include "sysemu/runstate.h"
>   #include "qapi/error.h"
>   #include "qemu/cutils.h"
> +#include "qemu/bswap.h"
>   #include "qemu/log.h"
>   #include "qemu/module.h"
>   #include "trace.h"
> @@ -345,10 +346,7 @@ static bool cuda_cmd_get_time(CUDAState *s,
>   
>       ti = s->tick_offset + (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)
>                              / NANOSECONDS_PER_SECOND);
> -    out_data[0] = ti >> 24;
> -    out_data[1] = ti >> 16;
> -    out_data[2] = ti >> 8;
> -    out_data[3] = ti;
> +    stl_be_p(out_data, ti);
>       *out_len = 4;
>       return true;
>   }
> @@ -363,8 +361,7 @@ static bool cuda_cmd_set_time(CUDAState *s,
>           return false;
>       }
>   
> -    ti = (((uint32_t)in_data[0]) << 24) + (((uint32_t)in_data[1]) << 16)
> -         + (((uint32_t)in_data[2]) << 8) + in_data[3];
> +    ti = ldl_be_p(in_data);
>       s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)
>                              / NANOSECONDS_PER_SECOND);
>       return true;

Looks fine to me.

Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>


ATB,

Mark.