Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp601075ybz; Wed, 22 Apr 2020 04:31:50 -0700 (PDT) X-Google-Smtp-Source: APiQypIgjMNgldWCXFi030o13n7eSLdKzUdWI2Wshnn0f/QGPL8KyqNwsnIyG8pQfp9HbGb6WFVY X-Received: by 2002:aa7:cb0f:: with SMTP id s15mr22246517edt.164.1587555110446; Wed, 22 Apr 2020 04:31:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587555110; cv=none; d=google.com; s=arc-20160816; b=X4mIGXf8TRoau+ttJ3dsFk5KbQeIsL3WVWNNbiLWmlQnbHEUNg+NofaTd2QMbVAFk2 +nOWqfnSVrj+equW3znF3wOf25pn7HwMzFYBiguc8/wLWrMwipuNWX2epIxlvqiDVnd9 lrauEWg7F4+S3KXamUK9fDXHtjS1HRw1pVDyFNCByK1hilNYrhHAsEdUPnKAwC/8Zp09 HpzzzLtLNBg/aygcV2P3znGyYUM/HU+LPs3tlB5Fg5LMpo5VDj/5HFtuEWBMBCVKxCiW yT8IluUXXmYUCJV/crqk4ivCbe/OTSq4zUFLVf/rK/W7u7dnLp6CSSd940+AmlRyNfJ8 2wcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:subject:cc:to :from:date:user-agent:message-id:dkim-signature; bh=pja6EtNKFY6TZO5unPD8RsRZYU0yKevwwnZMNby6GwU=; b=P2DVcpju8mcuGnS24nAHyiftLdduhtO8o4hqu4/UGgZ7c5MYZsA1Vv+0Z1UuG4VE95 eWkWOv6mDEqO0XPdyEdmQqVdyqTGsfTnFpIkQgAfXVfq1BnDNWv62wSfWTeKCmjBOpmy B2DGpTcFhFlghw6aE1THkRRgUqO/rJU4f9EfL2tSaTmktuBl9Hg4YaItCmx5n5v7QW6H axuDjnZeJFG3uAA3omWqMfxcf/yaIcrqP0LrgH1zHYJk5DSrNA4ith4FOHPCwLnDrmeM xugF7tyhiinSTzYjywgyNM78Kq4SOq/Vb4hguuBXvBsxR1imEWR46itvESu5uMPfxLLg Ht2Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=merlin.20170209 header.b=N26s26pc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l13si3647078edi.509.2020.04.22.04.31.26; Wed, 22 Apr 2020 04:31:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@infradead.org header.s=merlin.20170209 header.b=N26s26pc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727918AbgDVLaB (ORCPT + 99 others); Wed, 22 Apr 2020 07:30:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1727837AbgDVL3y (ORCPT ); Wed, 22 Apr 2020 07:29:54 -0400 Received: from merlin.infradead.org (unknown [IPv6:2001:8b0:10b:1231::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E65F8C03C1A8 for ; Wed, 22 Apr 2020 04:29:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=Content-Type:MIME-Version:References: Subject:Cc:To:From:Date:Message-Id:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:In-Reply-To; bh=pja6EtNKFY6TZO5unPD8RsRZYU0yKevwwnZMNby6GwU=; b=N26s26pcaI+yW+rwrQVRRHImlO 2wOYiyfdVWU7GT3w9ATLj6e+WRjWOmjIV0T1C0d22H93iLK8mtKWodT3WwJB4qQh0f1k20Ju30EgY 1D59GZysN0RfH+NsmZelgyN2snilbKJtWOdyGnF4KliO/JKiFLyxgVH4ZRXkGgS1cQzhkE3WlYClM a0zEAgaLi9HWX8RogaQ5WeHGXpF2WBisHsJCxpZrwn1mOkpA3bsd3VtSNEPPcAjBU+JPg66rwJ7Ta 0mqu9zqBhsSNAIH8VEsVhIDTj+D24/jowH/4nEzxkmFR46LoE5cWyPBUbKdhIul2D4yORKfyxXlI2 rIp0d/YA==; Received: from j217100.upc-j.chello.nl ([24.132.217.100] helo=noisy.programming.kicks-ass.net) by merlin.infradead.org with esmtpsa (Exim 4.92.3 #3 (Red Hat Linux)) id 1jRDYy-0006rG-DB; Wed, 22 Apr 2020 11:29:08 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 5E2A630798A; Wed, 22 Apr 2020 13:29:03 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 0) id 2959820195236; Wed, 22 Apr 2020 13:29:03 +0200 (CEST) Message-Id: <20200422112832.590341262@infradead.org> User-Agent: quilt/0.65 Date: Wed, 22 Apr 2020 13:27:42 +0200 From: Peter Zijlstra To: mingo@kernel.org, linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, rostedt@goodmis.org, qais.yousef@arm.com, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, bsegall@google.com, mgorman@suse.de, peterz@infradead.org, axboe@kernel.dk, daniel.lezcano@linaro.org, sudeep.holla@arm.com, airlied@redhat.com, broonie@kernel.org, paulmck@kernel.org Subject: [PATCH 23/23] sched: Remove sched_set_*() return value References: <20200422112719.826676174@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ingo suggested that since the new sched_set_*() functions are implemented using the 'nocheck' variants, they really shouldn't ever fail, so remove the return value. Cc: axboe@kernel.dk Cc: daniel.lezcano@linaro.org Cc: sudeep.holla@arm.com Cc: airlied@redhat.com Cc: broonie@kernel.org Cc: paulmck@kernel.org Suggested-by: Ingo Molnar Signed-off-by: Peter Zijlstra (Intel) --- drivers/block/drbd/drbd_receiver.c | 4 +--- drivers/firmware/psci/psci_checker.c | 3 +-- drivers/gpu/drm/msm/msm_drv.c | 5 +---- drivers/platform/chrome/cros_ec_spi.c | 7 +++---- include/linux/sched.h | 6 +++--- kernel/rcu/rcutorture.c | 5 +---- kernel/sched/core.c | 12 ++++++------ 7 files changed, 16 insertions(+), 26 deletions(-) --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c @@ -6021,9 +6021,7 @@ int drbd_ack_receiver(struct drbd_thread int expect = header_size; bool ping_timeout_active = false; - rv = sched_set_fifo_low(current); - if (rv < 0) - drbd_err(connection, "drbd_ack_receiver: ERROR set priority, ret=%d\n", rv); + sched_set_fifo_low(current); while (get_t_state(thi) == RUNNING) { drbd_thread_current_set_cpu(thi); --- a/drivers/firmware/psci/psci_checker.c +++ b/drivers/firmware/psci/psci_checker.c @@ -281,8 +281,7 @@ static int suspend_test_thread(void *arg wait_for_completion(&suspend_threads_started); /* Set maximum priority to preempt all other threads on this CPU. */ - if (sched_set_fifo(current)) - pr_warn("Failed to set suspend thread scheduler on CPU %d\n", cpu); + sched_set_fifo(current); dev = this_cpu_read(cpuidle_devices); drv = cpuidle_get_cpu_driver(dev); --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -508,10 +508,7 @@ static int msm_drm_init(struct device *d goto err_msm_uninit; } - ret = sched_set_fifo(priv->event_thread[i].thread); - if (ret) - dev_warn(dev, "event_thread set priority failed:%d\n", - ret); + sched_set_fifo(priv->event_thread[i].thread); } ret = drm_vblank_init(ddev, priv->num_crtcs); --- a/drivers/platform/chrome/cros_ec_spi.c +++ b/drivers/platform/chrome/cros_ec_spi.c @@ -725,10 +725,9 @@ static int cros_ec_spi_devm_high_pri_all if (err) return err; - err = sched_set_fifo(ec_spi->high_pri_worker->task); - if (err) - dev_err(dev, "Can't set cros_ec high pri priority: %d\n", err); - return err; + sched_set_fifo(ec_spi->high_pri_worker->task); + + return 0; } static int cros_ec_spi_probe(struct spi_device *spi) --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1631,9 +1631,9 @@ extern int idle_cpu(int cpu); extern int available_idle_cpu(int cpu); extern int sched_setscheduler(struct task_struct *, int, const struct sched_param *); extern int sched_setscheduler_nocheck(struct task_struct *, int, const struct sched_param *); -extern int sched_set_fifo(struct task_struct *p); -extern int sched_set_fifo_low(struct task_struct *p); -extern int sched_set_normal(struct task_struct *p, int nice); +extern void sched_set_fifo(struct task_struct *p); +extern void sched_set_fifo_low(struct task_struct *p); +extern void sched_set_normal(struct task_struct *p, int nice); extern int sched_setattr(struct task_struct *, const struct sched_attr *); extern int sched_setattr_nocheck(struct task_struct *, const struct sched_attr *); extern struct task_struct *idle_task(int cpu); --- a/kernel/rcu/rcutorture.c +++ b/kernel/rcu/rcutorture.c @@ -806,10 +806,7 @@ static int rcu_torture_boost(void *arg) VERBOSE_TOROUT_STRING("rcu_torture_boost started"); /* Set real-time priority. */ - if (sched_set_fifo_low(current) < 0) { - VERBOSE_TOROUT_STRING("rcu_torture_boost RT prio failed!"); - n_rcu_torture_boost_rterror++; - } + sched_set_fifo_low(current); init_rcu_head_on_stack(&rbi.rcu); /* Each pass through the following loop does one boost-test cycle. */ --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5114,30 +5114,30 @@ int sched_setscheduler_nocheck(struct ta * The administrator _MUST_ configure the system, the kernel simply doesn't * know enough information to make a sensible choice. */ -int sched_set_fifo(struct task_struct *p) +void sched_set_fifo(struct task_struct *p) { struct sched_param sp = { .sched_priority = MAX_RT_PRIO / 2 }; - return sched_setscheduler_nocheck(p, SCHED_FIFO, &sp); + WARN_ON_ONCE(sched_setscheduler_nocheck(p, SCHED_FIFO, &sp) != 0); } EXPORT_SYMBOL_GPL(sched_set_fifo); /* * For when you don't much care about FIFO, but want to be above SCHED_NORMAL. */ -int sched_set_fifo_low(struct task_struct *p) +void sched_set_fifo_low(struct task_struct *p) { struct sched_param sp = { .sched_priority = 1 }; - return sched_setscheduler_nocheck(p, SCHED_FIFO, &sp); + WARN_ON_ONCE(sched_setscheduler_nocheck(p, SCHED_FIFO, &sp) != 0); } EXPORT_SYMBOL_GPL(sched_set_fifo_low); -int sched_set_normal(struct task_struct *p, int nice) +void sched_set_normal(struct task_struct *p, int nice) { struct sched_attr attr = { .sched_policy = SCHED_NORMAL, .sched_nice = nice, }; - return sched_setattr_nocheck(p, &attr); + WARN_ON_ONCE(sched_setattr_nocheck(p, &attr) != 0); } EXPORT_SYMBOL_GPL(sched_set_normal);