From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42686) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aniz2-0006oq-4q for qemu-devel@nongnu.org; Wed, 06 Apr 2016 04:38:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aniyy-0000QD-UE for qemu-devel@nongnu.org; Wed, 06 Apr 2016 04:38:40 -0400 Received: from mail-wm0-x229.google.com ([2a00:1450:400c:c09::229]:36627) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aniyy-0000Q1-FA for qemu-devel@nongnu.org; Wed, 06 Apr 2016 04:38:36 -0400 Received: by mail-wm0-x229.google.com with SMTP id v188so14593167wme.1 for ; Wed, 06 Apr 2016 01:38:36 -0700 (PDT) References: <1459834253-8291-1-git-send-email-cota@braap.org> <1459834253-8291-4-git-send-email-cota@braap.org> From: Alex =?utf-8?Q?Benn=C3=A9e?= In-reply-to: <1459834253-8291-4-git-send-email-cota@braap.org> Date: Wed, 06 Apr 2016 09:38:37 +0100 Message-ID: <87oa9nb08i.fsf@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 03/10] seqlock: remove optional mutex List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Emilio G. Cota" Cc: MTTCG Devel , Peter Maydell , Peter Crosthwaite , QEMU Developers , Sergey Fedorov , Paolo Bonzini , Richard Henderson Emilio G. Cota writes: > This option is unused; besides, it bloats the struct when not needed. > Let's just let writers define their own locks elsewhere. > > Signed-off-by: Emilio G. Cota Reviewed-by: Alex Bennée > --- > cpus.c | 2 +- > include/qemu/seqlock.h | 10 +--------- > 2 files changed, 2 insertions(+), 10 deletions(-) > > diff --git a/cpus.c b/cpus.c > index 8ae4777..7f550b9 100644 > --- a/cpus.c > +++ b/cpus.c > @@ -611,7 +611,7 @@ int cpu_throttle_get_percentage(void) > > void cpu_ticks_init(void) > { > - seqlock_init(&timers_state.vm_clock_seqlock, NULL); > + seqlock_init(&timers_state.vm_clock_seqlock); > vmstate_register(NULL, 0, &vmstate_timers, &timers_state); > throttle_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL_RT, > cpu_throttle_timer_tick, NULL); > diff --git a/include/qemu/seqlock.h b/include/qemu/seqlock.h > index 70b01fd..e673482 100644 > --- a/include/qemu/seqlock.h > +++ b/include/qemu/seqlock.h > @@ -19,22 +19,17 @@ > typedef struct QemuSeqLock QemuSeqLock; > > struct QemuSeqLock { > - QemuMutex *mutex; > unsigned sequence; > }; > > -static inline void seqlock_init(QemuSeqLock *sl, QemuMutex *mutex) > +static inline void seqlock_init(QemuSeqLock *sl) > { > - sl->mutex = mutex; > sl->sequence = 0; > } > > /* Lock out other writers and update the count. */ > static inline void seqlock_write_lock(QemuSeqLock *sl) > { > - if (sl->mutex) { > - qemu_mutex_lock(sl->mutex); > - } > ++sl->sequence; > > /* Write sequence before updating other fields. */ > @@ -47,9 +42,6 @@ static inline void seqlock_write_unlock(QemuSeqLock *sl) > smp_wmb(); > > ++sl->sequence; > - if (sl->mutex) { > - qemu_mutex_unlock(sl->mutex); > - } > } > > static inline unsigned seqlock_read_begin(QemuSeqLock *sl) -- Alex Bennée