From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55623) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YMHgI-0006hT-Qg for qemu-devel@nongnu.org; Fri, 13 Feb 2015 09:57:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YMHgE-0000T0-L5 for qemu-devel@nongnu.org; Fri, 13 Feb 2015 09:57:22 -0500 Received: from mail-we0-x235.google.com ([2a00:1450:400c:c03::235]:60735) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YMHgE-0000Sq-ET for qemu-devel@nongnu.org; Fri, 13 Feb 2015 09:57:18 -0500 Received: by mail-we0-f181.google.com with SMTP id w62so17060493wes.12 for ; Fri, 13 Feb 2015 06:57:17 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Fri, 13 Feb 2015 15:57:08 +0100 Message-Id: <1423839431-3563-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 0/3] pci: fix memory region lifecycle issues, document the rules List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: mjrosato@linux.vnet.ibm.com, alex.williamson@redhat.com, mst@redhat.com While these patches were originally in "part 3" of the RCU patches, it turns out that the semantics they enforce are already important now (reported by Alex Williamson and Matthew Rosato), so here they are! Patch 1 fixes a MemoryRegion leak (and fixes it the right way, so that the new lifecycle rules are respected!). Patch 2 fixes a case where a memory region could be referenced (in an RCU callback) when it had no parent, similar to the s390 case. Patch 3 documents the MemoryRegion lifecycle rules now that (except for s390, which Matthew is going to fix soon) QEMU actually follows them. Please review and ACK. Michael, okay to apply the first two through the RCU tree? Paolo Paolo Bonzini (3): pcie: remove mmconfig memory leak and wrap mmconfig update with transaction pci: split shpc_cleanup and shpc_free docs: clarify memory region lifecycle docs/memory.txt | 74 +++++++++++++++++++++++++++++++++--------- hw/pci-bridge/pci_bridge_dev.c | 14 +++++--- hw/pci/pcie_host.c | 7 ++-- hw/pci/shpc.c | 5 +++ include/hw/pci/shpc.h | 1 + 5 files changed, 79 insertions(+), 22 deletions(-) -- 1.8.3.1