[{"id":1764373,"web_url":"http://patchwork.ozlabs.org/comment/1764373/","msgid":"<20170906205947.GB25558@flamenco>","list_archive_url":null,"date":"2017-09-06T20:59:47","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":65690,"url":"http://patchwork.ozlabs.org/api/people/65690/","name":"Emilio Cota","email":"cota@braap.org"},"content":"On Wed, Sep 06, 2017 at 20:22:41 +0300, Lluís Vilanova wrote:\n> This series adds an API to add instrumentation events.\n> \n> It also provides additional APIs for:\n> * Controlling tracing events\n\nhmm didn't Stefan say that tracing should be decoupled from this?\n\n> * Peek/poke guest memory\n> \n> There's still missing APIs for (can be added in later series?):\n> * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>   vCPU can have different instrumentation code). It's still not clear to me if\n>   we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>   somehow reuse the bits in tracing events (since they're currently limited).\n\nAs I said in the description of my alternative implementation [*], I don't see\nmuch value in having per-vCPU events, as most instrumenters just care about\nthe guest application/system. I can only think of cases where the instrumenter\nis only interested in a guest process (in system-mode), but that'd be ugly\nanyway (would need to change both QEMU and the guest kernel to track the pid).\n\nIf the need ever arises, we could add __vcpu(cpu_index) registration functions.\n\n[*] https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html\n\n\t\tE.","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=braap.org header.i=@braap.org\n\theader.b=\"W3NLGUX3\"; \n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=messagingengine.com\n\theader.i=@messagingengine.com header.b=\"JRjW4Exx\"; \n\tdkim-atps=neutral"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xnbZW3hs0z9s7C\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu,  7 Sep 2017 07:00:19 +1000 (AEST)","from localhost ([::1]:37753 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dphQn-0005B5-5D\n\tfor incoming@patchwork.ozlabs.org; Wed, 06 Sep 2017 17:00:17 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:59693)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <cota@braap.org>) id 1dphQQ-0005AU-Bs\n\tfor qemu-devel@nongnu.org; Wed, 06 Sep 2017 16:59:59 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <cota@braap.org>) id 1dphQM-0001tN-H7\n\tfor qemu-devel@nongnu.org; Wed, 06 Sep 2017 16:59:54 -0400","from out1-smtp.messagingengine.com ([66.111.4.25]:54801)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <cota@braap.org>) id 1dphQM-0001tB-Af\n\tfor qemu-devel@nongnu.org; Wed, 06 Sep 2017 16:59:50 -0400","from compute4.internal (compute4.nyi.internal [10.202.2.44])\n\tby mailout.nyi.internal (Postfix) with ESMTP id CABC320DEA;\n\tWed,  6 Sep 2017 16:59:47 -0400 (EDT)","from frontend2 ([10.202.2.161])\n\tby compute4.internal (MEProxy); Wed, 06 Sep 2017 16:59:47 -0400","from localhost (flamenco.cs.columbia.edu [128.59.20.216])\n\tby mail.messagingengine.com (Postfix) with ESMTPA id 8C2D824335;\n\tWed,  6 Sep 2017 16:59:47 -0400 (EDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=braap.org; h=cc\n\t:content-transfer-encoding:content-type:date:from:in-reply-to\n\t:message-id:mime-version:references:subject:to:x-me-sender\n\t:x-me-sender:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=J6ti+LQWYJLPXnz\n\tXsWp63MJk+Wx3OLiVlzY97lOT8Lc=; b=W3NLGUX3fQCC/HCDbegSC/pBnqjxqRs\n\tVe7yu9xEhvf3mndKLxFOe3PBwY4ysV7AodgW01uLHXSWzuQmZ0vL/2ZOV3AgIY+2\n\txK9nBV3nmuqi3LqQowpGODp7TVxSjR+AyHMz02QO+B9lZCKRUU6UtOs8ux9qK6Df\n\tkxtM5uVIYaVg=","v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n\tmessagingengine.com; h=cc:content-transfer-encoding:content-type\n\t:date:from:in-reply-to:message-id:mime-version:references\n\t:subject:to:x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s=\n\tfm1; bh=J6ti+LQWYJLPXnzXsWp63MJk+Wx3OLiVlzY97lOT8Lc=; b=JRjW4Exx\n\tdhszdIMzHsJRaG24acPUERgFbbTUmSBJm1FeEd4sPLNV9+YcF6BWfzI9r/uttzph\n\tcBHP3wW0lHQNxy8BzpDmuKArYRyB8BTWjFRYGj9/AKFAjn57zC+HDaq9IsqUweVS\n\tJ9J7tWN45u8Q9kxXPqNhPHj8Tgwmro4ZOgwia4lE6uavt4uupCX+LbDWEUpXMdbD\n\tpqCv/gdmjfAUyTjuJXTc+I5gxTGoxv6mp1lYRFtnmBiVYMNI4Aj4lXDe8VZqoFfC\n\tpCNI3rRqgDkIKJhg8qPvEk5Q2a/GXcd3a7lvw7Px3cr/sAoC/YpNX6ENUNnPWySv\n\toC9864r0zSZRdg=="],"X-ME-Sender":"<xms:w2GwWWpHjH1e41DJMQYxmWlWMv0uNaQ4CePAN6JwbbF_pmHEzALmrA>","X-Sasl-enc":"wIZDFLfZaFqa63wkDLuuZbTREOStMbrCbEgwYT7rtRbz 1504731587","Date":"Wed, 6 Sep 2017 16:59:47 -0400","From":"\"Emilio G. Cota\" <cota@braap.org>","To":"=?iso-8859-1?q?Llu=EDs?= Vilanova <vilanova@ac.upc.edu>","Message-ID":"<20170906205947.GB25558@flamenco>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>","MIME-Version":"1.0","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<150471856141.24907.274176769201097378.stgit@frigg.lan>","User-Agent":"Mutt/1.5.24 (2015-08-30)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"66.111.4.25","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1764559,"web_url":"http://patchwork.ozlabs.org/comment/1764559/","msgid":"<87o9qnkl46.fsf@dusky.pond.sub.org>","list_archive_url":null,"date":"2017-09-07T07:45:29","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":2645,"url":"http://patchwork.ozlabs.org/api/people/2645/","name":"Markus Armbruster","email":"armbru@redhat.com"},"content":"Lluís Vilanova <vilanova@ac.upc.edu> writes:\n\n> This series adds an API to add instrumentation events.\n>\n> It also provides additional APIs for:\n> * Controlling tracing events\n> * Peek/poke guest memory\n>\n> There's still missing APIs for (can be added in later series?):\n> * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>   vCPU can have different instrumentation code). It's still not clear to me if\n>   we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>   somehow reuse the bits in tracing events (since they're currently limited).\n> * Peek/poke guest registers\n>\n> The instrumentation code is dynamically loaded as a library into QEMU either\n> when it starts or later using its remote control interfaces.\n>\n> Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>\n\nDoesn't apply to current master, and appears to have whitespace errors.\nPlease rebase and use scripts/checkpatch.pl to tidy up.","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx03.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx03.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=armbru@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xnsvh5LG7z9sRY\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu,  7 Sep 2017 17:46:07 +1000 (AEST)","from localhost ([::1]:39154 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dprVl-0007kj-GQ\n\tfor incoming@patchwork.ozlabs.org; Thu, 07 Sep 2017 03:46:05 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:46694)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <armbru@redhat.com>) id 1dprVK-0007kD-TU\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 03:45:43 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <armbru@redhat.com>) id 1dprVH-0007VW-Pq\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 03:45:38 -0400","from mx1.redhat.com ([209.132.183.28]:45796)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <armbru@redhat.com>) id 1dprVH-0007VB-Jb\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 03:45:35 -0400","from smtp.corp.redhat.com\n\t(int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 2877E7E421;\n\tThu,  7 Sep 2017 07:45:34 +0000 (UTC)","from blackfin.pond.sub.org (ovpn-116-75.ams2.redhat.com\n\t[10.36.116.75])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id 53D4018E4C;\n\tThu,  7 Sep 2017 07:45:31 +0000 (UTC)","by blackfin.pond.sub.org (Postfix, from userid 1000)\n\tid A4D021138645; Thu,  7 Sep 2017 09:45:29 +0200 (CEST)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 2877E7E421","From":"Markus Armbruster <armbru@redhat.com>","To":"=?utf-8?b?TGx1w61z?= Vilanova <vilanova@ac.upc.edu>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>","Date":"Thu, 07 Sep 2017 09:45:29 +0200","In-Reply-To":"<150471856141.24907.274176769201097378.stgit@frigg.lan> (\n\t=?utf-8?b?IkxsdcOtcw==?= Vilanova\"'s message of \"Wed,\n\t6 Sep 2017 20:22:41 +0300\")","Message-ID":"<87o9qnkl46.fsf@dusky.pond.sub.org>","User-Agent":"Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.14","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.27]);\n\tThu, 07 Sep 2017 07:45:34 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"\"Emilio G. Cota\" <cota@braap.org>, qemu-devel@nongnu.org,\n\tStefan Hajnoczi <stefanha@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1764646,"web_url":"http://patchwork.ozlabs.org/comment/1764646/","msgid":"<87a826epxe.fsf@dusky.pond.sub.org>","list_archive_url":null,"date":"2017-09-07T10:58:05","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":2645,"url":"http://patchwork.ozlabs.org/api/people/2645/","name":"Markus Armbruster","email":"armbru@redhat.com"},"content":"Lluís Vilanova <vilanova@ac.upc.edu> writes:\n\n> This series adds an API to add instrumentation events.\n>\n> It also provides additional APIs for:\n> * Controlling tracing events\n> * Peek/poke guest memory\n>\n> There's still missing APIs for (can be added in later series?):\n> * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>   vCPU can have different instrumentation code). It's still not clear to me if\n>   we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>   somehow reuse the bits in tracing events (since they're currently limited).\n> * Peek/poke guest registers\n>\n> The instrumentation code is dynamically loaded as a library into QEMU either\n> when it starts or later using its remote control interfaces.\n>\n> Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>\n\nTaking a step back.\n\nThis looks like a way to dynamically load arbitrary code.  What\ninterfaces can this code use?  Your cover letter should answer this.\n\nAs long as the answer is \"everything the dynamic linker is willing to\nresolve\", this series heading nowhere.  We can talk about an interface\nfor plugins, but \"anything goes\" is not on the menu.","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx10.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx10.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=armbru@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xny9v4ZTZz9s76\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu,  7 Sep 2017 20:58:43 +1000 (AEST)","from localhost ([::1]:39803 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dpuW9-0003PF-RM\n\tfor incoming@patchwork.ozlabs.org; Thu, 07 Sep 2017 06:58:41 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:35330)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <armbru@redhat.com>) id 1dpuVj-0003Kc-KI\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 06:58:16 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <armbru@redhat.com>) id 1dpuVf-0002Ob-P3\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 06:58:15 -0400","from mx1.redhat.com ([209.132.183.28]:38240)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <armbru@redhat.com>) id 1dpuVf-0002OB-JR\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 06:58:11 -0400","from smtp.corp.redhat.com\n\t(int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id A52375F739;\n\tThu,  7 Sep 2017 10:58:09 +0000 (UTC)","from blackfin.pond.sub.org (ovpn-116-75.ams2.redhat.com\n\t[10.36.116.75])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id 17FBC17DAF;\n\tThu,  7 Sep 2017 10:58:06 +0000 (UTC)","by blackfin.pond.sub.org (Postfix, from userid 1000)\n\tid 692C21138645; Thu,  7 Sep 2017 12:58:05 +0200 (CEST)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com A52375F739","From":"Markus Armbruster <armbru@redhat.com>","To":"=?utf-8?b?TGx1w61z?= Vilanova <vilanova@ac.upc.edu>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>","Date":"Thu, 07 Sep 2017 12:58:05 +0200","In-Reply-To":"<150471856141.24907.274176769201097378.stgit@frigg.lan> (\n\t=?utf-8?b?IkxsdcOtcw==?= Vilanova\"'s message of \"Wed,\n\t6 Sep 2017 20:22:41 +0300\")","Message-ID":"<87a826epxe.fsf@dusky.pond.sub.org>","User-Agent":"Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.14","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.39]);\n\tThu, 07 Sep 2017 10:58:09 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"\"Emilio G. Cota\" <cota@braap.org>, qemu-devel@nongnu.org,\n\tStefan Hajnoczi <stefanha@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1764755,"web_url":"http://patchwork.ozlabs.org/comment/1764755/","msgid":"<20170907142152.GA19705@flamenco>","list_archive_url":null,"date":"2017-09-07T14:21:52","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":65690,"url":"http://patchwork.ozlabs.org/api/people/65690/","name":"Emilio Cota","email":"cota@braap.org"},"content":"On Thu, Sep 07, 2017 at 12:58:05 +0200, Markus Armbruster wrote:\n> Lluís Vilanova <vilanova@ac.upc.edu> writes:\n> \n> > This series adds an API to add instrumentation events.\n> >\n> > It also provides additional APIs for:\n> > * Controlling tracing events\n> > * Peek/poke guest memory\n> >\n> > There's still missing APIs for (can be added in later series?):\n> > * Provide something like tracing's per-vCPU trace states (i.e., so that each\n> >   vCPU can have different instrumentation code). It's still not clear to me if\n> >   we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n> >   somehow reuse the bits in tracing events (since they're currently limited).\n> > * Peek/poke guest registers\n> >\n> > The instrumentation code is dynamically loaded as a library into QEMU either\n> > when it starts or later using its remote control interfaces.\n> >\n> > Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>\n> \n> Taking a step back.\n> \n> This looks like a way to dynamically load arbitrary code.  What\n> interfaces can this code use?  Your cover letter should answer this.\n> \n> As long as the answer is \"everything the dynamic linker is willing to\n> resolve\", this series heading nowhere.  We can talk about an interface\n> for plugins, but \"anything goes\" is not on the menu.\n\nA simple solution to this is to only export the API symbols by passing\n--dynamic-file to the linker -- see patch 2 of the following series for an\nexample (ELF-only, although I'm pretty sure this can be achieved on Windows\nas well):\n  https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html\n\nThanks,\n\n\t\tEmilio","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=braap.org header.i=@braap.org\n\theader.b=\"RcslAS4z\"; \n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=messagingengine.com\n\theader.i=@messagingengine.com header.b=\"lZHM7LLV\"; \n\tdkim-atps=neutral"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xp2jZ1fW6z9sPm\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri,  8 Sep 2017 00:22:58 +1000 (AEST)","from localhost ([::1]:40715 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dpxho-0004ph-CN\n\tfor incoming@patchwork.ozlabs.org; Thu, 07 Sep 2017 10:22:56 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:52905)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <cota@braap.org>) id 1dpxgt-0004Nz-1Z\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 10:22:09 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <cota@braap.org>) id 1dpxgn-0007zQ-Pa\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 10:21:59 -0400","from out1-smtp.messagingengine.com ([66.111.4.25]:55963)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <cota@braap.org>) id 1dpxgn-0007y9-IG\n\tfor qemu-devel@nongnu.org; Thu, 07 Sep 2017 10:21:53 -0400","from compute4.internal (compute4.nyi.internal [10.202.2.44])\n\tby mailout.nyi.internal (Postfix) with ESMTP id D065121A10;\n\tThu,  7 Sep 2017 10:21:52 -0400 (EDT)","from frontend1 ([10.202.2.160])\n\tby compute4.internal (MEProxy); Thu, 07 Sep 2017 10:21:52 -0400","from localhost (flamenco.cs.columbia.edu [128.59.20.216])\n\tby mail.messagingengine.com (Postfix) with ESMTPA id 803167F980;\n\tThu,  7 Sep 2017 10:21:52 -0400 (EDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=braap.org; h=cc\n\t:content-transfer-encoding:content-type:date:from:in-reply-to\n\t:message-id:mime-version:references:subject:to:x-me-sender\n\t:x-me-sender:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=rgO1E3g3HFivLJh\n\ts4xqlDWRZcu/+lRcNlANSc5EgVjw=; b=RcslAS4zyPZ3J8n+v4CFp5pVR6F5OGC\n\t2ZCEyNG6fqAkGTUmeqG9N7OBxE3LmRpABqVpY/fbAX90T3GybfOc6VS48n+8UBwk\n\tvFu1j6VWYsW7/7Vk6pGO6kIZAXhg93Pgt6CQkSed79bsY5T8JTrFzjvg8SS/pa61\n\tjPxLxwEFq+48=","v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n\tmessagingengine.com; h=cc:content-transfer-encoding:content-type\n\t:date:from:in-reply-to:message-id:mime-version:references\n\t:subject:to:x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s=\n\tfm1; bh=rgO1E3g3HFivLJhs4xqlDWRZcu/+lRcNlANSc5EgVjw=; b=lZHM7LLV\n\tR/huawaABbCX8OS6FW02S7+tODbovidptgda83oB/8DPSQHzRIzyntvOrKNkQFEr\n\t3BNDOJC1fAKbamJn2UUapiM58vFgIx0BpaO3A2RYuXiASqExG63hezQB4amBg93q\n\tmbr2saBjeOjm+OyHGOTRzXQQ+IkbdOLYTvtnSh3w8Cft3Yi4nkzmfsGEK1d2gqIK\n\tqT66/Cvm34OmpeW9aOQ8UeQcB9GL/TGymLfj6lPZJpkoNKKQobYfs2OclAdY5+ft\n\t2ouvdqW7/nMLZPk5l8TOj2J9DKd9SE4tnRD5dfpckLZ5UzkjdMmJJN/X74BEMTAm\n\tEzXY0A0wr7pPWw=="],"X-ME-Sender":"<xms:AFaxWbLJ8PGAhMrMIcXFm9AElaibOTw-lJxWa8m1XVDIJ43s2YXJLA>","X-Sasl-enc":"MfYZtFVSyCXRar6Z/Jvt7h1X/cQlMbbXkFfCG4daHp9b 1504794112","Date":"Thu, 7 Sep 2017 10:21:52 -0400","From":"\"Emilio G. Cota\" <cota@braap.org>","To":"Markus Armbruster <armbru@redhat.com>","Message-ID":"<20170907142152.GA19705@flamenco>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>\n\t<87a826epxe.fsf@dusky.pond.sub.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<87a826epxe.fsf@dusky.pond.sub.org>","User-Agent":"Mutt/1.5.24 (2015-08-30)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"66.111.4.25","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"=?iso-8859-1?q?Llu=EDs?= Vilanova <vilanova@ac.upc.edu>,\n\tStefan Hajnoczi <stefanha@redhat.com>, qemu-devel@nongnu.org","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1765977,"web_url":"http://patchwork.ozlabs.org/comment/1765977/","msgid":"<87zia2zccn.fsf@frigg.lan>","list_archive_url":null,"date":"2017-09-10T17:34:48","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":9099,"url":"http://patchwork.ozlabs.org/api/people/9099/","name":"Lluís Vilanova","email":"vilanova@ac.upc.edu"},"content":"Emilio G Cota writes:\n\n> On Thu, Sep 07, 2017 at 12:58:05 +0200, Markus Armbruster wrote:\n>> Lluís Vilanova <vilanova@ac.upc.edu> writes:\n>> \n>> > This series adds an API to add instrumentation events.\n>> >\n>> > It also provides additional APIs for:\n>> > * Controlling tracing events\n>> > * Peek/poke guest memory\n>> >\n>> > There's still missing APIs for (can be added in later series?):\n>> > * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>> >   vCPU can have different instrumentation code). It's still not clear to me if\n>> >   we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>> >   somehow reuse the bits in tracing events (since they're currently limited).\n>> > * Peek/poke guest registers\n>> >\n>> > The instrumentation code is dynamically loaded as a library into QEMU either\n>> > when it starts or later using its remote control interfaces.\n>> >\n>> > Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>\n>> \n>> Taking a step back.\n>> \n>> This looks like a way to dynamically load arbitrary code.  What\n>> interfaces can this code use?  Your cover letter should answer this.\n>> \n>> As long as the answer is \"everything the dynamic linker is willing to\n>> resolve\", this series heading nowhere.  We can talk about an interface\n>> for plugins, but \"anything goes\" is not on the menu.\n\n> A simple solution to this is to only export the API symbols by passing\n> --dynamic-file to the linker -- see patch 2 of the following series for an\n> example (ELF-only, although I'm pretty sure this can be achieved on Windows\n> as well):\n>   https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html\n\nSorry, I adapted the instr series in a rush and missed your series. I'm now\npreparing a new version that fixes this without the flags you mention (missed to\nadd a line in this series).\n\n\nThanks,\n  Lluis","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xqyrd4HJhz9s7c\n\tfor <incoming@patchwork.ozlabs.org>;\n\tMon, 11 Sep 2017 03:35:44 +1000 (AEST)","from localhost ([::1]:53740 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dr68z-0007oo-Pm\n\tfor incoming@patchwork.ozlabs.org; Sun, 10 Sep 2017 13:35:41 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:59515)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr68Q-0007k6-M8\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:35:08 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr68N-0007vU-EX\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:35:06 -0400","from roura.ac.upc.es ([147.83.33.10]:40876)\n\tby eggs.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr68L-0007sC-Qu\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:35:03 -0400","from correu-1.ac.upc.es (correu-1.ac.upc.es [147.83.30.91])\n\tby roura.ac.upc.es (8.13.8/8.13.8) with ESMTP id v8AHYta3021572;\n\tSun, 10 Sep 2017 19:34:55 +0200","from localhost (unknown [132.68.137.153])\n\tby correu-1.ac.upc.es (Postfix) with ESMTPSA id B809A1670;\n\tSun, 10 Sep 2017 19:34:49 +0200 (CEST)"],"From":"=?utf-8?q?Llu=C3=ADs_Vilanova?= <vilanova@ac.upc.edu>","To":"\"Emilio G. Cota\" <cota@braap.org>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>\n\t<87a826epxe.fsf@dusky.pond.sub.org> <20170907142152.GA19705@flamenco>","Mail-Followup-To":"\"Emilio G. Cota\" <cota@braap.org>, Markus Armbruster\n\t<armbru@redhat.com>, qemu-devel@nongnu.org, Stefan Hajnoczi\n\t<stefanha@redhat.com>","Date":"Sun, 10 Sep 2017 20:34:48 +0300","In-Reply-To":"<20170907142152.GA19705@flamenco> (Emilio G. Cota's message of\n\t\"Thu, 7 Sep 2017 10:21:52 -0400\")","Message-ID":"<87zia2zccn.fsf@frigg.lan>","User-Agent":"Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.6.x [fuzzy]","X-Received-From":"147.83.33.10","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Markus Armbruster <armbru@redhat.com>,\n\tStefan Hajnoczi <stefanha@redhat.com>, qemu-devel@nongnu.org","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1765978,"web_url":"http://patchwork.ozlabs.org/comment/1765978/","msgid":"<87poayzc3g.fsf@frigg.lan>","list_archive_url":null,"date":"2017-09-10T17:40:19","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":9099,"url":"http://patchwork.ozlabs.org/api/people/9099/","name":"Lluís Vilanova","email":"vilanova@ac.upc.edu"},"content":"Emilio G Cota writes:\n\n> On Wed, Sep 06, 2017 at 20:22:41 +0300, Lluís Vilanova wrote:\n>> This series adds an API to add instrumentation events.\n>> \n>> It also provides additional APIs for:\n>> * Controlling tracing events\n\n> hmm didn't Stefan say that tracing should be decoupled from this?\n\n>> * Peek/poke guest memory\n>> \n>> There's still missing APIs for (can be added in later series?):\n>> * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>> vCPU can have different instrumentation code). It's still not clear to me if\n>> we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>> somehow reuse the bits in tracing events (since they're currently limited).\n\n> As I said in the description of my alternative implementation [*], I don't see\n> much value in having per-vCPU events, as most instrumenters just care about\n> the guest application/system. I can only think of cases where the instrumenter\n> is only interested in a guest process (in system-mode), but that'd be ugly\n> anyway (would need to change both QEMU and the guest kernel to track the pid).\n\nYes, that's exactly what I was using it for (track guest processes in softmmu\nmode).\n\n\n> If the need ever arises, we could add __vcpu(cpu_index) registration functions.\n\nYou still need the functionality I cited if you're using\n\"qi_event_gen_guest_mem_before_exec\" or similar.\n\n\n> [*] https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html\n\n> \t\tE.\n\nCheers,\n  Lluis","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xqyz06FZbz9s7c\n\tfor <incoming@patchwork.ozlabs.org>;\n\tMon, 11 Sep 2017 03:41:15 +1000 (AEST)","from localhost ([::1]:53757 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dr6EF-0000zt-S8\n\tfor incoming@patchwork.ozlabs.org; Sun, 10 Sep 2017 13:41:07 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:60450)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr6Di-0000z4-By\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:40:35 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr6Df-0001mx-9T\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:40:34 -0400","from roura.ac.upc.es ([147.83.33.10]:55578)\n\tby eggs.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1dr6De-0001mf-U9\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 13:40:31 -0400","from correu-1.ac.upc.es (correu-1.ac.upc.es [147.83.30.91])\n\tby roura.ac.upc.es (8.13.8/8.13.8) with ESMTP id v8AHeQfx021653;\n\tSun, 10 Sep 2017 19:40:26 +0200","from localhost (unknown [132.68.137.153])\n\tby correu-1.ac.upc.es (Postfix) with ESMTPSA id 12E971685;\n\tSun, 10 Sep 2017 19:40:20 +0200 (CEST)"],"From":"=?utf-8?q?Llu=C3=ADs_Vilanova?= <vilanova@ac.upc.edu>","To":"\"Emilio G. Cota\" <cota@braap.org>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>\n\t<20170906205947.GB25558@flamenco>","Mail-Followup-To":"\"Emilio G. Cota\" <cota@braap.org>, qemu-devel@nongnu.org, \n\tEric Blake <eblake@redhat.com>,\n\tStefan Hajnoczi <stefanha@redhat.com>","Date":"Sun, 10 Sep 2017 20:40:19 +0300","In-Reply-To":"<20170906205947.GB25558@flamenco> (Emilio G. Cota's message of\n\t\"Wed, 6 Sep 2017 16:59:47 -0400\")","Message-ID":"<87poayzc3g.fsf@frigg.lan>","User-Agent":"Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.6.x [fuzzy]","X-Received-From":"147.83.33.10","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1766024,"web_url":"http://patchwork.ozlabs.org/comment/1766024/","msgid":"<87poayuo5j.fsf@frigg.lan>","list_archive_url":null,"date":"2017-09-10T23:31:04","subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","submitter":{"id":9099,"url":"http://patchwork.ozlabs.org/api/people/9099/","name":"Lluís Vilanova","email":"vilanova@ac.upc.edu"},"content":"Emilio G Cota writes:\n\n> On Wed, Sep 06, 2017 at 20:22:41 +0300, Lluís Vilanova wrote:\n>> This series adds an API to add instrumentation events.\n>> \n>> It also provides additional APIs for:\n>> * Controlling tracing events\n\n> hmm didn't Stefan say that tracing should be decoupled from this?\n\nI understood decoupling instr from the tracing infrastructure (since tracing\nevents are defined as not stable, and instr must be stable by definition).\n\n\n>> * Peek/poke guest memory\n>> \n>> There's still missing APIs for (can be added in later series?):\n>> * Provide something like tracing's per-vCPU trace states (i.e., so that each\n>> vCPU can have different instrumentation code). It's still not clear to me if\n>> we should extend the per-vCPU bitmap with instrumentation events, or otherwise\n>> somehow reuse the bits in tracing events (since they're currently limited).\n\n> As I said in the description of my alternative implementation [*], I don't see\n> much value in having per-vCPU events, as most instrumenters just care about\n> the guest application/system. I can only think of cases where the instrumenter\n> is only interested in a guest process (in system-mode), but that'd be ugly\n> anyway (would need to change both QEMU and the guest kernel to track the pid).\n\n> If the need ever arises, we could add __vcpu(cpu_index) registration functions.\n\n> [*] https://lists.gnu.org/archive/html/qemu-devel/2017-09/msg01446.html\n\nSorry, your series slipped my radar. I'll take a look at it.\n\n\nThanks,\n  Lluis","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xr6lK4vbHz9s81\n\tfor <incoming@patchwork.ozlabs.org>;\n\tMon, 11 Sep 2017 09:31:41 +1000 (AEST)","from localhost ([::1]:54619 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1drBhT-0002nL-Qr\n\tfor incoming@patchwork.ozlabs.org; Sun, 10 Sep 2017 19:31:39 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:49009)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1drBh7-0002n5-I1\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 19:31:18 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1drBh4-0007Ub-E3\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 19:31:17 -0400","from roura.ac.upc.es ([147.83.33.10]:49655)\n\tby eggs.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <vilanova@ac.upc.edu>) id 1drBh4-0007UB-45\n\tfor qemu-devel@nongnu.org; Sun, 10 Sep 2017 19:31:14 -0400","from correu-2.ac.upc.es (correu-2.ac.upc.es [147.83.30.92])\n\tby roura.ac.upc.es (8.13.8/8.13.8) with ESMTP id v8ANVBdI027239;\n\tMon, 11 Sep 2017 01:31:11 +0200","from localhost (unknown [31.210.187.58])\n\tby correu-2.ac.upc.es (Postfix) with ESMTPSA id 0F84B1311;\n\tMon, 11 Sep 2017 01:31:05 +0200 (CEST)"],"From":"=?utf-8?q?Llu=C3=ADs_Vilanova?= <vilanova@ac.upc.edu>","To":"\"Emilio G. Cota\" <cota@braap.org>","References":"<150471856141.24907.274176769201097378.stgit@frigg.lan>\n\t<20170906205947.GB25558@flamenco>","Mail-Followup-To":"\"Emilio G. Cota\" <cota@braap.org>, qemu-devel@nongnu.org, \n\tEric Blake <eblake@redhat.com>,\n\tStefan Hajnoczi <stefanha@redhat.com>","Date":"Mon, 11 Sep 2017 02:31:04 +0300","In-Reply-To":"<20170906205947.GB25558@flamenco> (Emilio G. Cota's message of\n\t\"Wed, 6 Sep 2017 16:59:47 -0400\")","Message-ID":"<87poayuo5j.fsf@frigg.lan>","User-Agent":"Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"quoted-printable","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.6.x [fuzzy]","X-Received-From":"147.83.33.10","Subject":"Re: [Qemu-devel] [PATCH v4 00/20] instrument: Add basic event\n\tinstrumentation","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}}]