Re: [PATCH v1 1/1] ACPI: x86: s2idle: Switch to use acpi_evaluate_dsm_typed()

From: Rafael J. Wysocki
Date: Tue Oct 03 2023 - 09:51:30 EST


On Mon, Oct 2, 2023 at 4:05 PM Mario Limonciello
<mario.limonciello@xxxxxxx> wrote:
>
> On 10/2/2023 08:52, Andy Shevchenko wrote:
> > The acpi_evaluate_dsm_typed() provides a way to check the type of the
> > object evaluated by _DSM call. Use it instead of open coded variant.
> >
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
>
> Reviewed-by: Mario Limonciello <mario.limonciello@xxxxxxx>

Applied as 6.7 material, thanks!

> > ---
> > drivers/acpi/x86/s2idle.c | 5 ++---
> > 1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
> > index 08f7c6708206..7d64e655f1b8 100644
> > --- a/drivers/acpi/x86/s2idle.c
> > +++ b/drivers/acpi/x86/s2idle.c
> > @@ -417,11 +417,10 @@ static int validate_dsm(acpi_handle handle, const char *uuid, int rev, guid_t *d
> > int ret = -EINVAL;
> >
> > guid_parse(uuid, dsm_guid);
> > - obj = acpi_evaluate_dsm(handle, dsm_guid, rev, 0, NULL);
> >
> > /* Check if the _DSM is present and as expected. */
> > - if (!obj || obj->type != ACPI_TYPE_BUFFER || obj->buffer.length == 0 ||
> > - obj->buffer.length > sizeof(u32)) {
> > + obj = acpi_evaluate_dsm_typed(handle, dsm_guid, rev, 0, NULL, ACPI_TYPE_BUFFER);
> > + if (!obj || obj->buffer.length == 0 || obj->buffer.length > sizeof(u32)) {
> > acpi_handle_debug(handle,
> > "_DSM UUID %s rev %d function 0 evaluation failed\n", uuid, rev);
> > goto out;
>