From patchwork Fri Sep 23 19:44:32 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 674183 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3sgkN82Nt8z9stY for ; Sat, 24 Sep 2016 05:44:56 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1033024AbcIWToj (ORCPT ); Fri, 23 Sep 2016 15:44:39 -0400 Received: from mout.web.de ([212.227.17.12]:63990 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1032115AbcIWToi (ORCPT ); Fri, 23 Sep 2016 15:44:38 -0400 Received: from [192.168.1.2] ([77.182.222.137]) by smtp.web.de (mrweb103) with ESMTPSA (Nemesis) id 0MhleR-1bagNe0ECp-00Mpfw; Fri, 23 Sep 2016 21:44:33 +0200 Subject: [PATCH 1/4] i2c-dev: Use kmalloc_array() in i2cdev_ioctl_rdwr() To: linux-i2c@vger.kernel.org, Wolfram Sang References: <566ABCD9.1060404@users.sourceforge.net> Cc: LKML , kernel-janitors@vger.kernel.org, Julia Lawall From: SF Markus Elfring Message-ID: Date: Fri, 23 Sep 2016 21:44:32 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: X-Provags-ID: V03:K0:X0LwB2jmSmLA3nGjLTiTZG4ZHFG+OohU2L2WWxUxnCLYrNo3pdO 7QgbaTFZwGfLziMXkjA6t5L9VR8l29A3/1bPMQ3uUWx8a7WEePSFc8Uejxg4ZNL0nRP5U8b cWBfPFwWYgCpsx7k/6ajJVW8/lS2AWm38Z9wFj3blgRPsK62IFKfRCGqbg+5FBJlG8xcRCF OzpEaROo78+G48CPahcww== X-UI-Out-Filterresults: notjunk:1; V01:K0:FMh6FLpdV/0=:3U8wU+Lz4YHMC1wddN+A0l uwQJgbipv/EDxtH2cREkJBf2IDmrriHXN4wY0QiHSmSjLqgl5FrKariW78IeK6ggp0kL5Qbv9 S1F/xQewm5CidC8G1F62dz33uIjr8JRhQKNIpp8t9XChGGDmkVLrvClMku5R1kyyzbCJ9IZNp opBu0J91unTki/0X3OhzP72d2cvKTPC1vkR7lDHMHERM8PAkiRg3DBCbx1mEPyNVnB+V6rkUm qlrOq65BmAZ62wkikcNiy2RyTo2gfpvUGWOtrt/uNYsqx0kpCRfj+5tnoAg4ko8S1h8DiqjR3 m3Vy0CRcQiuhleh1xwAmtWJf64Bi8PC2Ru5KMv9A9DdjJvolcCUYggPnEK7K+BTGM5gbOYs8F nyJ1eUV9UZna5dI5EdjdnVLpZz66OM7lFcvHb7m6yjgnVPILuJNM6faB3vAasxExX2h5GX9Mb ZAYuYEaqHdCQyshFOcdf37LHzwPDcIlZb+NdXMAuOZyz+qs50k3fmVjLREIBakk3MkN/VJwim ipdBGlF2rBJ9vAictvmRmPZqzA7+epXTBk7kMi1fKge4lSs0bjUBP08Iw9NNdqClhPvBdENia s3xdApTVg6aJ+OdwXerOCmwKFB0PwBUf0gK6E66Bc/Ek4KYcjsBqQDDb3glnMmB9givH6lenO 0ifqeEMsKTt3Rw8DrA3vIEI5BBBRsvn8T6ivrQllYL5vC6n+DmE0OlNF0q4WHST+rxo4qH9Ju 5wkLwXBdtv36bmOABaUwsBFRX72A8tUdFdQc/vhlvCxvztbRwgJJwLoN2/imJ3K2gBkDtm8ZZ p8oxaAO Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org From: Markus Elfring Date: Fri, 23 Sep 2016 20:30:07 +0200 * A multiplication for the size determination of a memory allocation indicated that an array data structure should be processed. Thus use the corresponding function "kmalloc_array". This issue was detected by using the Coccinelle software. * Replace the specification of a data type by a pointer dereference to make the corresponding size determination a bit safer according to the Linux coding style convention. Signed-off-by: Markus Elfring --- drivers/i2c/i2c-dev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/i2c/i2c-dev.c b/drivers/i2c/i2c-dev.c index 66f323f..6d8226d 100644 --- a/drivers/i2c/i2c-dev.c +++ b/drivers/i2c/i2c-dev.c @@ -260,7 +260,9 @@ static noinline int i2cdev_ioctl_rdwr(struct i2c_client *client, if (IS_ERR(rdwr_pa)) return PTR_ERR(rdwr_pa); - data_ptrs = kmalloc(rdwr_arg.nmsgs * sizeof(u8 __user *), GFP_KERNEL); + data_ptrs = kmalloc_array(rdwr_arg.nmsgs, + sizeof(*data_ptrs), + GFP_KERNEL); if (data_ptrs == NULL) { kfree(rdwr_pa); return -ENOMEM;