Details
-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Description
struct osp_update_request *osp_update_request_create(struct dt_device *dt)
{
struct osp_update_request *our;
OBD_ALLOC_PTR(our);
if (our == NULL)
return ERR_PTR(-ENOMEM);
INIT_LIST_HEAD(&our->our_req_list);
INIT_LIST_HEAD(&our->our_cb_items);
INIT_LIST_HEAD(&our->our_list);
osp_object_update_request_create(our, OUT_UPDATE_INIT_BUFFER_SIZE);
return our;
}
osp_update_request_create() doesn't check the return value of osp_object_update_request_create(), so it could return a 'our' without 'ours_request' attached if memory allocation failed in osp_object_update_request_create().
But all the callers of osp_update_request_create() assumes the 'our' must have 'ours_request' attached. See osp_insert_async_request() or osp_update_rpc_pack().
Attachments
Issue Links
- is related to
-
LU-6831 The ticket for tracking all DNE2 bugs
-
- Reopened
-