Message ID | 20220812113308.1772-1-yuzenghui@huawei.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | ACPI: property: Fix mis-use of _Generic() | expand |
diff --git a/drivers/acpi/property.c b/drivers/acpi/property.c index 7b3ad8ed2f4e..1ededa618a88 100644 --- a/drivers/acpi/property.c +++ b/drivers/acpi/property.c @@ -1042,7 +1042,7 @@ static int acpi_data_prop_read_single(const struct acpi_device_data *data, ret = -EPROTO; \ break; \ } \ - if (__items[i].integer.value > _Generic(__val, \ + if (__items[i].integer.value > _Generic(__val[i], \ u8: U8_MAX, \ u16: U16_MAX, \ u32: U32_MAX, \
It looks wrong to pass __val as the control-expression of _Generic() which will always return 0U this way and acpi_copy_property_array_uint() is likely to return -EOVERFLOW error whilst it actually doesn't. Use __val[i] to match the given type list. Fixes: 923044133367 ("ACPI: property: Unify integer value reading functions") Cc: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Zenghui Yu <yuzenghui@huawei.com> --- drivers/acpi/property.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)