qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 00/12] mirror: Handle errors after READY cancel


From: Vladimir Sementsov-Ogievskiy
Subject: Re: [PATCH v4 00/12] mirror: Handle errors after READY cancel
Date: Wed, 15 Sep 2021 10:45:51 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0

07.09.2021 15:42, Hanna Reitz wrote:
Hi,

v1 cover letter:
https://lists.nongnu.org/archive/html/qemu-block/2021-07/msg00705.html

v2 cover letter:
https://lists.nongnu.org/archive/html/qemu-block/2021-07/msg00747.html

v3 cover letter:
https://lists.nongnu.org/archive/html/qemu-block/2021-08/msg00127.html


Changes in v4:
- Patch 1: Swap the order of aio_context_acquire() and job_unref() to
   save ourselves from using a local variable here (i.e. do it the same
   way as job_txn_apply())

- Patch 5:
   - Do not add a @force parameter to job_cancel_sync_all(): All callers
     want to force-cancel all jobs when they use this function, because
     what else would you want to do when you want to “cancel all jobs”.
     So we don’t need a @force parameter here, and can unconditionally
     invoke job_cancel_sync() with force=true.

   - Let the replication block driver force-cancel its backup job
     (because it doesn’t make a difference, but it’s cleaner to
     force-cancel jobs that don’t support any other cancellation
     method).


git-backport-diff against v3:

Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/12:[0003] [FC] 'job: Context changes in job_completed_txn_abort()'
002/12:[----] [--] 'mirror: Keep s->synced on error'
003/12:[----] [--] 'mirror: Drop s->synced'
004/12:[----] [--] 'job: Force-cancel jobs in a failed transaction'
005/12:[0022] [FC] 'job: @force parameter for job_cancel_sync()'
006/12:[----] [--] 'jobs: Give Job.force_cancel more meaning'
007/12:[----] [--] 'job: Add job_cancel_requested()'
008/12:[----] [--] 'mirror: Use job_is_cancelled()'
009/12:[----] [--] 'mirror: Check job_is_cancelled() earlier'
010/12:[----] [--] 'mirror: Stop active mirroring after force-cancel'
011/12:[----] [--] 'mirror: Do not clear .cancelled'
012/12:[----] [--] 'iotests: Add mirror-ready-cancel-error test'


Hanna Reitz (12):
   job: Context changes in job_completed_txn_abort()
   mirror: Keep s->synced on error
   mirror: Drop s->synced
   job: Force-cancel jobs in a failed transaction
   job: @force parameter for job_cancel_sync()
   jobs: Give Job.force_cancel more meaning
   job: Add job_cancel_requested()
   mirror: Use job_is_cancelled()
   mirror: Check job_is_cancelled() earlier
   mirror: Stop active mirroring after force-cancel
   mirror: Do not clear .cancelled
   iotests: Add mirror-ready-cancel-error test


Thanks, applied to my jobs branch.

git clone: https://src.openvz.org/scm/~vsementsov/qemu.git
web: https://src.openvz.org/users/vsementsov/repos/qemu/commits?until=jobs

--
Best regards,
Vladimir



reply via email to

[Prev in Thread] Current Thread [Next in Thread]