jobs
struct amdgpu_job *job = p->jobs[i];
r = amdgpu_cs_patch_ibs(p, p->jobs[i]);
job = p->jobs[i];
r = amdgpu_sync_push_to_job(&p->sync, p->jobs[i]);
drm_sched_job_arm(&p->jobs[i]->base);
if (p->jobs[i] == leader)
fence = &p->jobs[i]->base.s_fence->scheduled;
amdgpu_job_set_gang_leader(p->jobs[i], leader);
if (p->jobs[i] == leader)
&p->jobs[i]->base.s_fence->finished,
amdgpu_job_free_resources(p->jobs[i]);
trace_amdgpu_cs_ioctl(p->jobs[i]);
drm_sched_entity_push_job(&p->jobs[i]->base);
p->jobs[i] = NULL;
if (parser->jobs[i])
amdgpu_job_free(parser->jobs[i]);
num_ibs[i], &p->jobs[i],
p->jobs[i]->enforce_isolation = false;
p->jobs[i]->run_cleaner_shader = false;
p->jobs[i]->enforce_isolation = true;
p->jobs[i]->run_cleaner_shader = true;
p->jobs[i]->enforce_isolation = true;
p->jobs[i]->run_cleaner_shader = false;
p->jobs[i]->enforce_isolation = true;
p->jobs[i]->run_cleaner_shader = false;
p->gang_leader = p->jobs[p->gang_leader_idx];
job = p->jobs[r];
p->jobs[i]->shadow_va = shadow->shadow_va;
p->jobs[i]->csa_va = shadow->csa_va;
p->jobs[i]->gds_va = shadow->gds_va;
p->jobs[i]->init_shadow =
amdgpu_job_set_resources(p->jobs[i], p->bo_list->gds_obj,
struct amdgpu_job *jobs[AMDGPU_CS_GANG_SIZE];
char **jobs;
jobs = NULL;
if ((jobs = reallocarray(NULL, argc, sizeof(char *))) == NULL ||
jobs[jobs_len++] = argv[i];
if (strcmp(dirent->d_name, jobs[i]) == 0) {
char **jobs, *ep;
jobs = NULL;
if ((jobs = reallocarray(NULL, argc, sizeof(char *))) == NULL ||
jobs[jobs_len++] = argv[i];
if (jobs[i] != NULL &&
strcmp(dirent->d_name, jobs[i]) == 0) {
jobs[i] = NULL;
if (jobs[i] != NULL) {
warnx("%s: no such job", jobs[i]);
free(jobs);
struct format_job_tree *jobs;
jobs = &format_jobs;
else if (ft->client->jobs != NULL)
jobs = ft->client->jobs;
jobs = ft->client->jobs = xmalloc(sizeof *ft->client->jobs);
RB_INIT(jobs);
if ((fj = RB_FIND(format_job_tree, jobs, &fj0)) == NULL) {
RB_INSERT(format_job_tree, jobs, fj);
format_job_tidy(struct format_job_tree *jobs, int force)
RB_FOREACH_SAFE(fj, format_job_tree, jobs, fj1) {
RB_REMOVE(format_job_tree, jobs, fj);
if (c->jobs != NULL)
format_job_tidy(c->jobs, 0);
if (c->jobs != NULL)
format_job_tidy(c->jobs, 1);
free(c->jobs);
while ((job = TAILQ_FIRST(&new_db->jobs))) {
TAILQ_REMOVE(&new_db->jobs, job, entries);
TAILQ_INSERT_TAIL(&new_db->jobs, job, entries);
while ((job = TAILQ_FIRST(&old_db->jobs))) {
TAILQ_REMOVE(&old_db->jobs, job, entries);
TAILQ_FOREACH_SAFE(job, &db->jobs, entries, tjob) {
TAILQ_REMOVE(&db->jobs, job, entries);
TAILQ_REMOVE(&db->jobs, job, entries);
TAILQ_REMOVE(&db->jobs, job, entries);
TAILQ_REMOVE(&db->jobs, job, entries);
TAILQ_REMOVE(&db->jobs, batch, entries);
TAILQ_INIT(&new_db->jobs);
while ((j = SIMPLEQ_FIRST(&jobs))) {
SIMPLEQ_REMOVE_HEAD(&jobs, entries);
SIMPLEQ_CONCAT(&jobs, &singletons);
static SIMPLEQ_HEAD(job_queue, _job) jobs = SIMPLEQ_HEAD_INITIALIZER(jobs);
SIMPLEQ_FOREACH(j, &jobs, entries) {
SIMPLEQ_INSERT_TAIL(&jobs, j, entries);
SIMPLEQ_FOREACH(j, &jobs, entries) {
SIMPLEQ_REMOVE_HEAD(&jobs, entries);
SIMPLEQ_REMOVE_AFTER(&jobs, prev, entries);
SIMPLEQ_FOREACH(j, &jobs, entries) {
SIMPLEQ_REMOVE_HEAD(&jobs, entries);
SIMPLEQ_REMOVE_AFTER(&jobs, prev, entries);
TAILQ_HEAD(atjob_list, _atjob) jobs;
m_get_int(proc, &jf.jobs[i]);
snprintf(buf, sizeof(buf), " %d", jf->jobs[i]);
snprintf(buf, sizeof(buf), " %d", jf->jobs[i]);
m_get_int(proc, &jf.jobs[i]);
m_add_int(p_engine, jf.jobs[i]);
m_add_int(p_engine, jf.jobs[i]);
jf->jobs[jf->njob++] = jobnum;
int jobs[LP_MAXREQUESTS];
if (jf->jobs[i] == LP_JOBNUM(cfname))
if (jf->jobs[i] == LP_JOBNUM(cfname))
TAILQ_FOREACH(tmpjob, &runq->jobs, entry) {
TAILQ_INSERT_TAIL(&runq->jobs, job, entry);
if (runq != active && job == TAILQ_FIRST(&runq->jobs)) {
first = TAILQ_FIRST(&runq->jobs);
TAILQ_FOREACH(job, &runq->jobs, entry) {
TAILQ_REMOVE(&runq->jobs, job, entry);
TAILQ_FOREACH(job, &runq->jobs, entry) {
TAILQ_HEAD(, job) jobs;
job = TAILQ_FIRST(&runq->jobs);
while((job = TAILQ_FIRST(&runq->jobs))) {
TAILQ_REMOVE(&runq->jobs, job, entry);
TAILQ_INIT(&runq->jobs);