diff mbox series

[PULL,for-7.1,06/36] util/log: Treat qemu_log_lock like trylock

Message ID 20220320171135.2704502-7-richard.henderson@linaro.org
State New
Headers show
Series Logging cleanup and per-thread logfiles | expand

Commit Message

Richard Henderson March 20, 2022, 5:11 p.m. UTC
Do not require qemu_log_unlock to be called when
qemu_log_lock returns NULL.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 util/log.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Alex Bennée March 23, 2022, 4:43 p.m. UTC | #1
Richard Henderson <richard.henderson@linaro.org> writes:

> Do not require qemu_log_unlock to be called when
> qemu_log_lock returns NULL.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
diff mbox series

Patch

diff --git a/util/log.c b/util/log.c
index 248db6211e..b1651d8122 100644
--- a/util/log.c
+++ b/util/log.c
@@ -39,12 +39,14 @@  static GArray *debug_regions;
 FILE *qemu_log_lock(void)
 {
     QemuLogFile *logfile;
+
     rcu_read_lock();
     logfile = qatomic_rcu_read(&qemu_logfile);
     if (logfile) {
         qemu_flockfile(logfile->fd);
         return logfile->fd;
     } else {
+        rcu_read_unlock();
         return NULL;
     }
 }
@@ -53,8 +55,8 @@  void qemu_log_unlock(FILE *fd)
 {
     if (fd) {
         qemu_funlockfile(fd);
+        rcu_read_unlock();
     }
-    rcu_read_unlock();
 }
 
 /* Return the number of characters emitted.  */