On 09/07/2015 01:34 AM, Fam Zheng wrote: > Sometimes block jobs must execute as a transaction group. Finishing > jobs wait until all other jobs are ready to complete successfully. > Failure or cancellation of one job cancels the other jobs in the group. > > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> > [Rewrite the implementation which is now contained in block_job_completed. > --Fam] > Signed-off-by: Fam Zheng <f...@redhat.com> > --- > blockjob.c | 134 > ++++++++++++++++++++++++++++++++++++++++++++++- > include/block/block.h | 1 + > include/block/blockjob.h | 38 ++++++++++++++ > 3 files changed, 171 insertions(+), 2 deletions(-)
> +static void block_job_completed_txn_success(BlockJob *job) > +{ > + AioContext *ctx; > + BlockJobTxn *txn = job->txn; > + BlockJob *other_job, *next; > + /* > + * Successful completion, see if there are other running jobs in this > + * txn. > + **/ Unusual **/ -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature