On Thu, Feb 10, 2022 at 05:26:52PM +0100, Emanuele Giuseppe Esposito wrote: > > > On 10/02/2022 16:40, Stefan Hajnoczi wrote: > > On Tue, Feb 08, 2022 at 09:34:55AM -0500, Emanuele Giuseppe Esposito wrote: > >> Categorize the fields in struct Job to understand which ones > >> need to be protected by the job mutex and which don't. > >> > >> Signed-off-by: Emanuele Giuseppe Esposito <eespo...@redhat.com> > >> --- > >> include/qemu/job.h | 59 ++++++++++++++++++++++++++-------------------- > >> 1 file changed, 34 insertions(+), 25 deletions(-) > >> > >> diff --git a/include/qemu/job.h b/include/qemu/job.h > >> index d1192ffd61..86ec46c09e 100644 > >> --- a/include/qemu/job.h > >> +++ b/include/qemu/job.h > >> @@ -40,27 +40,50 @@ typedef struct JobTxn JobTxn; > >> * Long-running operation. > >> */ > >> typedef struct Job { > >> + > >> + /* Fields set at initialization (job_create), and never modified */ > > > > Is there a corresponding "Field protected by job_mutex" comment that > > separates fields that need locking? > > > > That would be the comment > > /** Protected by job_mutex */ > > situated right after the field "ProgressMeter progress;". > > Do you want me to change it in "Fields protected by job_mutex"?
I don't see it: + /** The opaque value that is passed to the completion function. */ + void *opaque; + + /* ProgressMeter API is thread-safe */ + ProgressMeter progress; + + + /** AioContext to run the job coroutine in */ + AioContext *aio_context; + + /** Reference count of the block job */ + int refcnt; Is it added by a later patch or did I miss it? Stefan
signature.asc
Description: PGP signature