From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46442) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XK4p2-0007zW-VN for qemu-devel@nongnu.org; Wed, 20 Aug 2014 08:17:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XK4or-0004YY-Lg for qemu-devel@nongnu.org; Wed, 20 Aug 2014 08:17:00 -0400 Received: from e23smtp02.au.ibm.com ([202.81.31.144]:60813) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XK4oq-0004Xn-RL for qemu-devel@nongnu.org; Wed, 20 Aug 2014 08:16:49 -0400 Received: from /spool/local by e23smtp02.au.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 20 Aug 2014 22:16:44 +1000 From: Alexey Kardashevskiy Date: Wed, 20 Aug 2014 22:16:32 +1000 Message-Id: <1408536997-2075-1-git-send-email-aik@ozlabs.ru> Subject: [Qemu-devel] [PATCH v8 0/5] cpus: Add generic "nmi" monitor command support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Alexey Kardashevskiy , Cornelia Huck , qemu-ppc@nongnu.org, Alexander Graf , Paolo Bonzini This adds an "nmi" monitor command handler per CPUs. x86, s390 and ppc CPUS are supported. Please comment. Thanks. Changes: v8: * adjusted commit log for s390 patch * fixed missing "static" in 1/4 v7: * fixed typenames, function names, copyrights * s390x QOM'ed for later addition of the NMI interface * Since none of x86 machines is QOM'ed, postpone migration to new interface for x86 v6: * back 5 steps and make it an interface again v5: * added Error** to the callback * fixed some comments v4: * now it is not nmi() but nmi_monitor_handler() to avoid confusion v3: * patches reorganized * comments from v2 addressed, more details are in individual commit logs v2: * moved from machine interface to CPUClass callback * s390 and x86 moved to target-s390/target-i386 * x86 handler delivers to the current CPU only now Alexey Kardashevskiy (5): cpus: Define callback for QEMU "nmi" command s390x: Convert QEMUMachine to MachineClass s390x: Migrate to new NMI interface spapr: Add support for new NMI interface pc_piix: Migrate to new NMI interface cpus.c | 31 ++--------------- hmp-commands.hx | 6 ++-- hw/core/Makefile.objs | 1 + hw/core/nmi.c | 84 ++++++++++++++++++++++++++++++++++++++++++++++ hw/i386/pc_piix.c | 42 +++++++++++++++++++++++ hw/ppc/spapr.c | 21 ++++++++++++ hw/s390x/s390-virtio-ccw.c | 49 ++++++++++++++++++--------- hw/s390x/s390-virtio.c | 59 ++++++++++++++++++++++---------- hw/s390x/s390-virtio.h | 3 ++ include/hw/nmi.h | 49 +++++++++++++++++++++++++++ qapi-schema.json | 4 +-- qmp-commands.hx | 3 +- target-ppc/cpu-qom.h | 1 + target-ppc/excp_helper.c | 8 +++++ 14 files changed, 291 insertions(+), 70 deletions(-) create mode 100644 hw/core/nmi.c create mode 100644 include/hw/nmi.h -- 2.0.0