Commit 80a54b80 authored by Tejun Heo's avatar Tejun Heo
Browse files

Revert "sched_ext: Use READ_ONCE() for the read side of dsq->nr update"



This reverts commit 9adfcef3.

dsq->nr is protected by dsq->lock and reading while holding the lock doesn't
constitute a racy read.

Signed-off-by: default avatarTejun Heo <tj@kernel.org>
Cc: zhidao su <suzhidao@xiaomi.com>
parent 28c4ef2b
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -1296,12 +1296,8 @@ static bool scx_dsq_priq_less(struct rb_node *node_a,

static void dsq_mod_nr(struct scx_dispatch_q *dsq, s32 delta)
{
	/*
	 * scx_bpf_dsq_nr_queued() reads ->nr without locking. Use READ_ONCE()
	 * on the read side and WRITE_ONCE() on the write side to properly
	 * annotate the concurrent lockless access and avoid KCSAN warnings.
	 */
	WRITE_ONCE(dsq->nr, READ_ONCE(dsq->nr) + delta);
	/* scx_bpf_dsq_nr_queued() reads ->nr without locking, use WRITE_ONCE() */
	WRITE_ONCE(dsq->nr, dsq->nr + delta);
}

static void refill_task_slice_dfl(struct scx_sched *sch, struct task_struct *p)