Message ID | 20210410140253.1966892-1-andy.shevchenko@gmail.com |
---|---|
State | Accepted |
Commit | 020505581119d191ee8da478783e2465d7f5fa8e |
Headers | show |
Series | [v1,1/1] ACPI: scan: Utilize match_string() API | expand |
On Sat, Apr 10, 2021 at 4:02 PM Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > > We have already an API to match a string in the array of strings. > Utilize it instead of open coded analogues. > > Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com> > --- > drivers/acpi/scan.c | 22 ++++++++++------------ > 1 file changed, 10 insertions(+), 12 deletions(-) > > diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c > index b1d1f1a8ce69..bba6b529cf6c 100644 > --- a/drivers/acpi/scan.c > +++ b/drivers/acpi/scan.c > @@ -756,27 +756,25 @@ static bool acpi_info_matches_ids(struct acpi_device_info *info, > const char * const ids[]) > { > struct acpi_pnp_device_id_list *cid_list = NULL; > - int i; > + int i, index; > > if (!(info->valid & ACPI_VALID_HID)) > return false; > > + index = match_string(ids, -1, info->hardware_id.string); > + if (index >= 0) > + return true; > + > if (info->valid & ACPI_VALID_CID) > cid_list = &info->compatible_id_list; > > - for (i = 0; ids[i]; i++) { > - int j; > + if (!cid_list) > + return false; > > - if (!strcmp(info->hardware_id.string, ids[i])) > + for (i = 0; i < cid_list->count; i++) { > + index = match_string(ids, -1, cid_list->ids[i].string); > + if (index >= 0) > return true; > - > - if (!cid_list) > - continue; > - > - for (j = 0; j < cid_list->count; j++) { > - if (!strcmp(cid_list->ids[j].string, ids[i])) > - return true; > - } > } > > return false; > -- Applied as 5.13 material, thanks!
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c index b1d1f1a8ce69..bba6b529cf6c 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c @@ -756,27 +756,25 @@ static bool acpi_info_matches_ids(struct acpi_device_info *info, const char * const ids[]) { struct acpi_pnp_device_id_list *cid_list = NULL; - int i; + int i, index; if (!(info->valid & ACPI_VALID_HID)) return false; + index = match_string(ids, -1, info->hardware_id.string); + if (index >= 0) + return true; + if (info->valid & ACPI_VALID_CID) cid_list = &info->compatible_id_list; - for (i = 0; ids[i]; i++) { - int j; + if (!cid_list) + return false; - if (!strcmp(info->hardware_id.string, ids[i])) + for (i = 0; i < cid_list->count; i++) { + index = match_string(ids, -1, cid_list->ids[i].string); + if (index >= 0) return true; - - if (!cid_list) - continue; - - for (j = 0; j < cid_list->count; j++) { - if (!strcmp(cid_list->ids[j].string, ids[i])) - return true; - } } return false;
We have already an API to match a string in the array of strings. Utilize it instead of open coded analogues. Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com> --- drivers/acpi/scan.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-)