platform/x86: hp-bioscfg: Change how order list size is evaluated
authorJorge Lopez <jorge.lopez2@hp.com>
Mon, 31 Jul 2023 20:31:38 +0000 (15:31 -0500)
committerHans de Goede <hdegoede@redhat.com>
Mon, 7 Aug 2023 11:35:23 +0000 (13:35 +0200)
Update steps how order list size is evaluated

Signed-off-by: Jorge Lopez <jorge.lopez2@hp.com>
Link: https://lore.kernel.org/r/20230731203141.30044-6-jorge.lopez2@hp.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/hp/hp-bioscfg/order-list-attributes.c

index 71f588c..3b07391 100644 (file)
@@ -243,9 +243,12 @@ static int hp_populate_ordered_list_elements_from_package(union acpi_object *ord
                        break;
 
                case ORD_LIST_SIZE:
+                       if (int_value > MAX_ELEMENTS_SIZE) {
+                               pr_warn("Order List size value exceeded the maximum number of elements supported or data may be malformed\n");
+                               int_value = MAX_ELEMENTS_SIZE;
+                       }
                        ordered_list_data->elements_size = int_value;
-                       if (int_value > MAX_ELEMENTS_SIZE)
-                               pr_warn("Ordered List size value exceeded the maximum number of elements supported or data may be malformed\n");
+
                        /*
                         * This step is needed to keep the expected
                         * element list pointing to the right obj[elem].type