Re: [PATCH v4 10/25] assertions for blockjob_int.h

2021-11-12 Thread Hanna Reitz

On 25.10.21 12:17, Emanuele Giuseppe Esposito wrote:

Signed-off-by: Emanuele Giuseppe Esposito 
Reviewed-by: Stefan Hajnoczi 
---
  blockjob.c | 4 
  1 file changed, 4 insertions(+)

diff --git a/blockjob.c b/blockjob.c
index 4bad1408cb..fbd6c7d873 100644
--- a/blockjob.c
+++ b/blockjob.c
@@ -83,6 +83,7 @@ BlockJob *block_job_get(const char *id)
  
  void block_job_free(Job *job)

  {
+assert(qemu_in_main_thread());
  BlockJob *bjob = container_of(job, BlockJob, job);


Our coding style (docs/devel/style.rst) requires all statements to come 
after all declarations in a block, so the assert() may not precede the 
bjob declaration.


  
  block_job_remove_all_bdrv(bjob);

@@ -436,6 +437,8 @@ void *block_job_create(const char *job_id, const 
BlockJobDriver *driver,
  BlockBackend *blk;
  BlockJob *job;
  
+assert(qemu_in_main_thread());

+
  if (job_id == NULL && !(flags & JOB_INTERNAL)) {
  job_id = bdrv_get_device_name(bs);
  }
@@ -504,6 +507,7 @@ void block_job_iostatus_reset(BlockJob *job)
  
  void block_job_user_resume(Job *job)

  {
+assert(qemu_in_main_thread());
  BlockJob *bjob = container_of(job, BlockJob, job);


Same here.

(And now I see that I’ve missed such instances in the other assertion 
patches, like in bdrv_save_vmstate(), those should be fixed, too)


Hanna


  block_job_iostatus_reset(bjob);
  }





[PATCH v4 10/25] assertions for blockjob_int.h

2021-10-25 Thread Emanuele Giuseppe Esposito
Signed-off-by: Emanuele Giuseppe Esposito 
Reviewed-by: Stefan Hajnoczi 
---
 blockjob.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/blockjob.c b/blockjob.c
index 4bad1408cb..fbd6c7d873 100644
--- a/blockjob.c
+++ b/blockjob.c
@@ -83,6 +83,7 @@ BlockJob *block_job_get(const char *id)
 
 void block_job_free(Job *job)
 {
+assert(qemu_in_main_thread());
 BlockJob *bjob = container_of(job, BlockJob, job);
 
 block_job_remove_all_bdrv(bjob);
@@ -436,6 +437,8 @@ void *block_job_create(const char *job_id, const 
BlockJobDriver *driver,
 BlockBackend *blk;
 BlockJob *job;
 
+assert(qemu_in_main_thread());
+
 if (job_id == NULL && !(flags & JOB_INTERNAL)) {
 job_id = bdrv_get_device_name(bs);
 }
@@ -504,6 +507,7 @@ void block_job_iostatus_reset(BlockJob *job)
 
 void block_job_user_resume(Job *job)
 {
+assert(qemu_in_main_thread());
 BlockJob *bjob = container_of(job, BlockJob, job);
 block_job_iostatus_reset(bjob);
 }
-- 
2.27.0