summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHao Xu <haoxu@linux.alibaba.com>2021-09-07 05:22:43 +0200
committerJens Axboe <axboe@kernel.dk>2021-09-10 14:24:51 +0200
commit32c2d33e0b7c4ea53284d5d9435dd022b582c8cf (patch)
tree12b82b86bc5b144d6284bf845595223e7d5ab719
parentio_uring: fail links of cancelled timeouts (diff)
downloadlinux-32c2d33e0b7c4ea53284d5d9435dd022b582c8cf.tar.xz
linux-32c2d33e0b7c4ea53284d5d9435dd022b582c8cf.zip
io_uring: fix off-by-one in BUILD_BUG_ON check of __REQ_F_LAST_BIT
Build check of __REQ_F_LAST_BIT should be larger than, not equal or larger than. It's perfectly valid to have __REQ_F_LAST_BIT be 32, as that means that the last valid bit is 31 which does fit in the type. Signed-off-by: Hao Xu <haoxu@linux.alibaba.com> Link: https://lore.kernel.org/r/20210907032243.114190-1-haoxu@linux.alibaba.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
-rw-r--r--fs/io_uring.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/io_uring.c b/fs/io_uring.c
index ffd91844b2e5..f795ad281038 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -10863,7 +10863,7 @@ static int __init io_uring_init(void)
BUILD_BUG_ON(SQE_VALID_FLAGS >= (1 << 8));
BUILD_BUG_ON(ARRAY_SIZE(io_op_defs) != IORING_OP_LAST);
- BUILD_BUG_ON(__REQ_F_LAST_BIT >= 8 * sizeof(int));
+ BUILD_BUG_ON(__REQ_F_LAST_BIT > 8 * sizeof(int));
req_cachep = KMEM_CACHE(io_kiocb, SLAB_HWCACHE_ALIGN | SLAB_PANIC |
SLAB_ACCOUNT);