From patchwork Sun May 22 16:02:42 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 9130973 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 946A160761 for ; Sun, 22 May 2016 16:03:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4E18C2819E for ; Sun, 22 May 2016 16:03:51 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 41169281BE; Sun, 22 May 2016 16:03:51 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.9 required=2.0 tests=BAYES_00,FREEMAIL_FROM, FSL_HELO_HOME,RCVD_IN_DNSWL_HI,T_TVD_MIME_EPI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CB1E62819E for ; Sun, 22 May 2016 16:03:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752525AbcEVQD0 (ORCPT ); Sun, 22 May 2016 12:03:26 -0400 Received: from mout.web.de ([212.227.17.11]:52629 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752501AbcEVQDL (ORCPT ); Sun, 22 May 2016 12:03:11 -0400 Received: from netbook.home ([95.157.57.47]) by smtp.web.de (mrweb102) with ESMTPSA (Nemesis) id 0MAvGa-1bERzj0Hn2-009wU9; Sun, 22 May 2016 18:03:07 +0200 To: Steven Rostedt Cc: Linux Kernel Mailing List , kvm From: Jan Kiszka Subject: [PATCH] trace-cmd: Add more SVM exit reasons Message-ID: <5741D822.3030203@web.de> Date: Sun, 22 May 2016 18:02:42 +0200 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 X-Provags-ID: V03:K0:bdGaTnFcB9i1g/mQo3nX7nFqNDwD/auuyRNK/B+wxmfxfRC+AzZ fLXzxDAtGSVc3iTO/AeKeSU8RwHPUh4MoIesrLFOZ55wKyKZO3rfLcyVLCkvTxT3tj2J+CA stlpnv87ySMK81SkH61QAL4niQvo6+qeVaC37peHB5h2VsOO0A9Ufsrp3s598NhQm3ndhAJ 1JdiK06pc32s4CZEYOYZA== X-UI-Out-Filterresults: notjunk:1; V01:K0:71OL5R0bWpQ=:7gUTvn2jazlAzGKrOyAUWO R5sv7cWnNQQfDRgoH+adEgqMTdN9XyXOaAdK54O7Bt4x5jDog065Dsk9ZSCkOLZDsyQAax/vB kzWwURmVTeNWFtdk9t7o6cNbTHus9jz/Gy68DoNUDXe+DS7f2dvOTLbWVMX2awiGCxxhiWQIj 5M0xzFoZqxXtDEwj2lCuL+Ivp+tfnXge0RuKAsr3GXls91pefCCA21xrc/gjaIgM4l+3OFJj/ eKSk251pBpKhVxUQJbNOyam3zqYfZvJwbKBsyTtektGtVCeWXXEqx2pVn/SmjvC5c7KUe/Kzl /2d9Dop5nYzxv2ueGr33e2VWMGIPgVnwLoq1pX4SKJ8mKuc0KBUlYV6B9GhmIiSEwOU1ncxOE 7bUcd1rndZ96z38f7m4an8UAGwChh+KI8fH6bT6lqK7eCUUOlR8LYHLWRUV7Qb34mph7qAyl7 fwVhUU1+2IpQdzbDQ/K2thooxBE/OTBLDUgwtQqb5DgA3BRlLt0ndbXiQMEK8OWv2DGYk3BW5 edglEjc5ekAUWxiJLLPTOul5ZZ1PINapeSCazKFkgZXX78J4sSiChFwrDXt4mFo5jXJyUWjkm ka9fjXtHLAdHoeEb8HVCGn2bOS1NHuJkAKmTdFiRVcp0ADFoBsPHHVKBH8ewf3IVMZ09oKeLK RemPeAQTX7+DuOgn4VkcdJqy4wePz7ZCRkThPh+tSBm/xtRxhydaY6XRZLdM6QCPos02SP6ua gWhVjnKlRt5pjYQ2ivfzBCE/jOG5s8YT6pOJ+zvjFoeKgUNvqQA83PmVSyzsaOhvqvKSo0Wp7 /0HocI4NqcRnneTlwep5z/zusey7w== Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Jan Kiszka Exceptions require individual decoding (only feasible intercepts listed), XSETBV was missing and the AVIC brought in two new exit codes. Signed-off-by: Jan Kiszka --- plugin_kvm.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/plugin_kvm.c b/plugin_kvm.c index 99e920f..2051a64 100644 --- a/plugin_kvm.c +++ b/plugin_kvm.c @@ -151,7 +151,23 @@ static const char *disassemble(unsigned char *insn, int len, uint64_t rip, _ER(EXIT_WRITE_DR5, 0x035) \ _ER(EXIT_WRITE_DR6, 0x036) \ _ER(EXIT_WRITE_DR7, 0x037) \ - _ER(EXIT_EXCP_BASE, 0x040) \ + _ER(EXIT_EXCP_DE, 0x040) \ + _ER(EXIT_EXCP_DB, 0x041) \ + _ER(EXIT_EXCP_BP, 0x043) \ + _ER(EXIT_EXCP_OF, 0x044) \ + _ER(EXIT_EXCP_BR, 0x045) \ + _ER(EXIT_EXCP_UD, 0x046) \ + _ER(EXIT_EXCP_NM, 0x047) \ + _ER(EXIT_EXCP_DF, 0x048) \ + _ER(EXIT_EXCP_TS, 0x04a) \ + _ER(EXIT_EXCP_NP, 0x04b) \ + _ER(EXIT_EXCP_SS, 0x04c) \ + _ER(EXIT_EXCP_GP, 0x04d) \ + _ER(EXIT_EXCP_PF, 0x04e) \ + _ER(EXIT_EXCP_MF, 0x050) \ + _ER(EXIT_EXCP_AC, 0x051) \ + _ER(EXIT_EXCP_MC, 0x052) \ + _ER(EXIT_EXCP_XF, 0x053) \ _ER(EXIT_INTR, 0x060) \ _ER(EXIT_NMI, 0x061) \ _ER(EXIT_SMI, 0x062) \ @@ -197,7 +213,10 @@ static const char *disassemble(unsigned char *insn, int len, uint64_t rip, _ER(EXIT_MONITOR, 0x08a) \ _ER(EXIT_MWAIT, 0x08b) \ _ER(EXIT_MWAIT_COND, 0x08c) \ + _ER(EXIT_XSETBV, 0x08d) \ _ER(EXIT_NPF, 0x400) \ + _ER(EXIT_AVIC_INCOMPLETE_IPI, 0x401) \ + _ER(EXIT_AVIC_UNACCELERATED_ACCESS, 0x402) \ _ER(EXIT_ERR, -1) #define _ER(reason, val) { #reason, val },