scheduler.h (ca797d29cd63e7b71b4eea29aff3b1cefd1ecb59) scheduler.h (59a716c6477c2a095adf274e8f76b9889af7bc7b)
1/*
2 * Copyright(c) 2011-2016 Intel Corporation. All rights reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the

--- 111 unchanged lines hidden (view full) ---

120 u32 *bb_start_cmd_va;
121 unsigned int clflush;
122 bool accessing;
123};
124
125#define workload_q_head(vgpu, ring_id) \
126 (&(vgpu->submission.workload_q_head[ring_id]))
127
1/*
2 * Copyright(c) 2011-2016 Intel Corporation. All rights reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the

--- 111 unchanged lines hidden (view full) ---

120 u32 *bb_start_cmd_va;
121 unsigned int clflush;
122 bool accessing;
123};
124
125#define workload_q_head(vgpu, ring_id) \
126 (&(vgpu->submission.workload_q_head[ring_id]))
127
128#define queue_workload(workload) do { \
129 list_add_tail(&workload->list, \
130 workload_q_head(workload->vgpu, workload->ring_id)); \
131 wake_up(&workload->vgpu->gvt-> \
132 scheduler.waitq[workload->ring_id]); \
133} while (0)
128void intel_vgpu_queue_workload(struct intel_vgpu_workload *workload);
134
135int intel_gvt_init_workload_scheduler(struct intel_gvt *gvt);
136
137void intel_gvt_clean_workload_scheduler(struct intel_gvt *gvt);
138
139void intel_gvt_wait_vgpu_idle(struct intel_vgpu *vgpu);
140
141int intel_vgpu_setup_submission(struct intel_vgpu *vgpu);

--- 19 unchanged lines hidden ---
129
130int intel_gvt_init_workload_scheduler(struct intel_gvt *gvt);
131
132void intel_gvt_clean_workload_scheduler(struct intel_gvt *gvt);
133
134void intel_gvt_wait_vgpu_idle(struct intel_vgpu *vgpu);
135
136int intel_vgpu_setup_submission(struct intel_vgpu *vgpu);

--- 19 unchanged lines hidden ---