From: Hans de Goede <hdegoede@redhat.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
Len Brown <lenb@kernel.org>, Sebastian Reichel <sre@kernel.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Lukas Wunner <lukas@wunner.de>,
Robert Moore <robert.moore@intel.com>,
ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
Linux PM <linux-pm@vger.kernel.org>
Subject: Re: [PATCH v6 2/5] ACPI: battery: Fix acpi_battery_exit on acpi_battery_init_async errors
Date: Wed, 19 Apr 2017 10:43:17 +0200 [thread overview]
Message-ID: <aaaabcb5-421b-aa22-f5b5-a28fbbc2d5c6@redhat.com> (raw)
In-Reply-To: <CAJZ5v0g4h6zWg8FxoUhyshyVGpzbyi+4w7H95HHt9b9quv7anw@mail.gmail.com>
Hi,
On 18-04-17 15:36, Rafael J. Wysocki wrote:
> On Tue, Apr 18, 2017 at 1:58 PM, Hans de Goede <hdegoede@redhat.com> wrote:
>> The acpi_lock_battery_dir() / acpi_bus_register_driver() calls in
>> acpi_battery_init_async() may fail. Check that they succeeded before
>> undoing them.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>> drivers/acpi/battery.c | 8 ++++++--
>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
>> index 4ef1e46..b35fca4 100644
>> --- a/drivers/acpi/battery.c
>> +++ b/drivers/acpi/battery.c
>> @@ -67,6 +67,7 @@ MODULE_DESCRIPTION("ACPI Battery Driver");
>> MODULE_LICENSE("GPL");
>>
>> static async_cookie_t async_cookie;
>> +static bool battery_driver_registered;
>> static int battery_bix_broken_package;
>> static int battery_notification_delay_ms;
>> static unsigned int cache_time = 1000;
>> @@ -1329,6 +1330,7 @@ static void __init acpi_battery_init_async(void *unused, async_cookie_t cookie)
>> if (result < 0)
>> acpi_unlock_battery_dir(acpi_battery_dir);
>> #endif
>> + battery_driver_registered = (result == 0);
>
> Maybe
>
> battery_driver_registered = !result;
I prefer == 0 here because we are checking for success (which is 0)
not for "not true".
Regards,
Hans
>
>> }
>>
>> static int __init acpi_battery_init(void)
>> @@ -1343,9 +1345,11 @@ static int __init acpi_battery_init(void)
>> static void __exit acpi_battery_exit(void)
>> {
>> async_synchronize_cookie(async_cookie + 1);
>> - acpi_bus_unregister_driver(&acpi_battery_driver);
>> + if (battery_driver_registered)
>> + acpi_bus_unregister_driver(&acpi_battery_driver);
>> #ifdef CONFIG_ACPI_PROCFS_POWER
>> - acpi_unlock_battery_dir(acpi_battery_dir);
>> + if (acpi_battery_dir)
>> + acpi_unlock_battery_dir(acpi_battery_dir);
>> #endif
>> }
>
> Thanks,
> Rafael
>
next prev parent reply other threads:[~2017-04-19 8:43 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-18 11:58 [PATCH v6 0/5] ACPI: new acpi_dev_present helper + ac and battery blacklist patches Hans de Goede
2017-04-18 11:58 ` [PATCH v6 1/5] ACPI: utils: Add new acpi_dev_present helper Hans de Goede
2017-04-18 11:58 ` [PATCH v6 2/5] ACPI: battery: Fix acpi_battery_exit on acpi_battery_init_async errors Hans de Goede
2017-04-18 13:36 ` Rafael J. Wysocki
2017-04-19 8:43 ` Hans de Goede [this message]
2017-04-18 11:58 ` [PATCH v6 3/5] ACPI: battery: Add a blacklist with PMIC ACPI HIDs with a native battery driver Hans de Goede
2017-04-18 13:13 ` Andy Shevchenko
2017-04-18 11:58 ` [PATCH v6 4/5] ACPI: ac: Add a blacklist with PMIC ACPI HIDs with a native charger driver Hans de Goede
2017-04-18 13:15 ` Andy Shevchenko
2017-04-18 11:58 ` [PATCH v6 5/5] power: supply: axp288_charger: Only wait for INT3496 device if present 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=aaaabcb5-421b-aa22-f5b5-a28fbbc2d5c6@redhat.com \
--to=hdegoede@redhat.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=rafael@kernel.org \
--cc=rjw@rjwysocki.net \
--cc=robert.moore@intel.com \
--cc=sre@kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).