All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] disas/nanomips: Format string fixes
@ 2022-11-01 11:44 Philippe Mathieu-Daudé
  2022-11-01 11:44 ` [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format() Philippe Mathieu-Daudé
                   ` (6 more replies)
  0 siblings, 7 replies; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang

Fix invalid string formats reported by Stefan:
https://lore.kernel.org/qemu-devel/78553699-00c1-ad69-1d58-02f75a1f4fe3@weilnetz.de/

Philippe Mathieu-Daudé (5):
  disas/nanomips: Fix invalid PRId64 format calling img_format()
  disas/nanomips: Fix invalid PRIx64 format calling img_format()
  disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats
  disas/nanomips: Remove headers already included by "qemu/osdep.h"
  MAINTAINERS: Inherit from nanoMIPS

 MAINTAINERS      |  8 +-------
 disas/nanomips.c | 44 +++++++++++++++++++++++---------------------
 2 files changed, 24 insertions(+), 28 deletions(-)

-- 
2.37.3



^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format()
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
@ 2022-11-01 11:44 ` Philippe Mathieu-Daudé
  2022-11-01 12:09   ` Stefan Weil via
  2022-11-01 11:44 ` [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 " Philippe Mathieu-Daudé
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang

Fix warnings such:

  disas/nanomips.c:3251:64: warning: format specifies type 'char *' but the argument has type 'int64' (aka 'long long') [-Wformat]
    return img_format("CACHE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
                                            ~~                 ^~~~~~~
                                            %lld

Fixes: 4066c152b3 ("disas/nanomips: Remove IMMEDIATE functions")
Reported-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 disas/nanomips.c | 35 ++++++++++++++++++++---------------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/disas/nanomips.c b/disas/nanomips.c
index 9647f1a8e3..6466c80dc5 100644
--- a/disas/nanomips.c
+++ b/disas/nanomips.c
@@ -3252,7 +3252,8 @@ static char *CACHE(uint64 instruction, Dis_info *info)
 
     const char *rs = GPR(rs_value, info);
 
-    return img_format("CACHE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
+    return img_format("CACHE 0x%" PRIx64 ", %" PRId64 "(%s)",
+                      op_value, s_value, rs);
 }
 
 
@@ -3274,7 +3275,8 @@ static char *CACHEE(uint64 instruction, Dis_info *info)
 
     const char *rs = GPR(rs_value, info);
 
-    return img_format("CACHEE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
+    return img_format("CACHEE 0x%" PRIx64 ", %" PRId64 "(%s)",
+                      op_value, s_value, rs);
 }
 
 
@@ -5173,7 +5175,7 @@ static char *DADDIU_48_(uint64 instruction, Dis_info *info)
 
     const char *rt = GPR(rt_value, info);
 
-    return img_format("DADDIU %s, %s", rt, s_value);
+    return img_format("DADDIU %s, %" PRId64, rt, s_value);
 }
 
 
@@ -11859,7 +11861,7 @@ static char *PREF_S9_(uint64 instruction, Dis_info *info)
 
     const char *rs = GPR(rs_value, info);
 
-    return img_format("PREF 0x%" PRIx64 ", %s(%s)",
+    return img_format("PREF 0x%" PRIx64 ", %" PRId64 "(%s)",
                       hint_value, s_value, rs);
 }
 
@@ -11905,7 +11907,8 @@ static char *PREFE(uint64 instruction, Dis_info *info)
 
     const char *rs = GPR(rs_value, info);
 
-    return img_format("PREFE 0x%" PRIx64 ", %s(%s)", hint_value, s_value, rs);
+    return img_format("PREFE 0x%" PRIx64 ", %" PRId64 "(%s)",
+                      hint_value, s_value, rs);
 }
 
 
@@ -12079,7 +12082,7 @@ static char *REPL_PH(uint64 instruction, Dis_info *info)
 
     const char *rt = GPR(rt_value, info);
 
-    return img_format("REPL.PH %s, %s", rt, s_value);
+    return img_format("REPL.PH %s, %" PRId64, rt, s_value);
 }
 
 
@@ -12613,7 +12616,7 @@ static char *SB_S9_(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SB %s, %s(%s)", rt, s_value, rs);
+    return img_format("SB %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12659,7 +12662,7 @@ static char *SBE(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SBE %s, %s(%s)", rt, s_value, rs);
+    return img_format("SBE %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12706,7 +12709,7 @@ static char *SC(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SC %s, %s(%s)", rt, s_value, rs);
+    return img_format("SC %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12729,7 +12732,7 @@ static char *SCD(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SCD %s, %s(%s)", rt, s_value, rs);
+    return img_format("SCD %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12776,7 +12779,7 @@ static char *SCE(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SCE %s, %s(%s)", rt, s_value, rs);
+    return img_format("SCE %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12868,7 +12871,7 @@ static char *SD_S9_(uint64 instruction, Dis_info *info)
     const char *rt = GPR(rt_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SD %s, %s(%s)", rt, s_value, rs);
+    return img_format("SD %s, %" PRId64 "(%s)", rt, s_value, rs);
 }
 
 
@@ -12973,7 +12976,7 @@ static char *SDC1_S9_(uint64 instruction, Dis_info *info)
     const char *ft = FPR(ft_value, info);
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SDC1 %s, %s(%s)", ft, s_value, rs);
+    return img_format("SDC1 %s, %" PRId64 "(%s)", ft, s_value, rs);
 }
 
 
@@ -13066,7 +13069,8 @@ static char *SDC2(uint64 instruction, Dis_info *info)
 
     const char *rs = GPR(rs_value, info);
 
-    return img_format("SDC2 CP%" PRIu64 ", %s(%s)", cs_value, s_value, rs);
+    return img_format("SDC2 CP%" PRIu64 ", %" PRId64 "(%s)",
+                      cs_value, s_value, rs);
 }
 
 
@@ -13091,7 +13095,8 @@ static char *SDM(uint64 instruction, Dis_info *info)
     const char *rs = GPR(rs_value, info);
     uint64 count3 = encode_count3_from_count(count3_value);
 
-    return img_format("SDM %s, %s(%s), 0x%" PRIx64, rt, s_value, rs, count3);
+    return img_format("SDM %s, %" PRId64 "(%s), 0x%" PRIx64,
+                      rt, s_value, rs, count3);
 }
 
 
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 format calling img_format()
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
  2022-11-01 11:44 ` [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format() Philippe Mathieu-Daudé
@ 2022-11-01 11:44 ` Philippe Mathieu-Daudé
  2022-11-01 12:10   ` Stefan Weil via
  2022-11-01 11:44 ` [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats Philippe Mathieu-Daudé
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang

Fix:

  disas/nanomips.c:12231:62: warning: format specifies type 'char *' but the argument has type 'uint64' (aka 'unsigned long long') [-Wformat]
    return img_format("RESTOREF 0x%" PRIx64 ", %s", u_value, count_value);
                                               ~~            ^~~~~~~~~~~
                                               %llu

Fixes: 4066c152b3 ("disas/nanomips: Remove IMMEDIATE functions")
Reported-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 disas/nanomips.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/disas/nanomips.c b/disas/nanomips.c
index 6466c80dc5..e4b21e7c45 100644
--- a/disas/nanomips.c
+++ b/disas/nanomips.c
@@ -12235,7 +12235,8 @@ static char *RESTOREF(uint64 instruction, Dis_info *info)
     uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);
 
 
-    return img_format("RESTOREF 0x%" PRIx64 ", %s", u_value, count_value);
+    return img_format("RESTOREF 0x%" PRIx64 ", 0x%" PRIx64,
+                      u_value, count_value);
 }
 
 
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
  2022-11-01 11:44 ` [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format() Philippe Mathieu-Daudé
  2022-11-01 11:44 ` [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 " Philippe Mathieu-Daudé
@ 2022-11-01 11:44 ` Philippe Mathieu-Daudé
  2022-11-01 12:10   ` Stefan Weil via
  2022-11-01 11:44 ` [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h" Philippe Mathieu-Daudé
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang

Suggested-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 disas/nanomips.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/disas/nanomips.c b/disas/nanomips.c
index e4b21e7c45..3f45447292 100644
--- a/disas/nanomips.c
+++ b/disas/nanomips.c
@@ -95,7 +95,7 @@ typedef struct Pool {
 #define IMGASSERTONCE(test)
 
 
-static char *img_format(const char *format, ...)
+static char * G_GNUC_PRINTF(1, 2) img_format(const char *format, ...)
 {
     char *buffer;
     va_list args;
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h"
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
                   ` (2 preceding siblings ...)
  2022-11-01 11:44 ` [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats Philippe Mathieu-Daudé
@ 2022-11-01 11:44 ` Philippe Mathieu-Daudé
  2022-11-01 12:12   ` Stefan Weil via
  2022-11-01 11:44 ` [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS Philippe Mathieu-Daudé
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 disas/nanomips.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/disas/nanomips.c b/disas/nanomips.c
index 3f45447292..821d4f8832 100644
--- a/disas/nanomips.c
+++ b/disas/nanomips.c
@@ -30,10 +30,6 @@
 #include "qemu/osdep.h"
 #include "disas/dis-asm.h"
 
-#include <string.h>
-#include <stdio.h>
-#include <stdarg.h>
-
 typedef int64_t int64;
 typedef uint64_t uint64;
 typedef uint32_t uint32;
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
                   ` (3 preceding siblings ...)
  2022-11-01 11:44 ` [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h" Philippe Mathieu-Daudé
@ 2022-11-01 11:44 ` Philippe Mathieu-Daudé
  2022-11-02  7:07   ` Thomas Huth
  2022-11-02  5:56 ` [PATCH 0/5] disas/nanomips: Format string fixes Richard Henderson
  2022-11-07 23:23 ` Philippe Mathieu-Daudé
  6 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-01 11:44 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth,
	Philippe Mathieu-Daudé,
	Petar Jovanovic, Stefan Weil, Jiaxun Yang, Vince Del Vecchio,
	Richard Henderson

6 months ago Stefan Pejic stepped in as nanoMIPS maintainer
(see commit a 8e0e23445a "target/mips: Undeprecate nanoMIPS
ISA support in QEMU"), however today his email is bouncing:

  ** Message blocked **

  Your message to stefan.pejic@syrmia.com has been blocked. See technical details below for more information.

  The response from the remote server was:
  550 5.4.1 Recipient address rejected: Access denied. AS(201806281) [DBAEUR03FT030.eop-EUR03.prod.protection.outlook.com]

To avoid unmaintained code, I feel forced to merge this code
back with the generic MIPS section.

Historical references:
- https://lore.kernel.org/qemu-devel/TY0PR03MB679726901BD6C6BE40114A2FE2A79@TY0PR03MB6797.apcprd03.prod.outlook.com/
- https://lore.kernel.org/qemu-devel/b858a20e97b74e7b90a94948314d0008@MTKMBS62N2.mediatek.inc/

Cc: Vince Del Vecchio <Vince.DelVecchio@mediatek.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <49f41916-687f-b9e5-2de7-9c658fe0d4c7@linaro.org>
---
 MAINTAINERS | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index c41d8d65e2..0fa3c92b29 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -237,16 +237,10 @@ R: Jiaxun Yang <jiaxun.yang@flygoat.com>
 R: Aleksandar Rikalo <aleksandar.rikalo@syrmia.com>
 S: Odd Fixes
 F: target/mips/
-F: disas/mips.c
+F: disas/*mips.c
 F: docs/system/cpu-models-mips.rst.inc
 F: tests/tcg/mips/
 
-MIPS TCG CPUs (nanoMIPS ISA)
-M: Stefan Pejic <stefan.pejic@syrmia.com>
-S: Maintained
-F: disas/nanomips.*
-F: target/mips/tcg/*nanomips*
-
 NiosII TCG CPUs
 M: Chris Wulff <crwulff@gmail.com>
 M: Marek Vasut <marex@denx.de>
-- 
2.37.3



^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format()
  2022-11-01 11:44 ` [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format() Philippe Mathieu-Daudé
@ 2022-11-01 12:09   ` Stefan Weil via
  0 siblings, 0 replies; 13+ messages in thread
From: Stefan Weil via @ 2022-11-01 12:09 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Jiaxun Yang


[-- Attachment #1.1.1: Type: text/plain, Size: 5998 bytes --]

Am 01.11.22 um 12:44 schrieb Philippe Mathieu-Daudé:

> Fix warnings such:
>
>    disas/nanomips.c:3251:64: warning: format specifies type 'char *' but the argument has type 'int64' (aka 'long long') [-Wformat]
>      return img_format("CACHE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
>                                              ~~                 ^~~~~~~
>                                              %lld
>
> Fixes: 4066c152b3 ("disas/nanomips: Remove IMMEDIATE functions")
> Reported-by: Stefan Weil <sw@weilnetz.de>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---


Reviewed-by: Stefan Weil <sw@weilnetz.de>


>   disas/nanomips.c | 35 ++++++++++++++++++++---------------
>   1 file changed, 20 insertions(+), 15 deletions(-)
>
> diff --git a/disas/nanomips.c b/disas/nanomips.c
> index 9647f1a8e3..6466c80dc5 100644
> --- a/disas/nanomips.c
> +++ b/disas/nanomips.c
> @@ -3252,7 +3252,8 @@ static char *CACHE(uint64 instruction, Dis_info *info)
>   
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("CACHE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
> +    return img_format("CACHE 0x%" PRIx64 ", %" PRId64 "(%s)",
> +                      op_value, s_value, rs);
>   }
>   
>   
> @@ -3274,7 +3275,8 @@ static char *CACHEE(uint64 instruction, Dis_info *info)
>   
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("CACHEE 0x%" PRIx64 ", %s(%s)", op_value, s_value, rs);
> +    return img_format("CACHEE 0x%" PRIx64 ", %" PRId64 "(%s)",
> +                      op_value, s_value, rs);
>   }
>   
>   
> @@ -5173,7 +5175,7 @@ static char *DADDIU_48_(uint64 instruction, Dis_info *info)
>   
>       const char *rt = GPR(rt_value, info);
>   
> -    return img_format("DADDIU %s, %s", rt, s_value);
> +    return img_format("DADDIU %s, %" PRId64, rt, s_value);
>   }
>   
>   
> @@ -11859,7 +11861,7 @@ static char *PREF_S9_(uint64 instruction, Dis_info *info)
>   
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("PREF 0x%" PRIx64 ", %s(%s)",
> +    return img_format("PREF 0x%" PRIx64 ", %" PRId64 "(%s)",
>                         hint_value, s_value, rs);
>   }
>   
> @@ -11905,7 +11907,8 @@ static char *PREFE(uint64 instruction, Dis_info *info)
>   
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("PREFE 0x%" PRIx64 ", %s(%s)", hint_value, s_value, rs);
> +    return img_format("PREFE 0x%" PRIx64 ", %" PRId64 "(%s)",
> +                      hint_value, s_value, rs);
>   }
>   
>   
> @@ -12079,7 +12082,7 @@ static char *REPL_PH(uint64 instruction, Dis_info *info)
>   
>       const char *rt = GPR(rt_value, info);
>   
> -    return img_format("REPL.PH %s, %s", rt, s_value);
> +    return img_format("REPL.PH %s, %" PRId64, rt, s_value);
>   }
>   
>   
> @@ -12613,7 +12616,7 @@ static char *SB_S9_(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SB %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SB %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12659,7 +12662,7 @@ static char *SBE(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SBE %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SBE %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12706,7 +12709,7 @@ static char *SC(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SC %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SC %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12729,7 +12732,7 @@ static char *SCD(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SCD %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SCD %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12776,7 +12779,7 @@ static char *SCE(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SCE %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SCE %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12868,7 +12871,7 @@ static char *SD_S9_(uint64 instruction, Dis_info *info)
>       const char *rt = GPR(rt_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SD %s, %s(%s)", rt, s_value, rs);
> +    return img_format("SD %s, %" PRId64 "(%s)", rt, s_value, rs);
>   }
>   
>   
> @@ -12973,7 +12976,7 @@ static char *SDC1_S9_(uint64 instruction, Dis_info *info)
>       const char *ft = FPR(ft_value, info);
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SDC1 %s, %s(%s)", ft, s_value, rs);
> +    return img_format("SDC1 %s, %" PRId64 "(%s)", ft, s_value, rs);
>   }
>   
>   
> @@ -13066,7 +13069,8 @@ static char *SDC2(uint64 instruction, Dis_info *info)
>   
>       const char *rs = GPR(rs_value, info);
>   
> -    return img_format("SDC2 CP%" PRIu64 ", %s(%s)", cs_value, s_value, rs);
> +    return img_format("SDC2 CP%" PRIu64 ", %" PRId64 "(%s)",
> +                      cs_value, s_value, rs);
>   }
>   
>   
> @@ -13091,7 +13095,8 @@ static char *SDM(uint64 instruction, Dis_info *info)
>       const char *rs = GPR(rs_value, info);
>       uint64 count3 = encode_count3_from_count(count3_value);
>   
> -    return img_format("SDM %s, %s(%s), 0x%" PRIx64, rt, s_value, rs, count3);
> +    return img_format("SDM %s, %" PRId64 "(%s), 0x%" PRIx64,
> +                      rt, s_value, rs, count3);
>   }
>   
>   

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 6511 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 format calling img_format()
  2022-11-01 11:44 ` [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 " Philippe Mathieu-Daudé
@ 2022-11-01 12:10   ` Stefan Weil via
  0 siblings, 0 replies; 13+ messages in thread
From: Stefan Weil via @ 2022-11-01 12:10 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Jiaxun Yang

Am 01.11.22 um 12:44 schrieb Philippe Mathieu-Daudé:

> Fix:
>
>    disas/nanomips.c:12231:62: warning: format specifies type 'char *' but the argument has type 'uint64' (aka 'unsigned long long') [-Wformat]
>      return img_format("RESTOREF 0x%" PRIx64 ", %s", u_value, count_value);
>                                                 ~~            ^~~~~~~~~~~
>                                                 %llu
>
> Fixes: 4066c152b3 ("disas/nanomips: Remove IMMEDIATE functions")
> Reported-by: Stefan Weil <sw@weilnetz.de>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   disas/nanomips.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/disas/nanomips.c b/disas/nanomips.c
> index 6466c80dc5..e4b21e7c45 100644
> --- a/disas/nanomips.c
> +++ b/disas/nanomips.c
> @@ -12235,7 +12235,8 @@ static char *RESTOREF(uint64 instruction, Dis_info *info)
>       uint64 u_value = extract_u_11_10_9_8_7_6_5_4_3__s3(instruction);
>   
>   
> -    return img_format("RESTOREF 0x%" PRIx64 ", %s", u_value, count_value);
> +    return img_format("RESTOREF 0x%" PRIx64 ", 0x%" PRIx64,
> +                      u_value, count_value);
>   }


Reviewed-by: Stefan Weil <sw@weilnetz.de>



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats
  2022-11-01 11:44 ` [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats Philippe Mathieu-Daudé
@ 2022-11-01 12:10   ` Stefan Weil via
  0 siblings, 0 replies; 13+ messages in thread
From: Stefan Weil via @ 2022-11-01 12:10 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Jiaxun Yang


[-- Attachment #1.1.1: Type: text/plain, Size: 715 bytes --]

Am 01.11.22 um 12:44 schrieb Philippe Mathieu-Daudé:

> Suggested-by: Stefan Weil <sw@weilnetz.de>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   disas/nanomips.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/disas/nanomips.c b/disas/nanomips.c
> index e4b21e7c45..3f45447292 100644
> --- a/disas/nanomips.c
> +++ b/disas/nanomips.c
> @@ -95,7 +95,7 @@ typedef struct Pool {
>   #define IMGASSERTONCE(test)
>   
>   
> -static char *img_format(const char *format, ...)
> +static char * G_GNUC_PRINTF(1, 2) img_format(const char *format, ...)
>   {
>       char *buffer;
>       va_list args;


Reviewed-by: Stefan Weil <sw@weilnetz.de>


[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 6511 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h"
  2022-11-01 11:44 ` [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h" Philippe Mathieu-Daudé
@ 2022-11-01 12:12   ` Stefan Weil via
  0 siblings, 0 replies; 13+ messages in thread
From: Stefan Weil via @ 2022-11-01 12:12 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Jiaxun Yang


[-- Attachment #1.1.1: Type: text/plain, Size: 745 bytes --]


Am 01.11.22 um 12:44 schrieb Philippe Mathieu-Daudé:
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
>   disas/nanomips.c | 4 ----
>   1 file changed, 4 deletions(-)
>
> diff --git a/disas/nanomips.c b/disas/nanomips.c
> index 3f45447292..821d4f8832 100644
> --- a/disas/nanomips.c
> +++ b/disas/nanomips.c
> @@ -30,10 +30,6 @@
>   #include "qemu/osdep.h"
>   #include "disas/dis-asm.h"
>   
> -#include <string.h>
> -#include <stdio.h>
> -#include <stdarg.h>
> -
>   typedef int64_t int64;
>   typedef uint64_t uint64;
>   typedef uint32_t uint32;

Removing those three typedefs and replacing the related types would also 
be good (in another patch).

Reviewed-by: Stefan Weil <sw@weilnetz.de>


[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 6511 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 0/5] disas/nanomips: Format string fixes
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
                   ` (4 preceding siblings ...)
  2022-11-01 11:44 ` [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS Philippe Mathieu-Daudé
@ 2022-11-02  5:56 ` Richard Henderson
  2022-11-07 23:23 ` Philippe Mathieu-Daudé
  6 siblings, 0 replies; 13+ messages in thread
From: Richard Henderson @ 2022-11-02  5:56 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Stefan Weil, Jiaxun Yang

On 11/1/22 22:44, Philippe Mathieu-Daudé wrote:
> Fix invalid string formats reported by Stefan:
> https://lore.kernel.org/qemu-devel/78553699-00c1-ad69-1d58-02f75a1f4fe3@weilnetz.de/
> 
> Philippe Mathieu-Daudé (5):
>    disas/nanomips: Fix invalid PRId64 format calling img_format()
>    disas/nanomips: Fix invalid PRIx64 format calling img_format()
>    disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats
>    disas/nanomips: Remove headers already included by "qemu/osdep.h"
>    MAINTAINERS: Inherit from nanoMIPS
> 
>   MAINTAINERS      |  8 +-------
>   disas/nanomips.c | 44 +++++++++++++++++++++++---------------------
>   2 files changed, 24 insertions(+), 28 deletions(-)
> 

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS
  2022-11-01 11:44 ` [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS Philippe Mathieu-Daudé
@ 2022-11-02  7:07   ` Thomas Huth
  0 siblings, 0 replies; 13+ messages in thread
From: Thomas Huth @ 2022-11-02  7:07 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Petar Jovanovic, Stefan Weil,
	Jiaxun Yang, Vince Del Vecchio, Richard Henderson

On 01/11/2022 12.44, Philippe Mathieu-Daudé wrote:
> 6 months ago Stefan Pejic stepped in as nanoMIPS maintainer
> (see commit a 8e0e23445a "target/mips: Undeprecate nanoMIPS
> ISA support in QEMU"), however today his email is bouncing:
> 
>    ** Message blocked **
> 
>    Your message to stefan.pejic@syrmia.com has been blocked. See technical details below for more information.
> 
>    The response from the remote server was:
>    550 5.4.1 Recipient address rejected: Access denied. AS(201806281) [DBAEUR03FT030.eop-EUR03.prod.protection.outlook.com]

I saw the same bounce message when I CC:-ed him recently, thus:

Tested-by: Thomas Huth <thuth@redhat.com>



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 0/5] disas/nanomips: Format string fixes
  2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
                   ` (5 preceding siblings ...)
  2022-11-02  5:56 ` [PATCH 0/5] disas/nanomips: Format string fixes Richard Henderson
@ 2022-11-07 23:23 ` Philippe Mathieu-Daudé
  6 siblings, 0 replies; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2022-11-07 23:23 UTC (permalink / raw)
  To: qemu-devel
  Cc: Aleksandar Rikalo, Aurelien Jarno, Thomas Huth, Petar Jovanovic,
	Stefan Weil, Jiaxun Yang

On 1/11/22 12:44, Philippe Mathieu-Daudé wrote:
> Fix invalid string formats reported by Stefan:
> https://lore.kernel.org/qemu-devel/78553699-00c1-ad69-1d58-02f75a1f4fe3@weilnetz.de/
> 
> Philippe Mathieu-Daudé (5):
>    disas/nanomips: Fix invalid PRId64 format calling img_format()
>    disas/nanomips: Fix invalid PRIx64 format calling img_format()
>    disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats
>    disas/nanomips: Remove headers already included by "qemu/osdep.h"
>    MAINTAINERS: Inherit from nanoMIPS

Queued to mips-fixes.


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-11-07 23:26 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-01 11:44 [PATCH 0/5] disas/nanomips: Format string fixes Philippe Mathieu-Daudé
2022-11-01 11:44 ` [PATCH 1/5] disas/nanomips: Fix invalid PRId64 format calling img_format() Philippe Mathieu-Daudé
2022-11-01 12:09   ` Stefan Weil via
2022-11-01 11:44 ` [PATCH 2/5] disas/nanomips: Fix invalid PRIx64 " Philippe Mathieu-Daudé
2022-11-01 12:10   ` Stefan Weil via
2022-11-01 11:44 ` [PATCH 3/5] disas/nanomips: Use G_GNUC_PRINTF to avoid invalid string formats Philippe Mathieu-Daudé
2022-11-01 12:10   ` Stefan Weil via
2022-11-01 11:44 ` [PATCH 4/5] disas/nanomips: Remove headers already included by "qemu/osdep.h" Philippe Mathieu-Daudé
2022-11-01 12:12   ` Stefan Weil via
2022-11-01 11:44 ` [PATCH 5/5] MAINTAINERS: Inherit from nanoMIPS Philippe Mathieu-Daudé
2022-11-02  7:07   ` Thomas Huth
2022-11-02  5:56 ` [PATCH 0/5] disas/nanomips: Format string fixes Richard Henderson
2022-11-07 23:23 ` Philippe Mathieu-Daudé

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.