Re: [PATCH v1 1/8] lib/string: introduce match_string() helper

From: Andy Shevchenko
Date: Sat Jan 09 2016 - 06:57:14 EST


On Sat, Jan 9, 2016 at 3:12 AM, Sergey Senozhatsky
<sergey.senozhatsky@xxxxxxxxx> wrote:
> Andy Shevchenko wrote:
> [..]
>> >
>> > strncmp() case seems to be quite common.
>>
>> Like I answered to Rasmus, please, provide real examples.
>
> [..]
>> > int nmatch_string(array, array_size, string, string_len)
>> > {
>> > do {
>> > strncmp();
>> > } while ();
>> > }
>> >
>> > int match_string(array, array_size, string)
>> > {
>> > return nmatch_string(array, array_size, string,
>> > strlen(string));
>> > }
>>
>> See above.
>
> after some quick and inaccurate grepping, well, probably you're right - not worth it.

Good grep anyway, it clearly shows that there is hard to generalize
which limit to use: a) length of a first argument / item from a list,
b) length of a second argument or a constant.

> arch/mips/bcm63xx/boards/board_bcm963xx.c void __init board_prom_init(void)
> net/irda/irnet/irnet_irda.c irnet_dname_to_daddr()
> arch/powerpc/sysdev/ppc4xx_cpm.c static ssize_t cpm_idle_store()
> arch/x86/ras/mce_amd_inj.c static int __set_inj
> drivers/hwtracing/intel_th/msu.c mode_store
> drivers/pci/pcie/aer/ecrc.c void pcie_ecrc_get_policy
> drivers/pci/pcie/aspm.c pcie_aspm_set_policy
> drivers/scsi/aic7xxx/aic7xxx_osm.c aic7xxx_setup
> drivers/scsi/aic7xxx/aic79xx_osm.c aic79xx_setup
> drivers/scsi/scsi_transport_fc.c static int get_fc_##title##_match
> drivers/staging/android/ion/hisilicon/hi6220_ion.c get_type_by_name
> drivers/staging/lustre/lustre/lmv/lproc_lmv.c placement_name2policy
> drivers/xen/sys-hypervisor.c pmu_mode_store

--
With Best Regards,
Andy Shevchenko