Commit e1d85334 authored by Randy Dunlap's avatar Randy Dunlap Committed by Jens Axboe
Browse files

io_uring: fix 1-bit bitfields to be unsigned



Make bitfields of size 1 bit be unsigned (since there is no room
for the sign bit).
This clears up the sparse warnings:

  CHECK   ../fs/io_uring.c
../fs/io_uring.c:207:50: error: dubious one-bit signed bitfield
../fs/io_uring.c:208:55: error: dubious one-bit signed bitfield
../fs/io_uring.c:209:63: error: dubious one-bit signed bitfield
../fs/io_uring.c:210:54: error: dubious one-bit signed bitfield
../fs/io_uring.c:211:57: error: dubious one-bit signed bitfield

Found by sight and then verified with sparse.

Fixes: 69b3e546 ("io_uring: change io_ring_ctx bool fields into bit fields")
Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: io-uring@vger.kernel.org
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 1cb1edb2
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -204,11 +204,11 @@ struct io_ring_ctx {

	struct {
		unsigned int		flags;
		int			compat: 1;
		int			account_mem: 1;
		int			cq_overflow_flushed: 1;
		int			drain_next: 1;
		int			eventfd_async: 1;
		unsigned int		compat: 1;
		unsigned int		account_mem: 1;
		unsigned int		cq_overflow_flushed: 1;
		unsigned int		drain_next: 1;
		unsigned int		eventfd_async: 1;

		/*
		 * Ring buffer of indices into array of io_uring_sqe, which is