Re: [PATCH] sched_ext: Set errno on ENABLING -> ENABLED transition failure

[email protected] Tue, 28 Jul 2026 15:03:36 +0800
Newsgroups dev.linux.lists.sched-ext
Message-ID <[email protected]>
On Tue, Jul 28, 2026 at 06:28:06AM +0000, [email protected] wrote:
> Unlike scx_root_enable_workfn(), the err_disable label in
> scx_sub_enable_workfn() lacks a catch-all scx_error() call. If an error
> path jumps there without already invoking scx_error(), it appears to
> result in a silent failure.

The catch-all scx_error() at the err_disable sink in
scx_sub_enable_workfn() already exists in mainline. It was added by
commit db4e9defd2e8 ("sched_ext: Record an error on errno-only
sub-enable failure"):

    err_disable:
        mutex_unlock(&scx_enable_mutex);
        /*
         * Some enable failures only return an errno (e.g. -ENOMEM from an
         * allocation) without calling scx_error(). Record it so
         * scx_flush_disable_work() runs the disable and ops.exit() fires.
         */
        scx_error(sch, "scx_sub_enable() failed (%d)", ret);
        scx_flush_disable_work(sch);
        cmd->ret = 0;

So the silent failure described in the review no longer exists.