Message ID | 20190128115728.68240-1-andriy.shevchenko@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
Series | [v1] PCI/AER: use match_string() helper to simplify the code | expand |
On Mon, Jan 28, 2019 at 01:57:28PM +0200, Andy Shevchenko wrote: > match_string() returns the index of an array for a matching string, > which can be used intead of open coded implementation. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Applied to pci/aer for v5.1, thanks! > --- > drivers/pci/pcie/aer.c | 9 +++------ > 1 file changed, 3 insertions(+), 6 deletions(-) > > diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c > index fed29de783e0..f8fc2114ad39 100644 > --- a/drivers/pci/pcie/aer.c > +++ b/drivers/pci/pcie/aer.c > @@ -117,7 +117,7 @@ bool pci_aer_available(void) > > static int ecrc_policy = ECRC_POLICY_DEFAULT; > > -static const char *ecrc_policy_str[] = { > +static const char * const ecrc_policy_str[] = { > [ECRC_POLICY_DEFAULT] = "bios", > [ECRC_POLICY_OFF] = "off", > [ECRC_POLICY_ON] = "on" > @@ -203,11 +203,8 @@ void pcie_ecrc_get_policy(char *str) > { > int i; > > - for (i = 0; i < ARRAY_SIZE(ecrc_policy_str); i++) > - if (!strncmp(str, ecrc_policy_str[i], > - strlen(ecrc_policy_str[i]))) > - break; > - if (i >= ARRAY_SIZE(ecrc_policy_str)) > + i = match_string(ecrc_policy_str, ARRAY_SIZE(ecrc_policy_str), str); > + if (i < 0) > return; > > ecrc_policy = i; > -- > 2.20.1 >
diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c index fed29de783e0..f8fc2114ad39 100644 --- a/drivers/pci/pcie/aer.c +++ b/drivers/pci/pcie/aer.c @@ -117,7 +117,7 @@ bool pci_aer_available(void) static int ecrc_policy = ECRC_POLICY_DEFAULT; -static const char *ecrc_policy_str[] = { +static const char * const ecrc_policy_str[] = { [ECRC_POLICY_DEFAULT] = "bios", [ECRC_POLICY_OFF] = "off", [ECRC_POLICY_ON] = "on" @@ -203,11 +203,8 @@ void pcie_ecrc_get_policy(char *str) { int i; - for (i = 0; i < ARRAY_SIZE(ecrc_policy_str); i++) - if (!strncmp(str, ecrc_policy_str[i], - strlen(ecrc_policy_str[i]))) - break; - if (i >= ARRAY_SIZE(ecrc_policy_str)) + i = match_string(ecrc_policy_str, ARRAY_SIZE(ecrc_policy_str), str); + if (i < 0) return; ecrc_policy = i;
match_string() returns the index of an array for a matching string, which can be used intead of open coded implementation. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/pci/pcie/aer.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)