File tree Expand file tree Collapse file tree 2 files changed +4
-12
lines changed Expand file tree Collapse file tree 2 files changed +4
-12
lines changed Original file line number Diff line number Diff line change @@ -629,28 +629,20 @@ static inline void io_cq_lock(struct io_ring_ctx *ctx)
629
629
static inline void __io_cq_unlock_post (struct io_ring_ctx * ctx )
630
630
{
631
631
io_commit_cqring (ctx );
632
-
633
- if (ctx -> task_complete ) {
634
- /*
635
- * ->task_complete implies that only current might be waiting
636
- * for CQEs, and obviously, we currently don't. No one is
637
- * waiting, wakeups are futile, skip them.
638
- */
639
- io_commit_cqring_flush (ctx );
640
- } else {
632
+ if (!ctx -> task_complete ) {
641
633
spin_unlock (& ctx -> completion_lock );
642
- io_commit_cqring_flush (ctx );
643
634
io_cqring_wake (ctx );
644
635
}
636
+ io_commit_cqring_flush (ctx );
645
637
}
646
638
647
639
static void io_cq_unlock_post (struct io_ring_ctx * ctx )
648
640
__releases (ctx - > completion_lock )
649
641
{
650
642
io_commit_cqring (ctx );
651
643
spin_unlock (& ctx -> completion_lock );
652
- io_commit_cqring_flush (ctx );
653
644
io_cqring_wake (ctx );
645
+ io_commit_cqring_flush (ctx );
654
646
}
655
647
656
648
/* Returns true if there are no backlogged entries after the flush */
Original file line number Diff line number Diff line change @@ -985,9 +985,9 @@ int io_write(struct io_kiocb *req, unsigned int issue_flags)
985
985
986
986
static void io_cqring_ev_posted_iopoll (struct io_ring_ctx * ctx )
987
987
{
988
- io_commit_cqring_flush (ctx );
989
988
if (ctx -> flags & IORING_SETUP_SQPOLL )
990
989
io_cqring_wake (ctx );
990
+ io_commit_cqring_flush (ctx );
991
991
}
992
992
993
993
void io_rw_fail (struct io_kiocb * req )
You can’t perform that action at this time.
0 commit comments