On Fri, 2017-08-11 at 16:23 +0200, Hannes Reinecke wrote: > When checking the model and vendor string we need to use the > minimum value of either string, otherwise we'll miss out on > wildcard matches. > And we should take card when matching with zero size strings; "card"? Did you perhaps mean "care"? > results might be unpredictable. > With this patch the rules for matching devinfo strings are > as follows: > - Vendor strings must match exactly > - Empty Model strings will only match if the devinfo model > is also empty > - Model strings shorter than the devinfo model string will > not match The above sentence contradicts the first sentence. > + /* > + * @model specifies the full string, and > + * must be larger or equal to devinfo->model > + */ What does "larger than or equal to" mean for strings? Did you perhaps mean that devinfo->model must be a prefix of @model? > if (!memcmp(devinfo->vendor, vendor, > - sizeof(devinfo->vendor)) && > - !memcmp(devinfo->model, model, > - sizeof(devinfo->model))) > + sizeof(devinfo->vendor)) && > + !memcmp(devinfo->model, model, > + sizeof(devinfo->model))) > return devinfo; Is this a whitespace-only change? If so, please fold it in the previous patch. Thanks, Bart.