ceph: Always free allocated memory in osdmap_decode()

Always free memory allocated to 'pi' in
net/ceph/osdmap.c::osdmap_decode().

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Sage Weil <sage@newdream.net>
This commit is contained in:
Jesper Juhl 2010-12-24 23:01:12 +01:00 committed by Sage Weil
parent 582c86e690
commit b0aee3516d
1 changed files with 3 additions and 1 deletions

View File

@ -605,8 +605,10 @@ struct ceph_osdmap *osdmap_decode(void **p, void *end)
goto bad;
}
err = __decode_pool(p, end, pi);
if (err < 0)
if (err < 0) {
kfree(pi);
goto bad;
}
__insert_pg_pool(&map->pg_pools, pi);
}