ACPI: prefer bool over int for predicates
Subsystems (3)
PATCH 1/1 ACPI: prefer bool over int for predicates
Prefer bool over int for variables / returns which are predicate expressions to make it explicit that these expressions are evaluating simple "yes or no?" queries.
This makes it more obvious which expressions are _not_ that simple and require more attention, e.g. an int ret meant to hold 0 or -ENOENT as a return value or an unsigned nmemb meant to refer to the number of valid members in some arbitrary array.
Change relevant variable / return types from int to bool and prefer a true / false value for predicate expressions versus a plain 1 / 0 value.
drivers/acpi/battery.c | 4 ++-- drivers/acpi/ec.c | 20 +++++++++----------- drivers/acpi/pci_root.c | 17 ++++++----------- drivers/acpi/scan.c | 6 +++--- include/acpi/acpi_bus.h | 2 +- 5 files changed, 21 insertions(+), 28 deletions(-)
drivers/acpi/battery.c +2 -2
@@ -1416,7 +1416,7 @@ static int acpi_battery_add(struct acpi_device *device) battery->pm_nb.notifier_call = battery_notify;register_pm_notifier (&battery->pm_nb); -device_init_wakeup (&device->dev,1 ); +device_init_wakeup (&device->dev, true);return result;
@@ -1434,7 +1434,7 @@ static int acpi_battery_remove(struct acpi_device *device)if (!device || !acpi_driver_data (device))return -EINVAL ; -device_init_wakeup (&device->dev,0 ); +device_init_wakeup (&device->dev, false); battery =acpi_driver_data (device);unregister_pm_notifier (&battery->pm_nb);#ifdef CONFIG_ACPI_PROCFS_POWER
drivers/acpi/ec.c +9 -11
@@ -350,7 +350,7 @@ static inline bool acpi_ec_is_gpe_raised(struct acpi_ec *ec)acpi_event_status gpe_status =0 ; (void )acpi_get_gpe_status (NULL , ec->gpe, &gpe_status); -return (gpe_status &ACPI_EVENT_FLAG_STATUS_SET ) ? true : false; +return gpe_status &ACPI_EVENT_FLAG_STATUS_SET ; }static inline void acpi_ec_enable_gpe (struct acpi_ec *ec,bool open)
@@ -580,28 +580,26 @@ static bool acpi_ec_guard_event(struct acpi_ec *ec)return guarded; } -static int ec_transaction_polled (struct acpi_ec *ec) +static bool ec_transaction_polled (struct acpi_ec *ec) {unsigned long flags; -int ret =0 ; +bool polled;spin_lock_irqsave (&ec->lock, flags); -if (ec->curr && (ec->curr->flags &ACPI_EC_COMMAND_POLL )) - ret =1 ; + polled = ec->curr && (ec->curr->flags &ACPI_EC_COMMAND_POLL );spin_unlock_irqrestore (&ec->lock, flags); -return ret; +return polled; } -static int ec_transaction_completed (struct acpi_ec *ec) +static bool ec_transaction_completed (struct acpi_ec *ec) {unsigned long flags; -int ret =0 ; +bool completed;spin_lock_irqsave (&ec->lock, flags); -if (ec->curr && (ec->curr->flags &ACPI_EC_COMMAND_COMPLETE )) - ret =1 ; + completed = ec->curr && (ec->curr->flags &ACPI_EC_COMMAND_COMPLETE );spin_unlock_irqrestore (&ec->lock, flags); -return ret; +return completed; }static inline void ec_transaction_transition (struct acpi_ec *ec,unsigned long flag)
drivers/acpi/pci_root.c +6 -11
@@ -81,20 +81,15 @@ static DEFINE_MUTEX(osc_lock);* Note: we could make this API take a struct acpi_device * instead, but * for now, it's more convenient to operate on an acpi_handle. */ -int acpi_is_root_bridge (acpi_handle handle) +bool acpi_is_root_bridge (acpi_handle handle) { -int ret;struct acpi_device *device; - ret =acpi_bus_get_device (handle, &device); -if (ret) -return 0 ; - - ret =acpi_match_device_ids (device, root_device_ids); -if (ret) -return 0 ; -else -return 1 ; +if (acpi_bus_get_device (handle, &device)) +return false; +if (acpi_match_device_ids (device, root_device_ids)) +return false; +return true; }EXPORT_SYMBOL_GPL (acpi_is_root_bridge);
drivers/acpi/scan.c +3 -3
@@ -625,7 +625,7 @@ int acpi_device_add(struct acpi_device *device, {int result;struct acpi_device_bus_id *acpi_device_bus_id, *new_bus_id; -int found =0 ; +bool found = false;if (device->handle) {acpi_status status;
@@ -667,7 +667,7 @@ int acpi_device_add(struct acpi_device *device,if (!strcmp (acpi_device_bus_id->bus_id,acpi_device_hid (device))) { acpi_device_bus_id->instance_no++; - found =1 ; + found = true;kfree (new_bus_id);break ; }
@@ -1787,7 +1787,7 @@ static void acpi_device_dep_initialize(struct acpi_device *adev)for (i =0 ; i < dep_devices.count; i++) {struct acpi_device_info *info; -int skip; +bool skip; status =acpi_get_object_info (dep_devices.handles[i], &info);if (ACPI_FAILURE (status)) {
include/acpi/acpi_bus.h +1 -1
@@ -599,7 +599,7 @@ void acpi_dma_deconfigure(struct device *dev);struct acpi_device *acpi_find_child_device (struct acpi_device *parent,u64 address,bool check_children); -int acpi_is_root_bridge (acpi_handle ); +bool acpi_is_root_bridge (acpi_handle handle);struct acpi_pci_root *acpi_pci_find_root (acpi_handle handle);int acpi_enable_wakeup_device_power (struct acpi_device *dev,int state);
Signature · 1 line
2.17.0.rc1.35.g90bbd502d54fe92035.dirty
Quoted 9 lines · CEST Joey Pabalinas
--dohnnvt2hwn6rmo4
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printablePrefer bool over int for variables / returns which are predicate expressions to make it explicit that these expressions are evaluating simple "yes or no?" queries.
In new code - yes.
But changing old code just for this purpose is at least questionable.
Quoted 9 lines
This makes it more obvious which expressions are _not_ that simple and require more attention, e.g. an
int retmeant to hold 0 or-ENOENTas a return value or anunsigned nmembmeant to refer to the number of valid members in some arbitrary array.Change relevant variable / return types from int to bool and prefer a true / false value for predicate expressions versus a plain 1 / 0 value.
This makes a bunch of unrelated changes without a clear pattern in many places and I'm not convinced that the reason is good enough.
Quoted 17 lines
Signed-off-by Joey Pabalinas <[email protected]>drivers/acpi/battery.c | 4 ++-- drivers/acpi/ec.c | 20 +++++++++----------- drivers/acpi/pci_root.c | 17 ++++++----------- drivers/acpi/scan.c | 6 +++--- include/acpi/acpi_bus.h | 2 +- 5 files changed, 21 insertions(+), 28 deletions(-)drivers/acpi/battery.c +0
-0@@ -1416,7 +1416,7 @@ static int acpi_battery_add(struct acpi_device *devic= e) battery->pm_nb.notifier_call =3D battery_notify;register_pm_notifier (&battery->pm_nb);
Quoted 1 line
=20
Broken whitespace.
Quoted 23 lines
drivers/acpi/battery.c +1
-1-device_init_wakeup (&device->dev,1 ); +device_init_wakeup (&device->dev, true);=20
return result;
=20drivers/acpi/battery.c +0
-0@@ -1434,7 +1434,7 @@ static int acpi_battery_remove(struct acpi_device *de= vice)=20
drivers/acpi/battery.c +1
-1if (!device || !acpi_driver_data (device))return -EINVAL ; -device_init_wakeup (&device->dev,0 ); +device_init_wakeup (&device->dev, false); battery =3D acpi_driver_data(device);unregister_pm_notifier (&battery->pm_nb);#ifdef CONFIG_ACPI_PROCFS_POWER drivers/acpi/ec.c +0
-0@@ -350,7 +350,7 @@ static inline bool acpi_ec_is_gpe_raised(struct acpi_ec= *ec) acpi_event_status gpe_status =3D 0;=20
drivers/acpi/ec.c static inline bool acpi_ec_is_gpe_raised(struct acpi_ec *ec) · line 353
Quoted 3 lines
drivers/acpi/ec.c +1
-1(void )acpi_get_gpe_status (NULL , ec->gpe, &gpe_status); -return (gpe_status &ACPI_EVENT_FLAG_STATUS_SET ) ? true : false; +return gpe_status &ACPI_EVENT_FLAG_STATUS_SET ;
And this isn't entirely correct even.
You should apply !! to the expression to get the same result really.
Thanks,
Rafael