diff --git a/include/linux/io_uring_types.h b/include/linux/io_uring_types.h
index b48570eaa4497f5447839be089c8190a102f225d..7abdc09271245ff7de3fb9a905ca78b7561e37eb 100644
--- a/include/linux/io_uring_types.h
+++ b/include/linux/io_uring_types.h
@@ -207,7 +207,6 @@ struct io_submit_state {
 	bool			need_plug;
 	bool			cq_flush;
 	unsigned short		submit_nr;
-	unsigned int		cqes_count;
 	struct blk_plug		plug;
 };
 
diff --git a/io_uring/io_uring.c b/io_uring/io_uring.c
index 154b25b8a613b16ad7c07fb590ad74b379447fb5..c326e2127dd4dd7fff32fe41a4d6d3979162cf4d 100644
--- a/io_uring/io_uring.c
+++ b/io_uring/io_uring.c
@@ -1259,8 +1259,8 @@ static void io_req_normal_work_add(struct io_kiocb *req)
 	if (ctx->flags & IORING_SETUP_SQPOLL) {
 		struct io_sq_data *sqd = ctx->sq_data;
 
-		if (wq_has_sleeper(&sqd->wait))
-			wake_up(&sqd->wait);
+		if (sqd->thread)
+			__set_notify_signal(sqd->thread);
 		return;
 	}