summaryrefslogtreecommitdiff
path: root/drivers/acpi
diff options
context:
space:
mode:
authorStefan Binding <sbinding@opensource.cirrus.com>2022-08-12 16:06:45 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2022-08-25 14:28:44 +0300
commit06865077b34c792181e3c4f82417a2888c6e7453 (patch)
tree3dbd1a8339f6c5ce74968fa0252739e1242cfc95 /drivers/acpi
parent1c23f9e627a7b412978b4e852793c5e3c3efc555 (diff)
downloadlinux-06865077b34c792181e3c4f82417a2888c6e7453.tar.xz
ACPI: property: Fix type detection of unified integer reading functions
The current code expects the type of the value to be an integer type, instead the value passed to the macro is a pointer. Ensure the size comparison uses the correct pointer type to choose the max value, instead of using the integer type. Fixes: 923044133367 ("ACPI: property: Unify integer value reading functions") Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com> Tested-by: Sakari Ailus <sakari.ailus@linux.intel.com> Tested-by: John Garry <john.garry@huawei.com> Acked-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/property.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/acpi/property.c b/drivers/acpi/property.c
index 7b3ad8ed2f4e..b1d4a8db89df 100644
--- a/drivers/acpi/property.c
+++ b/drivers/acpi/property.c
@@ -1043,10 +1043,10 @@ static int acpi_data_prop_read_single(const struct acpi_device_data *data,
break; \
} \
if (__items[i].integer.value > _Generic(__val, \
- u8: U8_MAX, \
- u16: U16_MAX, \
- u32: U32_MAX, \
- u64: U64_MAX, \
+ u8 *: U8_MAX, \
+ u16 *: U16_MAX, \
+ u32 *: U32_MAX, \
+ u64 *: U64_MAX, \
default: 0U)) { \
ret = -EOVERFLOW; \
break; \