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:   Sun, 9 Jul 2017 22:52:51 +0300
From:   Sakari Ailus <sakari.ailus@....fi>
To:     hari prasath <gehariprasath@...il.com>
Cc:     mchehab@...nel.org,
        "gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
        Alan Cox <alan@...ux.intel.com>, rvarsha016@...il.com,
        Julia Lawall <julia.lawall@...6.fr>,
        SIMRAN SINGHAL <singhalsimran0@...il.com>,
        linux-media@...r.kernel.org, devel@...verdev.osuosl.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] staging: atomisp: use kstrdup to replace kmalloc and
 memcpy

On Sun, Jul 09, 2017 at 05:56:15PM +0530, hari prasath wrote:
> On 8 July 2017 at 16:31, Sakari Ailus <sakari.ailus@....fi> wrote:
> > Hi Hari,
> >
> > On Fri, Jul 07, 2017 at 08:15:21PM +0530, Hari Prasath wrote:
> >> kstrdup kernel primitive can be used to replace kmalloc followed by
> >> string copy. This was reported by coccinelle tool
> >>
> >> Signed-off-by: Hari Prasath <gehariprasath@...il.com>
> >> ---
> >>  .../media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c       | 10 +++-------
> >>  1 file changed, 3 insertions(+), 7 deletions(-)
> >>
> >> diff --git a/drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c b/drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c
> >> index 34cc56f..68db87b 100644
> >> --- a/drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c
> >> +++ b/drivers/staging/media/atomisp/pci/atomisp2/css2400/sh_css_firmware.c
> >> @@ -144,14 +144,10 @@ sh_css_load_blob_info(const char *fw, const struct ia_css_fw_info *bi, struct ia
> >>       )
> >>       {
> >>               char *namebuffer;
> >> -             int namelength = (int)strlen(name);
> >> -
> >> -             namebuffer = (char *) kmalloc(namelength + 1, GFP_KERNEL);
> >> -             if (namebuffer == NULL)
> >> -                     return IA_CSS_ERR_CANNOT_ALLOCATE_MEMORY;
> >> -
> >> -             memcpy(namebuffer, name, namelength + 1);
> >>
> >> +             namebuffer = kstrdup(name, GFP_KERNEL);
> >> +             if (!namebuffer)
> >> +                     return -ENOMEM;
> >
> > The patch also changes the return value in error cases. I believe the
> > caller(s) expect to get errors in the IA_CCS_ERR_* range.
> 
> Hi,
> 
> In this particular case, the calling function just checks if it's not
> success defined by a enum. I think returning -ENOMEM would not effect,
> at least in this case.

It might not, but the function now returns both negative Posix and positive
CSS error codes. The CSS error codes could well be converted to Posix but
it should be done consistently and preferrably in a separate patch.

-- 
Sakari Ailus
e-mail: sakari.ailus@....fi	XMPP: sailus@...iisi.org.uk

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ