mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-29 05:13:54 -06:00
job: Move cancelled to Job
We cannot yet move the whole logic around job cancelling to Job because it depends on quite a few other things that are still only in BlockJob, but we can move the cancelled field at least. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com>
This commit is contained in:
parent
80fa2c756b
commit
daa7f2f946
11 changed files with 50 additions and 52 deletions
|
@ -56,14 +56,6 @@ typedef struct BlockJob {
|
|||
*/
|
||||
Coroutine *co;
|
||||
|
||||
/**
|
||||
* Set to true if the job should cancel itself. The flag must
|
||||
* always be tested just before toggling the busy flag from false
|
||||
* to true. After a job has been cancelled, it should only yield
|
||||
* if #aio_poll will ("sooner or later") reenter the coroutine.
|
||||
*/
|
||||
bool cancelled;
|
||||
|
||||
/**
|
||||
* Set to true if the job should abort immediately without waiting
|
||||
* for data to be in sync.
|
||||
|
|
|
@ -195,14 +195,6 @@ void block_job_early_fail(BlockJob *job);
|
|||
*/
|
||||
void block_job_completed(BlockJob *job, int ret);
|
||||
|
||||
/**
|
||||
* block_job_is_cancelled:
|
||||
* @job: The job being queried.
|
||||
*
|
||||
* Returns whether the job is scheduled for cancellation.
|
||||
*/
|
||||
bool block_job_is_cancelled(BlockJob *job);
|
||||
|
||||
/**
|
||||
* block_job_pause_point:
|
||||
* @job: The job that is ready to pause.
|
||||
|
|
|
@ -47,6 +47,14 @@ typedef struct Job {
|
|||
/** Current state; See @JobStatus for details. */
|
||||
JobStatus status;
|
||||
|
||||
/**
|
||||
* Set to true if the job should cancel itself. The flag must
|
||||
* always be tested just before toggling the busy flag from false
|
||||
* to true. After a job has been cancelled, it should only yield
|
||||
* if #aio_poll will ("sooner or later") reenter the coroutine.
|
||||
*/
|
||||
bool cancelled;
|
||||
|
||||
/** Element of the list of jobs */
|
||||
QLIST_ENTRY(Job) job_list;
|
||||
} Job;
|
||||
|
@ -93,6 +101,9 @@ JobType job_type(const Job *job);
|
|||
/** Returns the enum string for the JobType of a given Job. */
|
||||
const char *job_type_str(const Job *job);
|
||||
|
||||
/** Returns whether the job is scheduled for cancellation. */
|
||||
bool job_is_cancelled(Job *job);
|
||||
|
||||
/**
|
||||
* Get the next element from the list of block jobs after @job, or the
|
||||
* first one if @job is %NULL.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue