From: Jens Axboe Date: Thu, 27 Feb 2020 02:54:12 +0000 (-0700) Subject: io_uring: we should not need two write barriers for SQ updates X-Git-Tag: fio-3.19~7 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=58d3994d9be0783990af82571cea819b499d526c io_uring: we should not need two write barriers for SQ updates Just after updating the tail should be fine. Signed-off-by: Jens Axboe --- diff --git a/engines/io_uring.c b/engines/io_uring.c index 5e59f975..1efc6cff 100644 --- a/engines/io_uring.c +++ b/engines/io_uring.c @@ -374,8 +374,6 @@ static enum fio_q_status fio_ioring_queue(struct thread_data *td, if (next_tail == *ring->head) return FIO_Q_BUSY; - /* ensure sqe stores are ordered with tail update */ - write_barrier(); if (o->cmdprio_percentage) fio_ioring_prio_prep(td, io_u); ring->array[tail & ld->sq_ring_mask] = io_u->index; diff --git a/t/io_uring.c b/t/io_uring.c index 55b75f6e..e84a2b6b 100644 --- a/t/io_uring.c +++ b/t/io_uring.c @@ -216,8 +216,6 @@ static int prep_more_ios(struct submitter *s, int max_ios) } while (prepped < max_ios); if (*ring->tail != tail) { - /* order tail store with writes to sqes above */ - write_barrier(); *ring->tail = tail; write_barrier(); }