summary refs log tree commit diff stats
path: root/io/task.c
diff options
context:
space:
mode:
authorDaniel P. Berrange <berrange@redhat.com>2016-08-11 17:38:07 +0100
committerDaniel P. Berrange <berrange@redhat.com>2017-01-23 15:32:19 +0000
commit59de517d8d482416a079da7ee8344187d513d4a4 (patch)
treef24cf5539b7780c8a794bcba796cb2ab4e78c37f /io/task.c
parent60e705c51c66373f78e536e0462744a610c27cf6 (diff)
downloadfocaccia-qemu-59de517d8d482416a079da7ee8344187d513d4a4.tar.gz
focaccia-qemu-59de517d8d482416a079da7ee8344187d513d4a4.zip
io: remove Error parameter from QIOTask thread worker
Now that task objects have a directly associated error,
there's no need for an an Error **errp parameter to
the QIOTask thread worker function. It already has a
QIOTask object, so can directly set the error on it.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Diffstat (limited to 'io/task.c')
-rw-r--r--io/task.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/io/task.c b/io/task.c
index 42e1a75586..60bf1a94d5 100644
--- a/io/task.c
+++ b/io/task.c
@@ -77,8 +77,6 @@ struct QIOTaskThreadData {
     QIOTaskWorker worker;
     gpointer opaque;
     GDestroyNotify destroy;
-    Error *err;
-    int ret;
 };
 
 
@@ -87,9 +85,6 @@ static gboolean gio_task_thread_result(gpointer opaque)
     struct QIOTaskThreadData *data = opaque;
 
     trace_qio_task_thread_result(data->task);
-    if (data->err) {
-        qio_task_set_error(data->task, data->err);
-    }
     qio_task_complete(data->task);
 
     if (data->destroy) {
@@ -107,10 +102,7 @@ static gpointer qio_task_thread_worker(gpointer opaque)
     struct QIOTaskThreadData *data = opaque;
 
     trace_qio_task_thread_run(data->task);
-    data->ret = data->worker(data->task, &data->err, data->opaque);
-    if (data->ret < 0 && data->err == NULL) {
-        error_setg(&data->err, "Task worker failed but did not set an error");
-    }
+    data->worker(data->task, data->opaque);
 
     /* We're running in the background thread, and must only
      * ever report the task results in the main event loop