Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-06 Thread Vladimir Sementsov-Ogievskiy
On 7/6/22 15:59, Emanuele Giuseppe Esposito wrote: Am 06/07/2022 um 14:36 schrieb Emanuele Giuseppe Esposito: Am 06/07/2022 um 14:23 schrieb Vladimir Sementsov-Ogievskiy: On 7/6/22 15:05, Emanuele Giuseppe Esposito wrote: Am 05/07/2022 um 17:01 schrieb Vladimir Sementsov-Ogievskiy: On

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-06 Thread Emanuele Giuseppe Esposito
Am 06/07/2022 um 14:36 schrieb Emanuele Giuseppe Esposito: > > > Am 06/07/2022 um 14:23 schrieb Vladimir Sementsov-Ogievskiy: >> On 7/6/22 15:05, Emanuele Giuseppe Esposito wrote: >>> >>> >>> Am 05/07/2022 um 17:01 schrieb Vladimir Sementsov-Ogievskiy: On 6/29/22 17:15, Emanuele Giuseppe

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-06 Thread Emanuele Giuseppe Esposito
Am 06/07/2022 um 14:23 schrieb Vladimir Sementsov-Ogievskiy: > On 7/6/22 15:05, Emanuele Giuseppe Esposito wrote: >> >> >> Am 05/07/2022 um 17:01 schrieb Vladimir Sementsov-Ogievskiy: >>> On 6/29/22 17:15, Emanuele Giuseppe Esposito wrote: Just as done with job.h, create _locked()

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-06 Thread Vladimir Sementsov-Ogievskiy
On 7/6/22 15:05, Emanuele Giuseppe Esposito wrote: Am 05/07/2022 um 17:01 schrieb Vladimir Sementsov-Ogievskiy: On 6/29/22 17:15, Emanuele Giuseppe Esposito wrote: Just as done with job.h, create _locked() functions in blockjob.h We modify not only blockjob.h, I'd s/blockjob.h/blockjob/ in

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-06 Thread Emanuele Giuseppe Esposito
Am 05/07/2022 um 17:01 schrieb Vladimir Sementsov-Ogievskiy: > On 6/29/22 17:15, Emanuele Giuseppe Esposito wrote: >> Just as done with job.h, create _locked() functions in blockjob.h > > We modify not only blockjob.h, I'd s/blockjob.h/blockjob/ in subject. > > Also, we start to introduce

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-05 Thread Vladimir Sementsov-Ogievskiy
On 6/29/22 17:15, Emanuele Giuseppe Esposito wrote: Just as done with job.h, create _locked() functions in blockjob.h We modify not only blockjob.h, I'd s/blockjob.h/blockjob/ in subject. Also, we start to introduce _locked block_job_* APIs. Does it mean that BlockJob and Job share the

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-05 Thread Emanuele Giuseppe Esposito
Am 05/07/2022 um 09:58 schrieb Stefan Hajnoczi: > On Wed, Jun 29, 2022 at 10:15:26AM -0400, Emanuele Giuseppe Esposito wrote: >> +BlockJob *block_job_next(BlockJob *bjob) >> { >> -Job *job = job_get(id); >> +JOB_LOCK_GUARD(); >> +return block_job_next_locked(bjob); >> +} > > This

Re: [PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-07-05 Thread Stefan Hajnoczi
On Wed, Jun 29, 2022 at 10:15:26AM -0400, Emanuele Giuseppe Esposito wrote: > +BlockJob *block_job_next(BlockJob *bjob) > { > -Job *job = job_get(id); > +JOB_LOCK_GUARD(); > +return block_job_next_locked(bjob); > +} This seems unsafe for the same reason as job_ref(). How can the

[PATCH v8 08/20] blockjob.h: introduce block_job _locked() APIs

2022-06-29 Thread Emanuele Giuseppe Esposito
Just as done with job.h, create _locked() functions in blockjob.h These functions will be later useful when caller has already taken the lock. All blockjob _locked functions call job _locked functions. Note: at this stage, job_{lock/unlock} and job lock guard macros are *nop*. Signed-off-by: