From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43019) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YLasA-0002pT-HM for qemu-devel@nongnu.org; Wed, 11 Feb 2015 12:14:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YLas5-0002tV-Hz for qemu-devel@nongnu.org; Wed, 11 Feb 2015 12:14:46 -0500 Received: from mail-wi0-x234.google.com ([2a00:1450:400c:c05::234]:32942) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YLas5-0002t9-Aw for qemu-devel@nongnu.org; Wed, 11 Feb 2015 12:14:41 -0500 Received: by mail-wi0-f180.google.com with SMTP id h11so2070494wiw.1 for ; Wed, 11 Feb 2015 09:14:39 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Wed, 11 Feb 2015 18:14:29 +0100 Message-Id: <1423674872-10676-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 0/3] run RCU callbacks within the iothread mutex, fix PCI hotplug List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: mdroth@linux.vnet.ibm.com Patch 1 avoids that RCU callbacks are delayed forever if there's scarcity of them, which is bad because qemu_opts_del will be called in a RCU callbacks. Patches 2 avoids complications due to instance_finalize callbacks that are not thread-safe. It's a big hammer and it is not handsome, but I gave up on making VFIO list manipulations thread-safe. Patch 3 avoids a use-after-free when freeing address spaces. These patches survived several hundred hotplug cycles, with MALLOC_PERTURB_ and G_SLICE=always-malloc on. Paolo Paolo Bonzini (3): rcu: do not let RCU callbacks pile up indefinitely rcu: run RCU callbacks under the BQL memory: keep the owner of the AddressSpace alive until do_address_space_destroy memory.c | 5 +++++ tests/Makefile | 2 +- util/rcu.c | 19 +++++++++++++------ 3 files changed, 19 insertions(+), 7 deletions(-) -- 1.8.3.1