vhost: return task creation error instead of NULL
[ Upstream commit cb380909ae3b1ebf14d6a455a4f92d7916d790cb ] Lets callers distinguish why the vhost task creation failed. No one currently cares why it failed, so no real runtime change from this patch, but that will not be the case for long. Signed-off-by: Keith Busch <kbusch@kernel.org> Message-ID: <20250227230631.303431-2-kbusch@meta.com> Reviewed-by: Mike Christie <michael.christie@oracle.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
7184e99610
commit
061ea46c56
@@ -7589,7 +7589,7 @@ static void kvm_mmu_start_lpage_recovery(struct once *once)
|
||||
kvm_nx_huge_page_recovery_worker_kill,
|
||||
kvm, "kvm-nx-lpage-recovery");
|
||||
|
||||
if (!nx_thread)
|
||||
if (IS_ERR(nx_thread))
|
||||
return;
|
||||
|
||||
vhost_task_start(nx_thread);
|
||||
|
||||
@@ -666,7 +666,7 @@ static struct vhost_worker *vhost_worker_create(struct vhost_dev *dev)
|
||||
|
||||
vtsk = vhost_task_create(vhost_run_work_list, vhost_worker_killed,
|
||||
worker, name);
|
||||
if (!vtsk)
|
||||
if (IS_ERR(vtsk))
|
||||
goto free_worker;
|
||||
|
||||
mutex_init(&worker->mutex);
|
||||
|
||||
+2
-2
@@ -133,7 +133,7 @@ struct vhost_task *vhost_task_create(bool (*fn)(void *),
|
||||
|
||||
vtsk = kzalloc(sizeof(*vtsk), GFP_KERNEL);
|
||||
if (!vtsk)
|
||||
return NULL;
|
||||
return ERR_PTR(-ENOMEM);
|
||||
init_completion(&vtsk->exited);
|
||||
mutex_init(&vtsk->exit_mutex);
|
||||
vtsk->data = arg;
|
||||
@@ -145,7 +145,7 @@ struct vhost_task *vhost_task_create(bool (*fn)(void *),
|
||||
tsk = copy_process(NULL, 0, NUMA_NO_NODE, &args);
|
||||
if (IS_ERR(tsk)) {
|
||||
kfree(vtsk);
|
||||
return NULL;
|
||||
return ERR_PTR(PTR_ERR(tsk));
|
||||
}
|
||||
|
||||
vtsk->task = tsk;
|
||||
|
||||
Reference in New Issue
Block a user