io_uring: add build check for buf_index overflows
req->buf_index is u16 and so we rely on registered buffers indexes fitting into it. Add a build check, so when the upper limit for the number of buffers is lifted we get a compliation fail but not lurking problems. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Link: https://lore.kernel.org/r/787e8e1a17cea51ca6301426b1c4c4887b8bd676.1629920396.git.asml.silence@gmail.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
		
							parent
							
								
									b18a1a4574
								
							
						
					
					
						commit
						90499ad00c
					
				| @ -10493,6 +10493,10 @@ static int __init io_uring_init(void) | ||||
| 		     sizeof(struct io_uring_rsrc_update)); | ||||
| 	BUILD_BUG_ON(sizeof(struct io_uring_rsrc_update) > | ||||
| 		     sizeof(struct io_uring_rsrc_update2)); | ||||
| 
 | ||||
| 	/* ->buf_index is u16 */ | ||||
| 	BUILD_BUG_ON(IORING_MAX_REG_BUFFERS >= (1u << 16)); | ||||
| 
 | ||||
| 	/* should fit into one byte */ | ||||
| 	BUILD_BUG_ON(SQE_VALID_FLAGS >= (1 << 8)); | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user