lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 25 Oct 2016 07:51:51 +0200 (CEST)
From:   Julia Lawall <julia.lawall@...6.fr>
To:     Mauro Carvalho Chehab <mchehab@...pensource.com>
cc:     Andrey Utkin <andrey_utkin@...tmail.com>,
        SF Markus Elfring <elfring@...rs.sourceforge.net>,
        linux-media@...r.kernel.org, Hans Verkuil <hans.verkuil@...co.com>,
        Laurent Pinchart <laurent.pinchart@...asonboard.com>,
        Mauro Carvalho Chehab <mchehab@...nel.org>,
        Rafael Lourenço de Lima Chehab 
        <chehabrafael@...il.com>, Shuah Khan <shuah@...nel.org>,
        Wolfram Sang <wsa-dev@...g-engineering.com>,
        LKML <linux-kernel@...r.kernel.org>,
        kernel-janitors@...r.kernel.org
Subject: Re: [PATCH 1/3] [media] au0828-video: Use kcalloc() in
 au0828_init_isoc()



On Mon, 24 Oct 2016, Mauro Carvalho Chehab wrote:

> Em Mon, 24 Oct 2016 23:28:44 +0100
> Andrey Utkin <andrey_utkin@...tmail.com> escreveu:
>
> > On Mon, Oct 24, 2016 at 10:59:24PM +0200, SF Markus Elfring wrote:
> > > From: Markus Elfring <elfring@...rs.sourceforge.net>
> > > Date: Mon, 24 Oct 2016 22:08:47 +0200
> > >
> > > * Multiplications for the size determination of memory allocations
> > >   indicated that array data structures should be processed.
> > >   Thus use the corresponding function "kcalloc".
> > >
> > >   This issue was detected by using the Coccinelle software.
> > >
> > > * Replace the specification of data types by pointer dereferences
> > >   to make the corresponding size determination a bit safer according to
> > >   the Linux coding style convention.
> > >
> > > Signed-off-by: Markus Elfring <elfring@...rs.sourceforge.net>
> > > ---
> > >  drivers/media/usb/au0828/au0828-video.c | 11 +++++++----
> > >  1 file changed, 7 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/drivers/media/usb/au0828/au0828-video.c b/drivers/media/usb/au0828/au0828-video.c
> > > index 85dd9a8..85b13c1 100644
> > > --- a/drivers/media/usb/au0828/au0828-video.c
> > > +++ b/drivers/media/usb/au0828/au0828-video.c
> > > @@ -221,15 +221,18 @@ static int au0828_init_isoc(struct au0828_dev *dev, int max_packets,
> > >
> > >  	dev->isoc_ctl.isoc_copy = isoc_copy;
> > >  	dev->isoc_ctl.num_bufs = num_bufs;
> > > -
> >
> > > -	dev->isoc_ctl.urb = kzalloc(sizeof(void *)*num_bufs,  GFP_KERNEL);
> > > +	dev->isoc_ctl.urb = kcalloc(num_bufs,
> > > +				    sizeof(*dev->isoc_ctl.urb),
> > > +				    GFP_KERNEL);
> >
> > What about this (for both hunks)?
> >
> > -	dev->isoc_ctl.urb = kzalloc(sizeof(void *)*num_bufs,  GFP_KERNEL);
> > +	dev->isoc_ctl.urb =
> > +		kcalloc(num_bufs, sizeof(*dev->isoc_ctl.urb), GFP_KERNEL);
>
>
> That's worse :)
>
> The usual Kernel style is:
>
> 		var = foo(bar1,
> 		          bar2,
> 		          bar3);

Isn't it more like

var = foo(bar1, bar2,
          bar3)

Otherwise, Markus is going to send millions of patches to put every
function argument on its own line...

julia

>
> instead of something like:
>
> 		var =
> 		    foo(bar1,
> 			bar2,
> 			bar3);
>
> The places where it is different than that is because people ran
> ./scripts/Lindent to try to follow the Kernel coding style.
>
> On my experiences, at the end, using it caused more harm than
> good, IMHO, and cause very weird indentation on lines with
> more than 80 columns like the above.
>
> Thanks,
> Mauro
> --
> To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ