diff mbox series

[libdrm] amdgpu: Use %ll to format 64-bit integers

Message ID e77836236dfb6724aa95a8c2305a2d63762367be.1688570228.git.geert+renesas@glider.be (mailing list archive)
State New, archived
Headers show
Series [libdrm] amdgpu: Use %ll to format 64-bit integers | expand

Commit Message

Geert Uytterhoeven July 5, 2023, 3:17 p.m. UTC
On 32-bit:

    ../tests/amdgpu/amdgpu_stress.c: In function ‘alloc_bo’:
    ../tests/amdgpu/amdgpu_stress.c:178:49: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
                                                   ~~^
                                                   %llx
       num_buffers++, addr, domain, size);
                      ~~~~
    ../tests/amdgpu/amdgpu_stress.c:178:72: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
                                                                          ~~^
                                                                          %llu
       num_buffers++, addr, domain, size);
                                    ~~~~
    ../tests/amdgpu/amdgpu_stress.c: In function ‘submit_ib’:
    ../tests/amdgpu/amdgpu_stress.c:276:54: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
                                                        ~~^
                                                        %llx
       count, from, virtual[from], to, virtual[to], copied, delta / 1000);
                    ~~~~~~~~~~~~~
    ../tests/amdgpu/amdgpu_stress.c:276:65: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
                                                                   ~~^
                                                                   %llx
       count, from, virtual[from], to, virtual[to], copied, delta / 1000);
                                       ~~~~~~~~~~~
    ../tests/amdgpu/amdgpu_stress.c:276:70: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 8 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
                                                                        ~~^
                                                                        %llu
       count, from, virtual[from], to, virtual[to], copied, delta / 1000);
                                                    ~~~~~~
    ../tests/amdgpu/amdgpu_stress.c:276:85: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 9 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
      fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
                                                                                       ~~^
                                                                                       %llu
       count, from, virtual[from], to, virtual[to], copied, delta / 1000);
                                                            ~~~~~~~~~~~~
    ../tests/amdgpu/amdgpu_stress.c: In function ‘parse_size’:
    ../tests/amdgpu/amdgpu_stress.c:296:24: warning: format ‘%li’ expects argument of type ‘long int *’, but argument 3 has type ‘uint64_t *’ {aka ‘long long unsigned int *’} [-Wformat=]
      if (sscanf(optarg, "%li%1[kmgKMG]", &size, ext) < 1) {
                          ~~^             ~~~~~
                          %lli
    ../tests/amdgpu/amdgpu_stress.c: In function ‘main’:
    ../tests/amdgpu/amdgpu_stress.c:378:45: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
         fprintf(stderr, "Buffer size to small %lu\n", size);
                                               ~~^     ~~~~
                                               %llu

Fix this by using the proper "%ll" format specifier prefix.

Fixes: d77ccdf3ba6f5a39 ("amdgpu: add amdgpu_stress utility v2")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
 tests/amdgpu/amdgpu_stress.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Geert Uytterhoeven July 5, 2023, 4 p.m. UTC | #1
On Wed, Jul 5, 2023 at 5:17 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> On 32-bit:
>
>     ../tests/amdgpu/amdgpu_stress.c: In function ‘alloc_bo’:
>     ../tests/amdgpu/amdgpu_stress.c:178:49: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 4 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
>                                                    ~~^
>                                                    %llx
>        num_buffers++, addr, domain, size);
>                       ~~~~
>     ../tests/amdgpu/amdgpu_stress.c:178:72: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
>                                                                           ~~^
>                                                                           %llu
>        num_buffers++, addr, domain, size);
>                                     ~~~~
>     ../tests/amdgpu/amdgpu_stress.c: In function ‘submit_ib’:
>     ../tests/amdgpu/amdgpu_stress.c:276:54: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
>                                                         ~~^
>                                                         %llx
>        count, from, virtual[from], to, virtual[to], copied, delta / 1000);
>                     ~~~~~~~~~~~~~
>     ../tests/amdgpu/amdgpu_stress.c:276:65: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
>                                                                    ~~^
>                                                                    %llx
>        count, from, virtual[from], to, virtual[to], copied, delta / 1000);
>                                        ~~~~~~~~~~~
>     ../tests/amdgpu/amdgpu_stress.c:276:70: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 8 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
>                                                                         ~~^
>                                                                         %llu
>        count, from, virtual[from], to, virtual[to], copied, delta / 1000);
>                                                     ~~~~~~
>     ../tests/amdgpu/amdgpu_stress.c:276:85: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 9 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>       fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
>                                                                                        ~~^
>                                                                                        %llu
>        count, from, virtual[from], to, virtual[to], copied, delta / 1000);
>                                                             ~~~~~~~~~~~~
>     ../tests/amdgpu/amdgpu_stress.c: In function ‘parse_size’:
>     ../tests/amdgpu/amdgpu_stress.c:296:24: warning: format ‘%li’ expects argument of type ‘long int *’, but argument 3 has type ‘uint64_t *’ {aka ‘long long unsigned int *’} [-Wformat=]
>       if (sscanf(optarg, "%li%1[kmgKMG]", &size, ext) < 1) {
>                           ~~^             ~~~~~
>                           %lli
>     ../tests/amdgpu/amdgpu_stress.c: In function ‘main’:
>     ../tests/amdgpu/amdgpu_stress.c:378:45: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64_t’ {aka ‘long long unsigned int’} [-Wformat=]
>          fprintf(stderr, "Buffer size to small %lu\n", size);
>                                                ~~^     ~~~~
>                                                %llu
>
> Fix this by using the proper "%ll" format specifier prefix.
>
> Fixes: d77ccdf3ba6f5a39 ("amdgpu: add amdgpu_stress utility v2")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Scrap it, now it fails on 64-bit :-(

> --- a/tests/amdgpu/amdgpu_stress.c
> +++ b/tests/amdgpu/amdgpu_stress.c
> @@ -175,7 +175,7 @@ int alloc_bo(uint32_t domain, uint64_t size)
>
>         resources[num_buffers] = bo;
>         virtual[num_buffers] = addr;
> -       fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
> +       fprintf(stdout, "Allocated BO number %u at 0x%llx, domain 0x%x, size %llu\n",
>                 num_buffers++, addr, domain, size);
>         return 0;
>  }
> @@ -273,7 +273,7 @@ int submit_ib(uint32_t from, uint32_t to, uint64_t size, uint32_t count)
>         delta = stop.tv_nsec + stop.tv_sec * 1000000000UL;
>         delta -= start.tv_nsec + start.tv_sec * 1000000000UL;
>
> -       fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
> +       fprintf(stdout, "Submitted %u IBs to copy from %u(%llx) to %u(%llx) %llu bytes took %llu usec\n",
>                 count, from, virtual[from], to, virtual[to], copied, delta / 1000);
>         return 0;
>  }
> @@ -293,7 +293,7 @@ uint64_t parse_size(void)
>         char ext[2];
>
>         ext[0] = 0;
> -       if (sscanf(optarg, "%li%1[kmgKMG]", &size, ext) < 1) {
> +       if (sscanf(optarg, "%lli%1[kmgKMG]", &size, ext) < 1) {
>                 fprintf(stderr, "Can't parse size arg: %s\n", optarg);
>                 exit(EXIT_FAILURE);
>         }
> @@ -375,7 +375,7 @@ int main(int argc, char **argv)
>                         next_arg(argc, argv, "Missing buffer size");
>                         size = parse_size();
>                         if (size < getpagesize()) {
> -                               fprintf(stderr, "Buffer size to small %lu\n", size);
> +                               fprintf(stderr, "Buffer size to small %llu\n", size);
>                                 exit(EXIT_FAILURE);
>                         }
>                         r = alloc_bo(domain, size);

Gr{oetje,eeting}s,

                        Geert
diff mbox series

Patch

diff --git a/tests/amdgpu/amdgpu_stress.c b/tests/amdgpu/amdgpu_stress.c
index 5c5c88c5be985eb6..7182f9005703f1a4 100644
--- a/tests/amdgpu/amdgpu_stress.c
+++ b/tests/amdgpu/amdgpu_stress.c
@@ -175,7 +175,7 @@  int alloc_bo(uint32_t domain, uint64_t size)
 
 	resources[num_buffers] = bo;
 	virtual[num_buffers] = addr;
-	fprintf(stdout, "Allocated BO number %u at 0x%lx, domain 0x%x, size %lu\n",
+	fprintf(stdout, "Allocated BO number %u at 0x%llx, domain 0x%x, size %llu\n",
 		num_buffers++, addr, domain, size);
 	return 0;
 }
@@ -273,7 +273,7 @@  int submit_ib(uint32_t from, uint32_t to, uint64_t size, uint32_t count)
 	delta = stop.tv_nsec + stop.tv_sec * 1000000000UL;
 	delta -= start.tv_nsec + start.tv_sec * 1000000000UL;
 
-	fprintf(stdout, "Submitted %u IBs to copy from %u(%lx) to %u(%lx) %lu bytes took %lu usec\n",
+	fprintf(stdout, "Submitted %u IBs to copy from %u(%llx) to %u(%llx) %llu bytes took %llu usec\n",
 		count, from, virtual[from], to, virtual[to], copied, delta / 1000);
 	return 0;
 }
@@ -293,7 +293,7 @@  uint64_t parse_size(void)
 	char ext[2];
 
 	ext[0] = 0;
-	if (sscanf(optarg, "%li%1[kmgKMG]", &size, ext) < 1) {
+	if (sscanf(optarg, "%lli%1[kmgKMG]", &size, ext) < 1) {
 		fprintf(stderr, "Can't parse size arg: %s\n", optarg);
 		exit(EXIT_FAILURE);
 	}
@@ -375,7 +375,7 @@  int main(int argc, char **argv)
 			next_arg(argc, argv, "Missing buffer size");
 			size = parse_size();
 			if (size < getpagesize()) {
-				fprintf(stderr, "Buffer size to small %lu\n", size);
+				fprintf(stderr, "Buffer size to small %llu\n", size);
 				exit(EXIT_FAILURE);
 			}
 			r = alloc_bo(domain, size);