diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c index 0e75f152eac2fbae5fe6e8bcb44da1d1d8afdefa..9c64ae9e4c1a9f6545552504e0b1184fc646a1ea 100644 --- a/fs/dlm/lowcomms.c +++ b/fs/dlm/lowcomms.c @@ -1468,22 +1468,19 @@ static void work_stop(void) static int work_start(void) { - int error; recv_workqueue = alloc_workqueue("dlm_recv", WQ_MEM_RECLAIM | WQ_HIGHPRI | WQ_FREEZEABLE, 0); - error = IS_ERR(recv_workqueue); - if (error) { - log_print("can't start dlm_recv %d", error); - return error; + if (!recv_workqueue) { + log_print("can't start dlm_recv"); + return -ENOMEM; } send_workqueue = alloc_workqueue("dlm_send", WQ_MEM_RECLAIM | WQ_HIGHPRI | WQ_FREEZEABLE, 0); - error = IS_ERR(send_workqueue); - if (error) { - log_print("can't start dlm_send %d", error); + if (!send_workqueue) { + log_print("can't start dlm_send"); destroy_workqueue(recv_workqueue); - return error; + return -ENOMEM; } return 0;