Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S943349AbcJaOLJ (ORCPT ); Mon, 31 Oct 2016 10:11:09 -0400 Received: from mail-db5eur01on0107.outbound.protection.outlook.com ([104.47.2.107]:60523 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933235AbcJaOLH (ORCPT ); Mon, 31 Oct 2016 10:11:07 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peda@axentia.se; Subject: Re: [PATCHv6 08/11] i2c: match vendorless strings on the internal string length To: Lee Jones , Kieran Bingham References: <1477413715-22894-1-git-send-email-kieran@bingham.xyz> <1477413715-22894-9-git-send-email-kieran@bingham.xyz> <20161026085316.GK8574@dell> CC: Wolfram Sang , , , Javier Martinez Canillas , From: Peter Rosin Organization: Axentia Technologies AB Message-ID: Date: Mon, 31 Oct 2016 14:55:43 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: <20161026085316.GK8574@dell> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [217.210.101.82] X-ClientProxiedBy: DB6PR0701CA0032.eurprd07.prod.outlook.com (10.168.7.170) To VI1PR0201MB2320.eurprd02.prod.outlook.com (10.168.63.22) X-MS-Office365-Filtering-Correlation-Id: b9fd95ef-6a70-4880-9840-08d401959f37 X-Microsoft-Exchange-Diagnostics: 1;VI1PR0201MB2320;2:GtBcU14yJUhZS6Qvae8VxCaChUwVLIEKrRR1SWm7F9mjxO7ZcY1Wtxxf8BH1nLgvMzouhCp08nJX03tPqqv2gVYApdUiNdkW176JpEURVeBSAxBpptuyiGVANgmWnDE6agnqAepEI5mQZrOkuzYXdaY5BaSYP1sQg9RqxNLVy9eCorgWMj0c60wfLHkUyM4J0WCBQNWVJ6LWnM+94IBEKQ==;3:sebS2XBKjguyQFTXRIEJ5LRnRFarowBctxcVI4/8rPffw8nADOZWPkhVR0qj3If5HPgKH+JWiq6z0g+WT5WWBhNjkghnzl+iQ/IOE88FLaTyD/MNo89zU87Hh8Z7AxUk7LHfLezvw56kip/ODsMVUQ==;25:vSR3+1KvxS4ESPtcnY+nqQ14MzMlZn41G1W3Bw4azX4it8vy+k1qE859Phba3EL+hAxXRRihTQzoV1mJcrPswBL8Yna80s3SsOTzBwrlb0fWkwI/roXnN0K/1FMH4kHfwVx3cmdUa98Yv2HEK/WmJ8AFPFv3DpvmNv40e+K+yTOIg2iQaaPHlUbWL3HWjdpJOkHc+/s8NfwSpZSZs3epbu+oUPOaQkkMUYd9DEQmClEtcC9EA80DVKOs9QiNFjudYbNiGg7lGguM1M3UHTdEAGA6vzv+bS7YXIgDispgSyjDWwoVk4ze0opPyqWE548a0/pSbIywVvvRpWWtUlIBbWI7ehN6y/s86yozKp2+gwiJTyA0xLMZov33JYfP3Sg1szwxmC9lBv9WOM/CGQqneWInSpZhUSiYbqZXZlZBpinNmHFFjYqwTtDPopqcAJb3 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0201MB2320; X-Microsoft-Exchange-Diagnostics: 1;VI1PR0201MB2320;31:S5fHY2LzZYWopuArFVBGQYRe/X96vFPHIeRDwdW1bGx/XQQruVxeHNUN+M8V/qLwyBgQ+/2bOz/RqpUL6BCjOHey+yciCcrrorOQ7lRDECTVe6TsarH6Iim3vfmfWMh+OeGZJM1xpn+3O1tXJNdy+n5wLfOSLADmsG5OxlZwYrpEg95WgOlzjUO8csN6GIyH6xDifaAqljaJkgR1r0zO/hvzUWimXGyCF5dOTxUh6gBsYsZV4LUD3/GCiHeCvNDp;4:KXbVElr5SDa9quPwLqbQBJgNa5HKfsUoITJvcsz4TfVDoir5zgPMvkMt8Bp7TT55N9mkJg+IsB1n0ezLoc5qeL2JlBPuTjDzlDG5AxznGHrs2bWoJX6KeqSMLQlqHrmsdtYDAaWosX3EnvZ/bhsApZl0NAdu0bn/4EQJLdYfF6DChgb41VuX52hBsKFJBs5r9Ed3L0H/Xu0XIhhdNdcQyuLboec+RiShTGhDq4zU+F1KMu3hOI1TOsVmQNfoaUlHjlc/idgInWrLybSGqBXOsiv/8AB0rBFo4QctuVti0rpjyOpgmQqLkpU2R7GvXdsHCAWIuTSMhz9E476botQ/M7aeOhLTPOB0XicIuslznfdebrEtJKQlHu3eLDFX0ActYUqWELvjMlHzTg1nr3eslwlgaIiRSxcHiv4lI3cS7FruhP25Rzfl/Xex+9jjbI79 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6042046)(6043046);SRVR:VI1PR0201MB2320;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0201MB2320; X-Forefront-PRVS: 01128BA907 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(7916002)(189002)(377424004)(199003)(24454002)(97736004)(189998001)(5001770100001)(2950100002)(74482002)(5660300001)(586003)(6666003)(65826007)(4001150100001)(77096005)(4001350100001)(64126003)(2906002)(230700001)(305945005)(8676002)(92566002)(81156014)(50466002)(66066001)(106356001)(47776003)(65806001)(65956001)(7736002)(105586002)(81166006)(83506001)(7846002)(23676002)(6116002)(3846002)(86362001)(36756003)(42186005)(4326007)(19580405001)(31696002)(33646002)(31686004)(19580395003)(50986999)(54356999)(68736007)(117156001)(76176999)(101416001)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR0201MB2320;H:[192.168.0.125];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtWSTFQUjAyMDFNQjIzMjA7MjM6ejliY25MRHJTOTc2N0FvODc3NTAycVdY?= =?utf-8?B?S2FubXFUZjBwdWthNmprTEYranlENzFNMkVINFJudjVuV0RtbzU5M243eXlG?= =?utf-8?B?djFZKzVEdXVmVjAySWIwMkFQYWNwVlVTWVRuQ2lPbTVheWNIYWt1dHQzM3k4?= =?utf-8?B?blliNjd0LzVoSjUyblBOQkJOTnNCRHZNaEQ3NjZGQWdrMkI0VlRXK2grMEhX?= =?utf-8?B?ZEhOcnJDWU1GWGJrUWVnZ0phL3lWZTZXNm5XMVRYYlJzU3dJRUVkWnVRengr?= =?utf-8?B?SGtuUWpENE1Udk9hWXlNczNuYVB2MmhQVU1Wa3M3UEN2WllyQUtVTGtpclFX?= =?utf-8?B?NVV4dCszcTlFYTNDek1UVzhNZGNXcGI0bHFYanVxWlNRZWxVczkyTFFMYWlS?= =?utf-8?B?Z2phMTg3T0wxSGN4SDFsQkY4ODIyNFJBTGUzQzU4TnBTLzBubGFpdjBvWnI5?= =?utf-8?B?c2J3bW9adStzQWJvUGN3Rlo0d21mOUhiUis1QWNqKzJCaE90SzJkdktjSGI4?= =?utf-8?B?RHQ2V2Y2TTRodGdXYjRZQWc2N1dTQlA2YlNQNFNOM05VUm4vU1FTdjUyRlkz?= =?utf-8?B?elcrVXU5T3ZOcE55dTlsRWp4VStxbzhrOWNwYmY3SDk2SU4walFXdktpZVpE?= =?utf-8?B?TExzeUxWdWVLN1lhOWlnZXNWWHhKOGtlVms5K1NvdnBKb0pBaVQ0UHZrbTQ2?= =?utf-8?B?cHMvZ2VEaTU5cW5aSmdjSU1Gd2R5d25HNm4venVISS9vL1Ezc3ZWbkFDdHhG?= =?utf-8?B?V1pzUTlUMXY1VU80K2FVcFZMa25FVERDQk9HTU5EWkxGeUFncGxqWi9RNlcr?= =?utf-8?B?VDVFU1hoK2R2OTRBTkZPenZyMFJJb0lhSi8yc0VrSFBnam9WZEVVNnNBOVJB?= =?utf-8?B?UTBURVFLSFdnZ29la1BVaXRneVI3ajNPZ215NmgwWnNYT0YvV1RvRnAyenRt?= =?utf-8?B?N1RsZXorbVpwUW14N0ZQY3NtVTFCZUt1VkwwTUNtTUorRzVaTk4ranVaaWZM?= =?utf-8?B?cU56TXo5VzhvTFB2aVl5WFdycmV2bm12SDZQdkxoM1Ztdmp6TnFKOVp5M2Rk?= =?utf-8?B?YTlaSC93bzk3d0RueDc0WWhjZlhRMlhNbWI0eXVlaWRQSTVXaXFUQWFpWGlj?= =?utf-8?B?S2RHcHdHQ25aSXZJeHpkbmZKYWp1OC9WQUI4Z1lodEVtZWxhSWFVVnNQNkNt?= =?utf-8?B?YWI3R0xDdXlzWmkyc0llNlJodnpGL3FaV044eVdzdzBaa20rRVhHN3RCOUls?= =?utf-8?B?ZjFiTUltNWFFbHA2SmpxR1ZHSmFIdWRFT3pUOUh5SERzYlhqNFpZUVVyTVl0?= =?utf-8?B?UG5EbXhPRk1oM25LTWpBRk5lYzRkTk9JS1c1aTVpTnN6NndZNFo2UXlDa2hX?= =?utf-8?B?a2N0Y2M1Z01VVFlrb1BTUXJtNG5zSFNLQndIU1o1czMzNHRJWmVwUGZacUFH?= =?utf-8?B?dWlyR2E5UkxvK0Rmd0JpQWpCd1JJbmZpeU1oWHFpaHB1ZURTMGYyV2tBS3RB?= =?utf-8?B?d0dnOWNxZHNZVnEwNDYrUTZxSnh5OWM5K3pRQXBvYWx5Mi9Cakp4YjFWdUI5?= =?utf-8?B?WDhoMDFIMm42aThTdDVMeWpWR3F4YWJrSG45RnU4QWhlRnpzVnVtVVZSMkNr?= =?utf-8?B?eTRYbmRHMkdLcFp6V09IaU9UM1FyNnM5VHlzcFJLNkkwZFRKWUZ0RFc2WlZl?= =?utf-8?B?V3duajBMejZtOXVTSXFyT3dXQU5rZmhNUTFzNDM1UkFWNVlkUmFUc2MyOHNS?= =?utf-8?B?TXJDdEM3Sm9ReXMxZW9hQ3c5MUtWVHNjMDJOT25KYlcvTzdSeHo0MitubkFj?= =?utf-8?B?c2loSFVEaUdybjNWYVFMVzIxdHdicnlxcGVQSmhMdHR0dkJXeFUzeE9LUkVN?= =?utf-8?Q?+XYRM/ls3QN5Y=3D?= X-Microsoft-Exchange-Diagnostics: 1;VI1PR0201MB2320;6:hcdRAOmYmJJBu3iNclBpVNJWVn3UVmIG+SujIt9PJdpRoYwzwt/CLNr2ixeylk9B3MqT1pFXoaVmzL+vDD4GeDpe/12fxDgE/MA2NTYM7jgfvNRE5xJ4WsceTAkD76GDLW30iXBzKxlBU52XYBwGQkPFP7NGulkNGgL3+OIJdTVduQnhW2w49vYBVXsidVAQYqlviaTxQYwQq/qCLbtQah9KUop7lH9DX0QRFkWXBniBDo4kMX0jrglTBLf8b7LciSlMpbTY/9MO0nNKRZ899ej/bckGmDaC0WCewaRMovo663zQj8ez0WtQsOs/dzdLIbJscloCMR8+wk/VaNIfUQ==;5:uay2WtZCI9BVGN3jb+hrizLWW0+Wny0L/XjMf929XEJHeRMbLVh6ig9HQ0E6t/4wb+qe9KXg8PcAjtDFn57DTk6Zmt1+oXDzrdpmV8Vldf/LxCgof4vsw5FihwhPVzARynWbdK5MhSsIPBNwA8o308sgs24CG6Mqaks/Nv5eY08=;24:3NIlnM6Efalc2tfEyXX/hzOvtPUM79YbBrmp4xxhh0mxz6Q+yskRoDijn/VhLXgGd+KDDkJVCYIqPcsVLzsDD2fUWxPOpofNqJ1vfD+0T5c= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR0201MB2320;7:pY2+UHjU2/xgfQSJi4yJ6Ll2hjHFs5iODEMZ1xqQ4mYDSnnmV+FdVidtLRoF7BuJqOvipY39wTck0C27p7RTOChGlMB5ap/4WAeLmY99c1AHppqwXeqB2OZC516C/GD07qUt3qe3uPaMPptPYc2GTvzyjxbS4QkUh3RgpvIqeKzvEmKlULkFYHGZeQNUHmG8sLVe4OUxE9gylPsjHiULjETdBJVWLCj83sShISN4vmnqUxyzqpJxEAayN/N6aShJ09Jj9YwlkjYGs33VZRrZ+KouevuEajqwbSBHBa43WCKnRWTjmWzZtiveRSLXpE37zwCEviOQjKY+JBVEgn2zmbsohJSyPG0sXGrbnAdZETY= X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Oct 2016 13:55:48.7828 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0201MB2320 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1220 Lines: 45 On 2016-10-26 10:53, Lee Jones wrote: > On Tue, 25 Oct 2016, Kieran Bingham wrote: > >> If a user provides a shortened string to match a device to the sysfs i2c >> interface it will match on the first string that contains that string >> prefix. >> >> for example: >> echo a 0x68 > /sys/bus/i2c/devices/i2c-2/new_device >> >> will match as3711, as3722, and ak8975 incorrectly. >> >> Signed-off-by: Kieran Bingham > > Acked-by: Lee Jones > >> --- >> drivers/i2c/i2c-core.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c >> index 01bce56f733a..50c9cfdb87b7 100644 >> --- a/drivers/i2c/i2c-core.c >> +++ b/drivers/i2c/i2c-core.c >> @@ -1708,7 +1708,7 @@ i2c_of_match_device_strip_vendor(const struct of_device_id *matches, >> else >> name++; >> >> - if (!strncasecmp(client->name, name, strlen(client->name))) >> + if (!strncasecmp(client->name, name, strlen(name))) >> return matches; >> } >> > Is that really so much better? With this patch echo as3711CRAP 0x68 > /sys/... will match as3711. What if there is some as37112 driver that is the real target? Cheers, Peter