lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Fri, 21 Apr 2023 20:26:35 +0800
From:   Rong Tao <rtoax@...mail.com>
To:     axboe@...nel.dk
Cc:     Rong Tao <rongtao@...tc.cn>,
        Pavel Begunkov <asml.silence@...il.com>,
        io-uring@...r.kernel.org (open list:IO_URING),
        linux-kernel@...r.kernel.org (open list)
Subject: [PATCH] tools/io_uring/io_uring-cp: Fix two compile warings

From: Rong Tao <rongtao@...tc.cn>

Resolve compilation warnings:

    $ make
    ...
    cc -Wall -Wextra -g -D_GNU_SOURCE -o io_uring-cp io_uring-cp.c \
        setup.o syscall.o queue.o
    io_uring-cp.c: In function ‘copy_file’:
    io_uring-cp.c:158:31: warning: comparison of integer expressions of
    different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare]
    158 |                 if (had_reads != reads) {
        |                               ^~
    io_uring-cp.c:201:45: warning: comparison of integer expressions of
    different signedness: ‘__s32’ {aka ‘int’} and ‘size_t’ {aka ‘long
    unsigned int’} [-Wsign-compare]
    201 |                    } else if (cqe->res != data->iov.iov_len) {
        |                                        ^~

Signed-off-by: Rong Tao <rongtao@...tc.cn>
---
 tools/io_uring/io_uring-cp.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/io_uring/io_uring-cp.c b/tools/io_uring/io_uring-cp.c
index d9bd6f5f8f46..8a0ecaf78bda 100644
--- a/tools/io_uring/io_uring-cp.c
+++ b/tools/io_uring/io_uring-cp.c
@@ -131,7 +131,8 @@ static int copy_file(struct io_uring *ring, off_t insize)
 	writes = reads = offset = 0;
 
 	while (insize || write_left) {
-		int had_reads, got_comp;
+		unsigned long had_reads;
+		int got_comp;
 
 		/*
 		 * Queue up as many reads as we can
@@ -198,7 +199,7 @@ static int copy_file(struct io_uring *ring, off_t insize)
 				fprintf(stderr, "cqe failed: %s\n",
 						strerror(-cqe->res));
 				return 1;
-			} else if (cqe->res != data->iov.iov_len) {
+			} else if ((size_t)cqe->res != data->iov.iov_len) {
 				/* Short read/write, adjust and requeue */
 				data->iov.iov_base += cqe->res;
 				data->iov.iov_len -= cqe->res;
-- 
2.39.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ