From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:39884) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UamFm-0003hH-W8 for qemu-devel@nongnu.org; Fri, 10 May 2013 08:16:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UamFl-0007iW-Kj for qemu-devel@nongnu.org; Fri, 10 May 2013 08:16:50 -0400 Received: from mail-wi0-x22c.google.com ([2a00:1450:400c:c05::22c]:37668) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UamFl-0007iR-Dh for qemu-devel@nongnu.org; Fri, 10 May 2013 08:16:49 -0400 Received: by mail-wi0-f172.google.com with SMTP id hm14so555487wib.17 for ; Fri, 10 May 2013 05:16:48 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Fri, 10 May 2013 14:16:34 +0200 Message-Id: <1368188203-3407-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH for-1.5 0/9] Disable expensive QOM cast debugging for official releases List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Anthony Liguori , Andreas Faerber , Aurelien Jarno , mst@redhat.com Cast debugging can have a substantial cost (20% or more, measured by Aurelien on qemu-system-ppc64). Instead of adding special-cased "fast casts" in the hot paths, we can just disable it in releases. At the same time, add tracing facilities that simplify the analysys of those problems that cast debugging would reveal. At least patches 1-7 are for 1.5. Paolo Bonzini (9): qom: improve documentation of cast functions qom: allow casting of a NULL class qom: add a fast path to object_class_dynamic_cast qom: pass file/line/function to asserting casts qom: trace asserting casts qom: allow turning cast debugging off build: disable QOM cast debugging for official releases qom: simplify object_class_dynamic_cast, part 1 qom: simplify object_class_dynamic_cast, part 2 configure | 20 ++++++++------ include/qom/object.h | 40 ++++++++++++++++++++++----- qom/object.c | 77 ++++++++++++++++++++++++++++++++++------------------ trace-events | 3 ++ 4 files changed, 99 insertions(+), 41 deletions(-) -- 1.8.1.4