core: Resolve memory leak for brick

Problem: Some functions are not freeing memory allocated by
         xdr_to_genric so it has become leak

Solution: Call free to avoid leak

Change-Id: I3524fe2831d1511d378a032f21467edae3850314
fixes: bz#1656682
Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
This commit is contained in:
Mohit Agrawal 2018-12-07 14:36:45 +05:30 committed by Amar Tumballi
parent 213f31bf9e
commit 98550952be
3 changed files with 12 additions and 1 deletions

View File

@ -282,6 +282,8 @@ glusterfs_handle_terminate(rpcsvc_request_t *req)
err:
if (!lockflag)
UNLOCK(&ctx->volfile_lock);
if (xlator_req.input.input_val)
free(xlator_req.input.input_val);
free(xlator_req.name);
xlator_req.name = NULL;
return 0;
@ -1030,6 +1032,8 @@ out:
GF_FREE(msg);
GF_FREE(filepath);
if (xlator_req.input.input_val)
free(xlator_req.input.input_val);
return ret;
}
@ -1250,6 +1254,7 @@ out:
if (output)
dict_unref(output);
free(brick_req.input.input_val);
free(brick_req.name);
GF_FREE(xname);
GF_FREE(msg);
GF_FREE(rsp.output.output_val);
@ -2117,7 +2122,8 @@ out:
GF_FREE(frame->local);
frame->local = NULL;
STACK_DESTROY(frame->root);
if (rsp.xdata.xdata_val)
free(rsp.xdata.xdata_val);
free(rsp.spec);
if (dict)

View File

@ -280,6 +280,8 @@ errx:
if (dict)
dict_unref(dict);
if (cli_req.dict.dict_val)
free(cli_req.dict.dict_val);
return ret;
}
@ -347,6 +349,7 @@ err:
rsp.op_errno = op_errno;
quotad_aggregator_lookup_cbk(this, frame, &rsp);
free(args.xdata.xdata_val);
return ret;
}

View File

@ -4255,6 +4255,7 @@ server3_3_release(rpcsvc_request_t *req)
ret = 0;
out:
free(args.xdata.xdata_val);
return ret;
}
@ -4302,6 +4303,7 @@ server3_3_releasedir(rpcsvc_request_t *req)
ret = 0;
out:
free(args.xdata.xdata_val);
return ret;
}