The WMI driver core already knows how many WMI object instances
are available, use this information instead of probing the WMI object
manually.
Compile-tested only.
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20230430203153.5587-3-W_Armin@gmx.de
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
 
  */
 int get_instance_count(const char *guid_string)
 {
-       union acpi_object *wmi_obj = NULL;
-       int i = 0;
+       int ret;
 
-       do {
-               kfree(wmi_obj);
-               wmi_obj = get_wmiobj_pointer(i, guid_string);
-               i++;
-       } while (wmi_obj);
+       ret = wmi_instance_count(guid_string);
+       if (ret < 0)
+               return 0;
 
-       return (i-1);
+       return ret;
 }
 
 /**