From: "Rafael J. Wysocki" <rjw@rjwysocki.net>
To: Linux ACPI <linux-acpi@vger.kernel.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
Zhang Rui <rui.zhang@intel.com>,
Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>,
Michal Wilczynski <michal.wilczynski@intel.com>,
Hans de Goede <hdegoede@redhat.com>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
Heikki Krogerus <heikki.krogerus@linux.intel.com>,
Mario Limonciello <mario.limonciello@amd.com>
Subject: [PATCH v1 1/4] ACPI: OSL: Rework error handling in acpi_os_execute()
Date: Wed, 29 Nov 2023 14:46:51 +0100 [thread overview]
Message-ID: <8321623.T7Z3S40VBb@kreacher> (raw)
In-Reply-To: <3281896.aeNJFYEL58@kreacher>
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reduce the number of checks and goto labels related to error handling
in acpi_os_execute() and drop the status local variable, which turns
out to be redundant, from it.
No intentional functional impact.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
drivers/acpi/osl.c | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
Index: linux-pm/drivers/acpi/osl.c
===================================================================
--- linux-pm.orig/drivers/acpi/osl.c
+++ linux-pm/drivers/acpi/osl.c
@@ -1060,7 +1060,6 @@ int __init acpi_debugger_init(void)
acpi_status acpi_os_execute(acpi_execute_type type,
acpi_osd_exec_callback function, void *context)
{
- acpi_status status = AE_OK;
struct acpi_os_dpc *dpc;
struct workqueue_struct *queue;
int ret;
@@ -1073,9 +1072,9 @@ acpi_status acpi_os_execute(acpi_execute
ret = acpi_debugger_create_thread(function, context);
if (ret) {
pr_err("Kernel thread creation failed\n");
- status = AE_ERROR;
+ return AE_ERROR;
}
- goto out_thread;
+ return AE_OK;
}
/*
@@ -1107,12 +1106,9 @@ acpi_status acpi_os_execute(acpi_execute
INIT_WORK(&dpc->work, acpi_os_execute_deferred);
} else {
pr_err("Unsupported os_execute type %d.\n", type);
- status = AE_ERROR;
+ goto err;
}
- if (ACPI_FAILURE(status))
- goto err_workqueue;
-
/*
* On some machines, a software-initiated SMI causes corruption unless
* the SMI runs on CPU 0. An SMI can be initiated by any AML, but
@@ -1123,13 +1119,14 @@ acpi_status acpi_os_execute(acpi_execute
ret = queue_work_on(0, queue, &dpc->work);
if (!ret) {
pr_err("Unable to queue work\n");
- status = AE_ERROR;
+ goto err;
}
-err_workqueue:
- if (ACPI_FAILURE(status))
- kfree(dpc);
-out_thread:
- return status;
+
+ return AE_OK;
+
+err:
+ kfree(dpc);
+ return AE_ERROR;
}
EXPORT_SYMBOL(acpi_os_execute);
next prev parent reply other threads:[~2023-11-29 13:52 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-29 13:45 [PATCH v1 0/4] ACPI: OSL: acpi_os_execute() improvements Rafael J. Wysocki
2023-11-29 13:46 ` Rafael J. Wysocki [this message]
2023-11-29 14:10 ` [PATCH v1 1/4] ACPI: OSL: Rework error handling in acpi_os_execute() Andy Shevchenko
2023-11-29 13:48 ` [PATCH v1 2/4] ACPI: OSL: Rearrange workqueue selection " Rafael J. Wysocki
2023-11-29 14:48 ` Andy Shevchenko
2023-11-29 13:50 ` [PATCH v1 3/4] ACPI: OSL: Allow Notify () handlers to run on all CPUs Rafael J. Wysocki
2023-11-29 14:09 ` Andy Shevchenko
2023-11-29 15:17 ` Rafael J. Wysocki
2023-11-29 13:52 ` [PATCH v1 4/4] ACPI: OSL: Use GFP_KERNEL for work item allocations Rafael J. Wysocki
2023-11-29 14:10 ` Andy Shevchenko
2023-12-04 15:26 ` Rafael J. Wysocki
2023-12-02 12:43 ` [PATCH v1 0/4] ACPI: OSL: acpi_os_execute() improvements Hans de Goede
2023-12-02 14:44 ` Rafael J. Wysocki
2023-12-04 16:32 ` Rafael J. Wysocki
2023-12-04 16:35 ` Hans de Goede
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8321623.T7Z3S40VBb@kreacher \
--to=rjw@rjwysocki.net \
--cc=andriy.shevchenko@linux.intel.com \
--cc=hdegoede@redhat.com \
--cc=heikki.krogerus@linux.intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=michal.wilczynski@intel.com \
--cc=mika.westerberg@linux.intel.com \
--cc=rui.zhang@intel.com \
--cc=srinivas.pandruvada@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox