From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59598) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vns7C-0005ja-7C for qemu-devel@nongnu.org; Tue, 03 Dec 2013 10:42:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Vns73-0000oc-Qg for qemu-devel@nongnu.org; Tue, 03 Dec 2013 10:42:22 -0500 Received: from mail-qe0-x236.google.com ([2607:f8b0:400d:c02::236]:52681) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vns73-0000oY-ME for qemu-devel@nongnu.org; Tue, 03 Dec 2013 10:42:13 -0500 Received: by mail-qe0-f54.google.com with SMTP id cy11so13445018qeb.27 for ; Tue, 03 Dec 2013 07:42:13 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Tue, 3 Dec 2013 16:41:58 +0100 Message-Id: <1386085320-12965-1-git-send-email-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PATCH 0/2] qom: fix registration of QOM interfaces List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.crosthwaite@xilinx.com, hpoussin@reactos.org, afaerber@suse.de object_class_foreach can initialize new types, and also register new types corresponding to the implementations of interfaces. Those will change the type internal hashtable which is currently enumerated, and GHashTable does not permit this. Fix this by not registering those internal types in the hash table, and assert that we do not reenter GHashTable incorrectly during iteration. Hervé Poussineau (1): qom: detect bad reentrance during object_class_foreach Paolo Bonzini (1): qom: do not register interface "types" in the type table qom/object.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) -- 1.8.4.2