Messages in this thread | | | Date | Mon, 08 Oct 2012 14:34:55 -0600 | From | David Ahern <> | Subject | Re: [PATCH 07/12] perf kvm: handle realloc failures |
| |
On 10/8/12 2:19 PM, Arnaldo Carvalho de Melo wrote: > Em Mon, Oct 08, 2012 at 11:17:31AM -0600, David Ahern escreveu: >> Save previous pointer and free on failure. > > <SNIP> > >> + prev = event->vcpu; >> event->vcpu = realloc(event->vcpu, >> event->max_vcpu * sizeof(*event->vcpu)); >> if (!event->vcpu) { >> + free(prev); >> pr_err("Not enough memory\n"); > > Unfamiliar way of doing it, usually we do it like: > > vcpu = realloc(event->vcpu, event->max_vcpu * sizeof(*event->vcpu)); > > if (!vcpu) { > pr_err("Not enough memory\n"); > return -1; > } > > event->vcpu = vcpu; > > I.e. we don't trow away the old value of event->vcpu.
right. Command is going to exit on a failure, so leaving the old value does not have any impact. I can leave the old if you want it for consistency.
David
| |