From: NeilBrown <neilb@suse.de>
To: Jes.Sorensen@redhat.com
Cc: linux-raid@vger.kernel.org, dledford@redhat.com
Subject: Re: [PATCH 00/19] More fixes for resource leaks and warnings
Date: Wed, 2 Nov 2011 11:25:30 +1100 [thread overview]
Message-ID: <20111102112530.2fd3cb7f@notabene.brown> (raw)
In-Reply-To: <1320160175-18976-1-git-send-email-Jes.Sorensen@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 2815 bytes --]
On Tue, 1 Nov 2011 16:09:16 +0100 Jes.Sorensen@redhat.com wrote:
> From: Jes Sorensen <Jes.Sorensen@redhat.com>
>
> Hi,
>
> Another 'small' pile of fixes for various resource leaks, null pointer
> dereferencing and out of bounds buffer access found by Coverity.
Thanks Jes.
I've applied all of these - using the second version of patch 19.
I'm not normally very fussed about freeing and closing things shortly before
the process is going to exit anyway, but I'm not against it. And some of
your patches were for other leaks.
>
> This is the bulk of these for now. Please notice that I haven't
> touched super-ddf.c at all, and that is probably the single biggest
> offender. Also note that I haven't addressed a number of warnings in
> sysfs.c where we know for sure that files aren't bigger than a given
> size. The tool obviously doesn't know this, so it spews warnings when
> we strcpy() content we just read. While the code per-ce is probably
> safe, we may want to switch to strncpy() just to reduce the noise
> ratio?
Maybe. I hate strncpy because it doesn't reliably nul-terminate but I'm
happy to make the code 'safer' as long as we avoid making it ugly.
Thanks,
NeilBrown
>
> Cheers,
> Jes
>
>
> Jes Sorensen (19):
> Grow_Add_device(): dev_open() return a negative fd on error
> Grow_addbitmap(): don't try to close a file descriptor which failed
> to open
> Incremental(): Check return value of dev_open() before trying to use
> it
> sysfs_unique_holder(): Check read() return value before using as
> buffer index
> remove_devices(): readlink returns -1 on error
> assemble_container_content(): fix memory leak
> Grow_restart(): free() offsets after use
> Assemble(): don't dup_super() before we need it.
> Detail(): Remember to free 'avail'
> Grow_reshape(): Fix another 'sra' leak
> enough_fd(): remember to free buffer for avail array
> Manage_subdevs(): avoid leaking super
> IncrementalScan(): Fix memory leak
> Managa_ro(): free() mdi before exiting
> Manage_runstop(): Avoid memory leak
> Monitor(): free allocated memory on exit
> bitmap_fd_read(): fix memory leak
> validate_geometry_imsm_volume(): Avoid NULL pointer dereference
> make_parts(): Avoid false positive security warning
>
> Assemble.c | 9 +++++++--
> Detail.c | 3 ++-
> Grow.c | 19 +++++++++++++------
> Incremental.c | 7 +++++++
> Manage.c | 56 ++++++++++++++++++++++++++++++++++++++++----------------
> Monitor.c | 6 ++++++
> bitmap.c | 3 +++
> mdopen.c | 14 +++++++-------
> super-intel.c | 4 +++-
> sysfs.c | 2 ++
> util.c | 9 +++++----
> 11 files changed, 95 insertions(+), 37 deletions(-)
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
next prev parent reply other threads:[~2011-11-02 0:25 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-01 15:09 [PATCH 00/19] More fixes for resource leaks and warnings Jes.Sorensen
2011-11-01 15:09 ` [PATCH 01/19] Grow_Add_device(): dev_open() return a negative fd on error Jes.Sorensen
2011-11-01 15:09 ` [PATCH 02/19] Grow_addbitmap(): don't try to close a file descriptor which failed to open Jes.Sorensen
2011-11-01 15:09 ` [PATCH 03/19] Incremental(): Check return value of dev_open() before trying to use it Jes.Sorensen
2011-11-01 15:09 ` [PATCH 04/19] sysfs_unique_holder(): Check read() return value before using as buffer index Jes.Sorensen
2011-11-01 15:09 ` [PATCH 05/19] remove_devices(): readlink returns -1 on error Jes.Sorensen
2011-11-01 15:09 ` [PATCH 06/19] assemble_container_content(): fix memory leak Jes.Sorensen
2011-11-01 15:09 ` [PATCH 07/19] Grow_restart(): free() offsets after use Jes.Sorensen
2011-11-01 15:09 ` [PATCH 08/19] Assemble(): don't dup_super() before we need it Jes.Sorensen
2011-11-01 15:09 ` [PATCH 09/19] Detail(): Remember to free 'avail' Jes.Sorensen
2011-11-01 15:09 ` [PATCH 10/19] Grow_reshape(): Fix another 'sra' leak Jes.Sorensen
2011-11-01 15:09 ` [PATCH 11/19] enough_fd(): remember to free buffer for avail array Jes.Sorensen
2011-11-01 15:09 ` [PATCH 12/19] Manage_subdevs(): avoid leaking super Jes.Sorensen
2011-11-01 15:09 ` [PATCH 13/19] IncrementalScan(): Fix memory leak Jes.Sorensen
2011-11-01 15:09 ` [PATCH 14/19] Managa_ro(): free() mdi before exiting Jes.Sorensen
2011-11-01 15:09 ` [PATCH 15/19] Manage_runstop(): Avoid memory leak Jes.Sorensen
2011-11-01 15:09 ` [PATCH 16/19] Monitor(): free allocated memory on exit Jes.Sorensen
2011-11-01 15:09 ` [PATCH 17/19] bitmap_fd_read(): fix memory leak Jes.Sorensen
2011-11-01 15:09 ` [PATCH 18/19] validate_geometry_imsm_volume(): Avoid NULL pointer dereference Jes.Sorensen
2011-11-01 15:09 ` [PATCH 19/19] make_parts(): Avoid false positive security warning Jes.Sorensen
2011-11-01 20:30 ` Jes Sorensen
2011-11-02 0:25 ` NeilBrown [this message]
2011-11-02 14:39 ` [PATCH 00/19] More fixes for resource leaks and warnings Jes Sorensen
2011-11-02 21:58 ` Doug Ledford
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20111102112530.2fd3cb7f@notabene.brown \
--to=neilb@suse.de \
--cc=Jes.Sorensen@redhat.com \
--cc=dledford@redhat.com \
--cc=linux-raid@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).