[Spice-devel] [PATCH 15/18] Avoid to call munmap with invalid size

Frediano Ziglio fziglio at redhat.com
Tue Sep 27 13:48:30 UTC 2016


> 
> On Mon, Sep 26, 2016 at 09:12:48AM +0100, Frediano Ziglio wrote:
> > This could have happened if mremap failed.
> 
> If mremap fails, reds_stat  will be set to MAP_FAILED, so munmap will
> not be called.
> 
> Christophe
> 

You are right, dropped

Frediano

> > 
> > Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> > ---
> >  tools/reds_stat.c | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/tools/reds_stat.c b/tools/reds_stat.c
> > index 945659e..d7d82ec 100644
> > --- a/tools/reds_stat.c
> > +++ b/tools/reds_stat.c
> > @@ -66,7 +66,7 @@ int main(int argc, char **argv)
> >      pid_t kvm_pid;
> >      uint32_t num_of_nodes = 0;
> >      size_t shm_size;
> > -    size_t shm_old_size;
> > +    size_t shm_new_size;
> >      int shm_name_len;
> >      int ret = -1;
> >      int fd;
> > @@ -105,13 +105,13 @@ int main(int argc, char **argv)
> >          printf("spice statistics\n\n");
> >          if (num_of_nodes != reds_stat->num_of_nodes) {
> >              num_of_nodes = reds_stat->num_of_nodes;
> > -            shm_old_size = shm_size;
> > -            shm_size = sizeof(SpiceStat) + num_of_nodes *
> > sizeof(SpiceStatNode);
> > -            reds_stat = mremap(reds_stat, shm_old_size, shm_size,
> > MREMAP_MAYMOVE);
> > +            shm_new_size = sizeof(SpiceStat) + num_of_nodes *
> > sizeof(SpiceStatNode);
> > +            reds_stat = mremap(reds_stat, shm_size, shm_new_size,
> > MREMAP_MAYMOVE);
> >              if (reds_stat == (SpiceStat *)MAP_FAILED) {
> >                  perror("mremap");
> >                  goto error;
> >              }
> > +            shm_size = shm_new_size;
> >              values = (uint64_t *)realloc(values, num_of_nodes *
> >              sizeof(uint64_t));
> >              if (values == NULL) {
> >                  perror("realloc");
> > --
> > 2.7.4
> > 
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel
> 


More information about the Spice-devel mailing list