From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40259) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fzKeB-0004Yf-6T for qemu-devel@nongnu.org; Mon, 10 Sep 2018 07:46:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fzKcC-0002c2-95 for qemu-devel@nongnu.org; Mon, 10 Sep 2018 07:44:27 -0400 Received: from mail.ispras.ru ([83.149.199.45]:50960) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fzKcC-0002bo-0D for qemu-devel@nongnu.org; Mon, 10 Sep 2018 07:44:24 -0400 From: "Pavel Dovgalyuk" References: <152819515565.30857.16834004920507717324.stgit@pasha-ThinkPad-T60> <87lg8dz809.fsf@linaro.org> <87h8ixd8vb.fsf@linaro.org> In-Reply-To: <87h8ixd8vb.fsf@linaro.org> Date: Mon, 10 Sep 2018 14:44:24 +0300 Message-ID: <001a01d448fb$9f1d3670$dd57a350$@ru> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Language: ru Subject: Re: [Qemu-devel] [RFC PATCH v2 0/7] QEMU binary instrumentation prototype List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?Q?'Alex_Benn=C3=A9e'?= , 'Peter Maydell' Cc: 'Pavel Dovgalyuk' , 'QEMU Developers' , maria.klimushenkova@ispras.ru, 'Paolo Bonzini' , =?utf-8?Q?'Llu=C3=ADs_Vilanova'?= > From: Alex Benn=C3=A9e [mailto:alex.bennee@linaro.org] > Peter Maydell writes: >=20 > > >> Now I can see arguments against it from an interface complexity = point of > >> view but I think plugins should get access to the TCG functions so = they > >> can generate their own op sequences if need be and not have to call = a > >> helper at all if they don't need to. > > > > I strongly disagree -- plugins should not have access to details > > of QEMU internals that might change from version to version, and > > definitely not access to generating their own TCG code. >=20 > In terms of the wider problem about exposing internals that might = change > from version to version I wonder if we should care? Is the plugin API > one where we should provide ABI stability or should we take the = approach > that Linux does and say if your code lives out-of-tree then it's your > problem to keep up if/when we change. Then one can just omit the plugins and embed the analysis code into = QEMU. The idea behind the plugins is making the maintenance less = time-consuming by providing the stable interface. Pavel Dovgalyuk