Lines Matching full:jobs

178  * We maintain four lists of jobs:
180 * i) jobs waiting for pages
181 * ii) jobs that have pages, and are waiting for the io to be issued.
182 * iii) jobs that don't need to do any IO and just run a callback
183 * iv) jobs that have completed.
528 static struct kcopyd_job *pop_io_job(struct list_head *jobs, in pop_io_job() argument
534 * For I/O jobs, pop any read, any write without sequential write in pop_io_job()
537 list_for_each_entry(job, jobs, list) { in pop_io_job()
553 static struct kcopyd_job *pop(struct list_head *jobs, in pop() argument
561 if (!list_empty(jobs)) { in pop()
562 if (jobs == &kc->io_jobs) in pop()
563 job = pop_io_job(jobs, kc); in pop()
565 job = list_entry(jobs->next, struct kcopyd_job, list); in pop()
574 static void push(struct list_head *jobs, struct kcopyd_job *job) in push() argument
580 list_add_tail(&job->list, jobs); in push()
585 static void push_head(struct list_head *jobs, struct kcopyd_job *job) in push_head() argument
591 list_add(&job->list, jobs); in push_head()
615 * If this is the master job, the sub jobs have already in run_complete_job()
722 * of successful jobs.
724 static int process_jobs(struct list_head *jobs, struct dm_kcopyd_client *kc, in process_jobs() argument
730 while ((job = pop(jobs, kc))) { in process_jobs()
750 push_head(jobs, job); in process_jobs()
772 * complete jobs can free some pages for pages jobs. in do_work()
773 * Pages jobs when successful will jump onto the io jobs in do_work()
774 * list. io jobs call wake when they complete and it all in do_work()
791 * jobs.
876 * Create some sub jobs to share the work between them.
899 * Allocate an array of jobs consisting of one master job in dm_kcopyd_copy()
900 * followed by SPLIT_COUNT sub jobs. in dm_kcopyd_copy()
1089 /* Wait for completion of all jobs submitted by this client. */ in dm_kcopyd_client_destroy()