mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-25 18:59:33 +03:00
Fix memory leak in zvol_set_volsize()
Move kmem_free() so it's called for every error path: this is preferred over making `dmu_object_info_t doi` local to accommodate older kernels with limited stacks. Reviewed by: Boris Protopopov <bprotopopov@hotmail.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes #6177
This commit is contained in:
parent
434c76ca91
commit
3f7d0418dc
@ -419,11 +419,12 @@ zvol_set_volsize(const char *name, uint64_t volsize)
|
||||
goto out;
|
||||
|
||||
error = zvol_update_volsize(volsize, os);
|
||||
kmem_free(doi, sizeof (dmu_object_info_t));
|
||||
|
||||
if (error == 0 && zv != NULL)
|
||||
error = zvol_update_live_volsize(zv, volsize);
|
||||
out:
|
||||
kmem_free(doi, sizeof (dmu_object_info_t));
|
||||
|
||||
if (owned) {
|
||||
dmu_objset_disown(os, FTAG);
|
||||
if (zv != NULL)
|
||||
|
Loading…
Reference in New Issue
Block a user