On Tue, Mar 17, 2026 at 12:50:22PM +0400, Marc-André Lureau wrote:
> Signed-off-by: Marc-André Lureau <[email protected]>
> ---
> ui/vnc-jobs.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/ui/vnc-jobs.c b/ui/vnc-jobs.c
> index 28a4738f1ec..ae925171fae 100644
> --- a/ui/vnc-jobs.c
> +++ b/ui/vnc-jobs.c
> @@ -122,14 +122,14 @@ static void vnc_job_free(VncJob *job)
>
> void vnc_job_push(VncJob *job)
> {
> - vnc_lock_queue(queue);
> if (QLIST_EMPTY(&job->rectangles)) {
All the APIs which write to job->rectangles do that in a block
that is protected by vnc_lock_queue, so narrowing this to allow
lock-less access of job->rectangles feels dubious, without some
justification in the commit message to explain why it is safe
for job->rectangles to be unprotected, while 'queue->jobs' still
needs protection.
> vnc_job_free(job);
> } else {
> + vnc_lock_queue(queue);
> QTAILQ_INSERT_TAIL(&queue->jobs, job, next);
> qemu_cond_broadcast(&queue->cond);
> + vnc_unlock_queue(queue);
> }
> - vnc_unlock_queue(queue);
> }
>
> static bool vnc_has_job_locked(VncState *vs)
>
> --
> 2.53.0
>
>
With regards,
Daniel
--
|: https://berrange.com ~~ https://hachyderm.io/@berrange :|
|: https://libvirt.org ~~ https://entangle-photo.org :|
|: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|