gvt_dbg_el("workload %p emulate schedule_in %d\n", workload,
                        emulate_schedule_in);
 
-       queue_workload(workload);
+       intel_vgpu_queue_workload(workload);
        return 0;
 }
 
 
 
        return workload;
 }
+
+/**
+ * intel_vgpu_queue_workload - Qeue a vGPU workload
+ * @workload: the workload to queue in
+ */
+void intel_vgpu_queue_workload(struct intel_vgpu_workload *workload)
+{
+       list_add_tail(&workload->list,
+               workload_q_head(workload->vgpu, workload->ring_id));
+       wake_up(&workload->vgpu->gvt->scheduler.waitq[workload->ring_id]);
+}
 
 #define workload_q_head(vgpu, ring_id) \
        (&(vgpu->submission.workload_q_head[ring_id]))
 
-#define queue_workload(workload) do { \
-       list_add_tail(&workload->list, \
-       workload_q_head(workload->vgpu, workload->ring_id)); \
-       wake_up(&workload->vgpu->gvt-> \
-       scheduler.waitq[workload->ring_id]); \
-} while (0)
+void intel_vgpu_queue_workload(struct intel_vgpu_workload *workload);
 
 int intel_gvt_init_workload_scheduler(struct intel_gvt *gvt);