b=18213 Handle the signal to avoid process hang.
Previous patch may cause a memleak. And also release the request when
ldlm_cli_enqueue() failed.
Signed-off-by: Yang Sheng <ys@whamcloud.com>
Change-Id: I1c22e2b2027f61af257ce031cfb7b6cbe08b8141
Reviewed-on: http://review.whamcloud.com/457
Tested-by: Hudson
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
RETURN(-ENOMEM);
rc = mdc_enter_request(&obddev->u.cli);
- if (rc)
+ if (rc) {
+ ptlrpc_req_finished(req);
RETURN(rc);
+ }
rc = ldlm_cli_enqueue(exp, &req, einfo, res_id, &policy, &flags, NULL,
0, NULL, &minfo->mi_lockh, 1);
if (rc < 0) {
mdc_exit_request(&obddev->u.cli);
+ ptlrpc_req_finished(req);
RETURN(rc);
}