> +     WRITE_ONCE(sched->ready, false);

Don't we need smp_store_release() here and

> +     return READ_ONCE(sched->ready);
smp_load_acquire() here?

Also, what about drm_sched_init()? It also seems that this is accessed from
amdgpu without the drm_sched_wqueue_ready() helper about a million times. :)

        $ grep -Rin "sched\.ready" drivers/gpu/drm/amd | wc
        $     119     544   10320

There may be false positives, but from a quick glance at least most of them seem
to actually come from the scheduler.

Reply via email to