From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37906) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WDsYb-0003He-Sr for qemu-devel@nongnu.org; Thu, 13 Feb 2014 04:26:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WDsYX-0008BM-5b for qemu-devel@nongnu.org; Thu, 13 Feb 2014 04:26:09 -0500 Received: from mx1.redhat.com ([209.132.183.28]:37907) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WDsYW-0008BE-UG for qemu-devel@nongnu.org; Thu, 13 Feb 2014 04:26:05 -0500 Message-ID: <52FC8FA0.7090007@redhat.com> Date: Thu, 13 Feb 2014 10:25:52 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <87fvno87xp.fsf@pixel.localdomain> <18FDD92C-F1BC-4D82-AA0C-9BC256503C06@alex.org.uk> In-Reply-To: <18FDD92C-F1BC-4D82-AA0C-9BC256503C06@alex.org.uk> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] [RFC] Convert Qemu Timer List and Active Timers to RCU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alex Bligh , Mike Day Cc: peter.maydell@linaro.org, qemu-devel@nongnu.org Il 13/02/2014 10:11, Alex Bligh ha scritto: > Mike, > > On 12 Feb 2014, at 19:09, Mike Day wrote: > >> Allow readers to use RCU when reading Qemu timer lists. Applies to >> Paolo Bonzini's RCU branch, https://github.com/bonzini/qemu/tree/rcu. >> >> This patch is for comment and review only. The rcu branch needs to be >> rebased on upstream. > > I'll certainly have a look through this. However before I do, what > problem is this trying to solve? Do we think there is possibility > of contention on the active timers lock? I used to think this was > taken (let alone contented) relatively infrequently, but Rob Herring's > recent email suggests to me the list is being modified in some > circumstances rather more frequently than I thought. I think that, more than contention, it tries to reduce the cost of synchronization primitives, especially the locking and unlocking of the list around the invocation of timer callbacks. Paolo