Error path in xc_dom_load_hvm_kernel needs to use the 'error' label instead
of directly returning. This is needed so the entries local variable is
freed.
Coverity-ID:
1351227
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
if ( rc < 0 )
{
DOMPRINTF("%s: failed to load elf binary", __func__);
- return rc;
+ goto error;
}
munmap(elf->dest_base, elf->dest_size);
if ( rc != 0 )
{
DOMPRINTF("%s: insufficient space to load modules.", __func__);
- return rc;
+ goto error;
}
rc = loadmodules(dom, m_start, m_end, dom->guest_domid);
if ( rc != 0 )
{
DOMPRINTF("%s: unable to load modules.", __func__);
- return rc;
+ goto error;
}
dom->parms.phys_entry = elf_uval(elf, elf->ehdr, e_entry);